Skip to content

Commit b0f9b0f

Browse files
ci(release): publish latest release
1 parent 2e0d703 commit b0f9b0f

File tree

917 files changed

+53521
-45395
lines changed

Some content is hidden

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

917 files changed

+53521
-45395
lines changed

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,3 +54,6 @@ packages/uniswap/src/i18n/locales/source/*_old.json
5454

5555
# CodeTours Extension
5656
.tours/*
57+
58+
# auto-generated test ids
59+
apps/mobile/.maestro/scripts/testIds.js

.yarn/patches/@tamagui-web-npm-1.121.7-4de089c18f.patch renamed to .yarn/patches/@tamagui-web-npm-1.125.17-51d5261cab.patch

Lines changed: 18 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,18 @@
11
diff --git a/dist/cjs/createComponent.native.js b/dist/cjs/createComponent.native.js
2-
index ddcbfbc5112e148ff6a33fffd986d763b9f32248..fd8b81f75d0a9fc414fbda5eea02d9405d57a89f 100644
2+
index 86d3da13fa485e62f44137ea449320db7ec7e877..d27abf8ee06b0791f14e4a254c7f11cb572580be 100644
33
--- a/dist/cjs/createComponent.native.js
44
+++ b/dist/cjs/createComponent.native.js
5-
@@ -98,7 +98,7 @@ function createComponent(staticConfig) {
5+
@@ -97,7 +97,8 @@ function createComponent(staticConfig) {
66
defaultProps,
77
defaultPropsKeyOrder: defaultProps ? Object.keys(defaultProps) : []
88
});
99
- var component = /* @__PURE__ */ import_react.default.forwardRef(function(propsIn, forwardedRef) {
10+
+
1011
+ var OldComponent = /* @__PURE__ */ import_react.default.forwardRef(function(propsIn, forwardedRef) {
11-
var _themeState_state, _hooks_usePropsTransform, _hooks_useEvents, _config_animations, internalID = process.env.NODE_ENV === "development" ? import_react.default.useId() : "";
12+
var _hooks_usePropsTransform, _hooks_useEvents, _config_animations, internalID = process.env.NODE_ENV === "development" ? import_react.default.useId() : "";
1213
if (process.env.NODE_ENV === "development" && startVisualizer && (startVisualizer(), startVisualizer = void 0), !hasSetupBaseViews) {
1314
var _hooks_getBaseViews;
14-
@@ -548,6 +548,13 @@ If you meant to do this, you can disable this warning - either change untilMeasu
15+
@@ -558,6 +559,13 @@ If you meant to do this, you can disable this warning - either change untilMeasu
1516
delete globalThis.willPrint, time.print(), time = null;
1617
}, 50))), content;
1718
});
@@ -26,29 +27,29 @@ index ddcbfbc5112e148ff6a33fffd986d763b9f32248..fd8b81f75d0a9fc414fbda5eea02d940
2627
var res = component;
2728
(process.env.TAMAGUI_FORCE_MEMO || staticConfig.memo) && (res = /* @__PURE__ */ import_react.default.memo(res)), res.staticConfig = staticConfig;
2829
diff --git a/dist/esm/createComponent.native.js b/dist/esm/createComponent.native.js
29-
index 40466f28af50e22730462702a96e2c8b41969276..92f8f589a72098efc72e58f7cf64fb80e00787d9 100644
30+
index 5c05d1ea28cbcbcaf4cac7bc7826243895b0bae5..e81c77c7b716bf3bfd3c89b1043bb91b86a7dee6 100644
3031
--- a/dist/esm/createComponent.native.js
3132
+++ b/dist/esm/createComponent.native.js
32-
@@ -90,7 +90,7 @@ function createComponent(staticConfig) {
33+
@@ -116,7 +116,7 @@ function createComponent(staticConfig) {
3334
defaultProps,
3435
defaultPropsKeyOrder: defaultProps ? Object.keys(defaultProps) : []
3536
});
36-
- var component = /* @__PURE__ */ React.forwardRef(function(propsIn, forwardedRef) {
37-
+ var OldComponent = /* @__PURE__ */ React.forwardRef(function(propsIn, forwardedRef) {
38-
var _themeState_state, _hooks_usePropsTransform, _hooks_useEvents, _config_animations, internalID = process.env.NODE_ENV === "development" ? React.useId() : "";
39-
if (process.env.NODE_ENV === "development" && startVisualizer && (startVisualizer(), startVisualizer = void 0), !hasSetupBaseViews) {
40-
var _hooks_getBaseViews;
41-
@@ -540,6 +540,13 @@ If you meant to do this, you can disable this warning - either change untilMeasu
37+
- var component = /* @__PURE__ */React.forwardRef(function (propsIn, forwardedRef) {
38+
+ var OldComponent = /* @__PURE__ */React.forwardRef(function (propsIn, forwardedRef) {
39+
var _hooks_usePropsTransform,
40+
_hooks_useEvents,
41+
_config_animations,
42+
@@ -625,6 +625,13 @@ If you meant to do this, you can disable this warning - either change untilMeasu
43+
return process.env.NODE_ENV === "development" && time && (time`rest`, globalThis.willPrint || (globalThis.willPrint = !0, setTimeout(function () {
4244
delete globalThis.willPrint, time.print(), time = null;
4345
}, 50))), content;
44-
});
45-
+ // UNISWAP PATCH: Using key to avoid conditionally calling useAnimation hook
46-
+ var component = /* @__PURE__ */ import_react.default.forwardRef(function(propsIn, forwardedRef) {
46+
+ });
47+
+ // UNISWAP PATCH: Using key to avoid conditionally calling useAnimation hook
48+
+ var component = /* @__PURE__ */ React.forwardRef(function(propsIn, forwardedRef) {
4749
+ return /* @__PURE__ */ _jsx(OldComponent, {
4850
+ ref: forwardedRef,
4951
+ ...propsIn,
5052
+ }, "animation" in propsIn ? 1 : 0);
51-
+ });
53+
});
5254
staticConfig.componentName && (component.displayName = staticConfig.componentName);
5355
var res = component;
54-
(process.env.TAMAGUI_FORCE_MEMO || staticConfig.memo) && (res = /* @__PURE__ */ React.memo(res)), res.staticConfig = staticConfig;

RELEASE

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
We are back with some new updates! Here’s the latest:
22

3-
Settings Refresh: Enjoy a more streamlined settings page, with a clearer view of your active wallets. Also note that Manage Connections has now moved out of settings and can be accessed by clicking your profile image.
3+
Honeypot Detection: Using Blockaid’s data, we now identify potentially malicious honeypot tokens and show users a token warning when interacting with them.
44

5-
Token Actions: On specific token pages, find a new action button on the bottom right corner which allow you to do things like buy, sell, send, and receive.
5+
New pink!: Our accent pink color has been updated across the app for better accessibility and better vibes.
66

77
Other changes:
8-
8+
- Removed balances from spam tokens, to clean up the portfolio view
99
- Various bug fixes and performance improvements

VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
mobile/1.48
1+
extension/1.19.0

apps/extension/.eslintrc.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ rulesDirPlugin.RULES_DIR = '../../packages/uniswap/eslint_rules'
33

44
module.exports = {
55
root: true,
6-
extends: ['@uniswap/eslint-config/native-app'],
6+
extends: ['@uniswap/eslint-config/extension'],
77
plugins: ['rulesdir'],
88
ignorePatterns: [
99
'node_modules',

apps/extension/package.json

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,17 @@
44
"browserslist": "last 2 chrome versions",
55
"dependencies": {
66
"@apollo/client": "3.10.4",
7+
"@datadog/browser-rum": "5.23.3",
8+
"@ethersproject/bignumber": "5.7.0",
79
"@ethersproject/providers": "5.7.2",
10+
"@ethersproject/strings": "5.7.0",
11+
"@ethersproject/wordlists": "5.7.0",
812
"@metamask/rpc-errors": "6.2.1",
913
"@reduxjs/toolkit": "1.9.3",
1014
"@svgr/webpack": "8.0.1",
11-
"@tamagui/core": "1.121.7",
15+
"@tamagui/core": "1.125.17",
1216
"@types/uuid": "9.0.1",
13-
"@uniswap/analytics-events": "2.41.0",
17+
"@uniswap/analytics-events": "2.42.0",
1418
"@uniswap/uniswapx-sdk": "3.0.0-beta.3",
1519
"@uniswap/universal-router-sdk": "4.19.5",
1620
"@uniswap/v3-sdk": "3.25.2",
@@ -19,7 +23,6 @@
1923
"eslint-plugin-rulesdir": "0.2.2",
2024
"ethers": "5.7.2",
2125
"eventemitter3": "5.0.1",
22-
"framer-motion": "10.17.6",
2326
"i18next": "23.10.0",
2427
"node-polyfill-webpack-plugin": "2.0.1",
2528
"react": "18.3.1",
@@ -77,7 +80,7 @@
7780
"statsig-js": "4.41.0",
7881
"style-loader": "3.3.2",
7982
"swc-loader": "0.2.6",
80-
"tamagui-loader": "1.121.7",
83+
"tamagui-loader": "1.125.17",
8184
"typescript": "5.3.3",
8285
"webpack": "5.90.0",
8386
"webpack-cli": "5.1.4",

apps/extension/src/app/components/Trace/TraceUserProperties.tsx

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import { datadogRum } from '@datadog/browser-rum'
12
import { useEffect } from 'react'
23
import { useColorScheme } from 'react-native'
34
import { useEnabledChains } from 'uniswap/src/features/chains/hooks/useEnabledChains'
@@ -24,6 +25,14 @@ export function TraceUserProperties(): null {
2425

2526
useGatingUserPropertyUsernames()
2627

28+
// Set user properties for datadog
29+
30+
useEffect(() => {
31+
datadogRum.setUserProperty(ExtensionUserPropertyName.ActiveWalletAddress, activeAccount?.address)
32+
}, [activeAccount?.address])
33+
34+
// Set user properties for amplitude
35+
2736
useEffect(() => {
2837
setUserProperty(ExtensionUserPropertyName.AppVersion, chrome.runtime.getManifest().version)
2938
return () => {
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
import { Circle, Flex, GeneratedIcon, Text, TouchableArea } from 'ui/src'
2+
import { iconSizes } from 'ui/src/theme'
3+
4+
export function OptionCard({
5+
Icon,
6+
title,
7+
subtitle,
8+
onPress,
9+
}: {
10+
Icon: GeneratedIcon
11+
title: string
12+
subtitle: string
13+
onPress: () => void
14+
}): JSX.Element {
15+
return (
16+
<TouchableArea
17+
width="100%"
18+
shadowColor="$shadowColor"
19+
shadowOpacity={0.05}
20+
shadowRadius={8}
21+
borderWidth={1}
22+
borderColor="$surface3"
23+
borderRadius="$rounded20"
24+
onPress={onPress}
25+
>
26+
<Flex row fill gap="$spacing12" p="$spacing12" width="100%">
27+
<Circle
28+
backgroundColor="$accent2"
29+
borderRadius="$roundedFull"
30+
height={iconSizes.icon32}
31+
width={iconSizes.icon32}
32+
>
33+
<Icon color="$accent1" size={iconSizes.icon16} />
34+
</Circle>
35+
36+
<Flex gap="$spacing4">
37+
<Text variant="body2">{title}</Text>
38+
39+
<Text color="$neutral2" variant="body3">
40+
{subtitle}
41+
</Text>
42+
</Flex>
43+
</Flex>
44+
</TouchableArea>
45+
)
46+
}

apps/extension/src/app/core/OnboardingApp.test.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import OnboardingApp from 'src/app/core/OnboardingApp'
33
import { initializeReduxStore } from 'src/store/store'
44

55
describe('OnboardingApp', () => {
6+
// eslint-disable-next-line jest/expect-expect
67
it('renders without error', async () => {
78
await initializeReduxStore()
89
render(<OnboardingApp />)

apps/extension/src/app/core/OnboardingApp.tsx

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ import {
1616
OnboardingStepsProvider,
1717
ResetSteps,
1818
ScanOnboardingSteps,
19+
SelectImportMethodSteps,
1920
} from 'src/app/features/onboarding/OnboardingSteps'
2021
import { OnboardingWrapper } from 'src/app/features/onboarding/OnboardingWrapper'
2122
import { PasswordImport } from 'src/app/features/onboarding/PasswordImport'
@@ -24,6 +25,7 @@ import { PasswordCreate } from 'src/app/features/onboarding/create/PasswordCreat
2425
import { TestMnemonic } from 'src/app/features/onboarding/create/TestMnemonic'
2526
import { ViewMnemonic } from 'src/app/features/onboarding/create/ViewMnemonic'
2627
import { ImportMnemonic } from 'src/app/features/onboarding/import/ImportMnemonic'
28+
import { SelectImportMethod } from 'src/app/features/onboarding/import/SelectImportMethod'
2729
import { SelectWallets } from 'src/app/features/onboarding/import/SelectWallets'
2830
import { IntroScreen } from 'src/app/features/onboarding/intro/IntroScreen'
2931
import { UnsupportedBrowserScreen } from 'src/app/features/onboarding/intro/UnsupportedBrowserScreen'
@@ -88,6 +90,17 @@ const allRoutes = [
8890
/>
8991
),
9092
},
93+
{
94+
path: OnboardingRoutes.SelectImportMethod,
95+
element: (
96+
<OnboardingStepsProvider
97+
key={OnboardingRoutes.SelectImportMethod}
98+
steps={{
99+
[SelectImportMethodSteps.SelectMethod]: <SelectImportMethod />,
100+
}}
101+
/>
102+
),
103+
},
91104
{
92105
path: OnboardingRoutes.Import,
93106
element: (

0 commit comments

Comments
 (0)