Skip to content

Commit 0144dd7

Browse files
ci(release): publish latest release
1 parent 63c1e6b commit 0144dd7

File tree

1,039 files changed

+35709
-16487
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,039 files changed

+35709
-16487
lines changed

.cursor/environment.json

Lines changed: 0 additions & 18 deletions
This file was deleted.

.depcheckrc

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,4 +19,6 @@ ignores: [
1919
"@swc/helpers",
2020
# needed for ci
2121
'dd-trace',
22+
# depcheck flags itself as unused
23+
'depcheck',
2224
]

RELEASE

Lines changed: 96 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
IPFS hash of the deployment:
2-
- CIDv0: `QmPtKEQ9E5VjGVGpsMofpBzZ2PZjfoWiS8j9eTvPBssQaz`
3-
- CIDv1: `bafybeiaw7a75fegjjgzqmtnelnmjnzhsilnmpev5dtzsbckj46fadqyjd4`
2+
- CIDv0: `QmW2N1jVYGV4M84L1cMTysFn1BtPJTKcjDkdoZtpmNE3xt`
3+
- CIDv1: `bafybeidsfyuzvuwapjnhk4dfkgjipmjnovf34gfv6c6broz6zjcsikwwbe`
44

55
The latest release is always mirrored at [app.uniswap.org](https://app.uniswap.org).
66

@@ -10,9 +10,100 @@ You can also access the Uniswap Interface from an IPFS gateway.
1010
Your Uniswap settings are never remembered across different URLs.
1111

1212
IPFS gateways:
13-
- https://bafybeiaw7a75fegjjgzqmtnelnmjnzhsilnmpev5dtzsbckj46fadqyjd4.ipfs.dweb.link/
14-
- [ipfs://QmPtKEQ9E5VjGVGpsMofpBzZ2PZjfoWiS8j9eTvPBssQaz/](ipfs://QmPtKEQ9E5VjGVGpsMofpBzZ2PZjfoWiS8j9eTvPBssQaz/)
13+
- https://bafybeidsfyuzvuwapjnhk4dfkgjipmjnovf34gfv6c6broz6zjcsikwwbe.ipfs.dweb.link/
14+
- [ipfs://QmW2N1jVYGV4M84L1cMTysFn1BtPJTKcjDkdoZtpmNE3xt/](ipfs://QmW2N1jVYGV4M84L1cMTysFn1BtPJTKcjDkdoZtpmNE3xt/)
1515

16-
### 5.110.1 (2025-09-17)
16+
## 5.111.0 (2025-09-24)
17+
18+
19+
### Features
20+
21+
* **web:** [lp] action buttons - center range (#23054) 53738d8
22+
* **web:** [lp] action buttons - history duration (#23068) e163e2c
23+
* **web:** [lp] action buttons - modify zoom options (#23069) 6666906
24+
* **web:** [lp] action buttons - reset (#23067) 39d2a4b
25+
* **web:** [lp] action buttons - zoom (#23061) 6a09678
26+
* **web:** [lp] add center range behavior (#22983) c568951
27+
* **web:** [lp] add chartInteractions - pinch to zoom (#22986) a41a9ca
28+
* **web:** [lp] add chartInteractions - scroll (#22985) 8b0bd0c
29+
* **web:** [lp] add handlePriceChange action (#23348) 4c4c7ce
30+
* **web:** [lp] add line swap (#23346) 134fb89
31+
* **web:** [lp] add scrollbar and min/max indicators (#22964) 1563c30
32+
* **web:** [lp] add tick based drag behavior (#22965) 8e587cf
33+
* **web:** [lp] add tick based drag to liquidity range area (#23047) 30bd10a
34+
* **web:** [lp] create current tick renderer (#22989) 312799a
35+
* **web:** [lp] current price (#23090) f7b9574
36+
* **web:** [lp] default price strats (#23141) 828d388
37+
* **web:** [lp] drag to create range area (#23048) 9096a52
38+
* **web:** [lp] full range state (#23086) 12bf3f5
39+
* **web:** [lp] hide default price strats when missing liquidity or price data (#23422) 8bf92e7
40+
* **web:** [lp] improved loading state (#23103) d8374b3
41+
* **web:** [lp] indicate at when at our around price strat (#23423) 931ef48
42+
* **web:** [lp] move current price and token selection to d3 liquidity input (#23140) 56c68fc
43+
* **web:** [lp] move range input component (#23491) dc34109
44+
* **web:** [lp] move range inputs (#23143) 90e06d4
45+
* **web:** [lp] on set min/max, transparent drags (#22962) cab80c9
46+
* **web:** [lp] pass initial min/max price (#23080) ebec3ff
47+
* **web:** [lp] percent indicators (#23157) 973e1a7
48+
* **web:** [lp] revert back to original default range logic (#23567) d9b1335
49+
* **web:** [lp] tick tooltips (#23142) 51b26e0
50+
* **web:** [lp] time scale (#23078) 48fa2e3
51+
* **web:** AccountsStore implementation (#23290) 6230f2a
52+
* **web:** add more configuration for web-ext (#23483) 03fe259
53+
* **web:** add pool info endpoint feature gate (#23521) da496bb
54+
* **web:** add v2 style options to table component (#23171) 03c21e6
55+
* **web:** create solana switch network toast prompt (#22414) 96cfa33
56+
* **web:** show notifications in mini portfolio for context menu actions (#23218) 79b0ccf
57+
* **web:** update CLAUDE.md for extension (#23507) d1e5c5f
58+
* **web:** use poolinfo endpoint (#22711) 817b639
59+
60+
61+
### Bug Fixes
62+
63+
* **web:** [lp] default to custom range (#23573) 2ba34e0
64+
* **web:** [lp] ensure minimum min/max indicator height on drag creation (#23572) 5dd689e
65+
* **web:** [lp] fix min/max at same closest tick (#23591) 3a4f390
66+
* **web:** [lp] render priceToY at specified tick alignment (#23571) 337649f
67+
* **web:** add query for extra limit orders - PORT-427 (#23667) 10848d5
68+
* **web:** detected label alignment in connection pane (#23708) 39e5c93
69+
* **web:** enhance Binance wallet connection handling (#23394) 6e82ab5
70+
* **web:** fix focus stealing issue on the deposit form (#23510) bb90d34
71+
* **web:** fix toastregularsimple design (#22493) 1539552
72+
* **web:** fix useAccountRiskCheck for solana and BlockedAccount modal for svm (#22976) d09e5d7
73+
* **web:** hover state on position cards (#22819) 1e9fa50
74+
* **web:** mweb fixes (#23596) c3dbe85
75+
* **web:** mweb mini-portfolio tabs bottom spacing - PORT-400 (#23372) 1bcd62b
76+
* **web:** prevent currency change causing re-render in create form (#23598) 3e2f37e
77+
* **web:** remove preserve sym links for better HMR (#23719) 113bb9c
78+
* **web:** remove receipt req for batch txs in updater - PORT-248 (#23371) ba1b742
79+
* **web:** remove unneeded param for deeplinking on web to native assets from portfolio (#23642) f039e38
80+
* **web:** show unsupported Solana error in create liquidity (#23399) 3dca695
81+
* **web:** updates receive modal copy animation (#23704) 37747e2
82+
* **web:** use useSwapAndLimitContext for currentTab (#23326) d7ba078
83+
84+
85+
### Continuous Integration
86+
87+
* **web:** update sitemaps b368c4b
88+
89+
90+
### Styles
91+
92+
* **web:** update copy icon animation (#23298) 20e9bde
93+
* **web:** update CopyHelper copy animation (#23358) 7c2d700
94+
* **web:** update explore copy icon (#23373) b834e84
95+
96+
97+
### Code Refactoring
98+
99+
* **web:** [lp] clean up chart actions and utils (#23167) 199a3b7
100+
* **web:** [lp] clean up chart state (#23168) 81f689f
101+
* **web:** [lp] rename files and functions (#23169) f35fb74
102+
* **web:** rm rest of direct wagmi connection code + handle errors (#23461) 840f2cc
103+
104+
105+
### Tests
106+
107+
* **web:** [lp] dynamic zoom min (#23258) fec8dd6
17108

18109

VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
web/5.110.1
1+
web/5.111.0

apps/extension/.depcheckrc

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@ ignores: [
33
'react-native-web',
44
'jest-environment-jsdom',
55
'webpack-cli',
6+
'@wxt-dev/module-react',
7+
'serve',
68
# Dependencies that depcheck thinks are missing but are actually present or never used
79
## Internal packages / workspaces
810
'src',

apps/extension/.eslintrc.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ module.exports = {
1616
'webpack.dev.config.js',
1717
'manifest.json',
1818
'.nx',
19+
'wxt.config.ts',
1920
],
2021
parserOptions: {
2122
project: 'tsconfig.eslint.json',

apps/extension/.gitignore

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,3 +25,10 @@ dist-ssr
2525
*.sw?
2626

2727
.tamagui
28+
.output
29+
.wxt
30+
31+
# Personal web-ext configuration
32+
web-ext.config.ts
33+
34+
tsconfig.tsbuildinfo

apps/extension/CLAUDE.md

Lines changed: 52 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,12 @@ This is the Uniswap Browser Extension, part of the Universe monorepo. The extens
1515
bun install
1616

1717
# Start development server (from apps/extension)
18-
bun start
18+
# WXT build system (new, preferred)
19+
bun start # WXT development server (port 9998)
20+
bun start:absolute # WXT with absolute paths (required for Scantastic API testing)
1921

20-
# Start with absolute paths (required for Scantastic API testing)
21-
bun start:absolute
22+
# Legacy webpack build system (still available during migration)
23+
bun start:webpack # Webpack development server (port 9997)
2224

2325
# Build production bundle
2426
bun build:production
@@ -74,14 +76,30 @@ This extension is part of the Universe monorepo using bun workspaces and NX:
7476

7577
### Extension Entry Points
7678

77-
The extension has multiple entry points for different contexts:
79+
The extension has multiple entry points for different contexts (WXT structure):
80+
81+
- `src/entrypoints/background.ts` - Background service worker
82+
- `src/entrypoints/sidepanel/main.tsx` - Main sidebar UI (primary interface)
83+
- `src/entrypoints/fallback-popup/main.tsx` - Extension popup fallback
84+
- `src/entrypoints/onboarding/main.tsx` - Onboarding flow
85+
- `src/entrypoints/unitagClaim/main.tsx` - Unitag claim interface
86+
- `src/entrypoints/injected.content.ts` - Injected script for dApp communication
87+
- `src/entrypoints/ethereum.content.ts` - Ethereum provider implementation
88+
89+
Each UI entry point has an associated `index.html` file in its directory.
90+
91+
### WXT Migration Status
7892

79-
- `src/entry/background.ts` - Background service worker
80-
- `src/entry/sidebar.tsx` - Main sidebar UI (primary interface)
81-
- `src/entry/popup.tsx` - Extension popup
82-
- `src/entry/onboarding.tsx` - Onboarding flow
83-
- `src/entry/injected.ts` - Injected script for dApp communication
84-
- `src/entry/ethereum.ts` - Ethereum provider implementation
93+
The extension is currently migrating from Webpack to WXT build system:
94+
95+
-**Complete**: WXT configuration, entry points restructure, Vite-based builds
96+
- 🔄 **In Progress**: Full migration from legacy webpack system
97+
- 📁 **Directory Changes**:
98+
- `src/entry/``src/entrypoints/` (with HTML files for UI entries)
99+
- Content scripts moved to `src/entrypoints/*.content.ts`
100+
- Background script moved to `src/entrypoints/background.ts`
101+
- ⚙️ **Build Systems**: Both WXT (`wxt.config.ts`) and Webpack (`webpack.config.js`) are currently available
102+
- 🚪 **Development Ports**: WXT uses port 9998, Webpack uses port 9997
85103

86104
### State Management
87105

@@ -142,16 +160,36 @@ bun start:absolute
142160

143161
### Chrome Extension Specifics
144162

145-
- Manifest is generated dynamically from `manifest.ts`
163+
#### WXT System
164+
165+
- Manifest is generated dynamically in `wxt.config.ts`
146166
- Background script runs as a service worker (not persistent)
147-
- Content scripts are injected for dApp communication
167+
- Content scripts configured in WXT config
168+
- Side panel API support for main UI
148169
- Use Chrome Storage API for extension-specific data
149170

171+
#### Legacy System (During Migration)
172+
173+
- Static `src/manifest.json` with build-time modifications
174+
- Background and content scripts defined separately
175+
150176
### Build Process
151177

152-
- Webpack configuration supports multiple environments
153-
- Code splitting enabled for better performance
178+
The extension supports two build systems during the WXT migration:
179+
180+
#### WXT Build System (New, Preferred)
181+
182+
- Configuration in `wxt.config.ts`
183+
- Vite-based build system for better performance
184+
- Built-in React support via `@wxt-dev/module-react`
185+
- Dynamic manifest generation
186+
- Integrated development server with HMR
154187
- Source maps available in development
188+
189+
#### Webpack Build System (Legacy, During Migration)
190+
191+
- Configuration in `webpack.config.js`
192+
- Code splitting enabled for better performance
155193
- Hot Module Replacement (HMR) enabled for faster development
156194

157195
## Important Notes

apps/extension/README.md

Lines changed: 33 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,43 @@ bun install
1515
bun extension start
1616
```
1717

18-
Then, load the extension into Chrome:
18+
Then, load the extension into Chrome (if using Webpack):
1919

2020
1. Go to **chrome://extensions**
2121
2. At the top right, turn on **Developer mode**
2222
3. Click **Load unpacked**
2323
4. Find and select the extension folder (apps/extension/dev)
2424

25+
## Configuring WXT Browser-opening behavior
26+
27+
To customize the default WXT behavior, create a file `web-ext.config.ts` in this directory.
28+
29+
``` web-ext.config.ts
30+
import { defineWebExtConfig } from 'wxt';
31+
32+
export default defineWebExtConfig({
33+
// ...
34+
35+
// Option 1: Connect to already running Chrome (requires Chrome to be started with --remote-debugging-port=9222)
36+
// chromiumPort: 9222,
37+
38+
// Option 2: Use your existing Chrome profile (but Chrome must be closed first)
39+
// chromiumArgs: [
40+
// '--user-data-dir=/Users/<username>/Library/Application Support/Google/Chrome',
41+
// '--profile-directory=Default'
42+
// ],
43+
44+
// Option 3: Create a persistent profile that matches your existing setup (recommended)
45+
chromiumArgs: [
46+
'--user-data-dir=./.wxt/chrome-data',
47+
// Sync with your Google account to get bookmarks, extensions, etc.
48+
// '--enable-sync',
49+
],
50+
51+
// ...
52+
});
53+
```
54+
2555
## Running the extension locally with an absolute path (for testing scantastic)
2656

2757
Our scantastic API requires a consistent origin header so the build must be loaded from an absolute path. This works because Chrome generates a consistent ID for the extension based on the path it was loaded from.
@@ -42,6 +72,8 @@ bun
4272
bun extension start:absolute:windows
4373
```
4474

75+
Then, load the extension into Chrome (if using Webpack):
76+
4577
1. Go to **chrome://extensions**
4678
2. At the top right, turn on **Developer mode**
4779
3. Click **Load unpacked**

0 commit comments

Comments
 (0)