OPS: Attempt to fix yarn issue (#6867)

This commit is contained in:
Marcos Rodriguez Vélez 2024-08-04 15:41:49 -04:00 committed by GitHub
parent f81a19eb5c
commit 47acf76efb
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
21 changed files with 16205 additions and 15605 deletions

View file

@ -11,18 +11,18 @@ jobs:
- checkout
- restore_cache:
key: node_modules-{{ checksum "yarn.lock" }}
key: node_modules-{{ checksum "package-lock.json" }}
- run: test -d node_modules || yarn
- run: test -d node_modules || npm i
- save_cache:
key: node_modules-{{ checksum "yarn.lock" }}
key: node_modules-{{ checksum "package-lock.json" }}
paths:
- node_modules
# run tests!
- run:
command: yarn tslint && yarn lint
command: npm run tslint && npm run lint
unit:
docker:
@ -34,18 +34,18 @@ jobs:
- checkout
- restore_cache:
key: node_modules-{{ checksum "yarn.lock" }}
key: node_modules-{{ checksum "package-lock.json" }}
- run: test -d node_modules || yarn
- run: test -d node_modules || npm i
- save_cache:
key: node_modules-{{ checksum "yarn.lock" }}
key: node_modules-{{ checksum "package-lock.json" }}
paths:
- node_modules
# run tests!
- run:
command: yarn unit
command: npm run unit
integration:
@ -63,18 +63,18 @@ jobs:
- checkout
- restore_cache:
key: node_modules-{{ checksum "yarn.lock" }}
key: node_modules-{{ checksum "package-lock.json" }}
- run: test -d node_modules || yarn
- run: test -d node_modules || npm i
- save_cache:
key: node_modules-{{ checksum "yarn.lock" }}
key: node_modules-{{ checksum "package-lock.json" }}
paths:
- node_modules
# run tests!
- run:
command: yarn jest || yarn jest || yarn jest || yarn jest || sleep 60 && yarn jest
command: npm run jest || npm run jest || npm run jest || npm run jest
# Orchestrate our job run sequence
workflows:

View file

@ -40,7 +40,7 @@ jobs:
- name: Install dependencies with Bundler
run: bundle install
- name: Install node_modules
run: yarn install
run: npm install
- name: Install CocoaPods Dependencies
run: |
gem install cocoapods
@ -171,4 +171,4 @@ jobs:
...repo,
issue_number: prNumber,
body: message,
});
});

View file

@ -22,13 +22,13 @@ jobs:
with:
node-version: 20
- name: Use yarn caches
- name: Use npm caches
uses: actions/cache@v2
with:
path: ~/.yarn/berry/cache
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
path: ~/.npm
key: ${{ runner.os }}-npm-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-yarn-
${{ runner.os }}-npm-
- name: Use specific Java version for sdkmanager to work
uses: actions/setup-java@v3
@ -38,7 +38,7 @@ jobs:
cache: 'gradle'
- name: Install node_modules
run: yarn install
run: npm install --production
- name: Extract Version Name
id: version_name

View file

@ -22,27 +22,27 @@ jobs:
with:
node-version: 20
- name: Use yarn caches
- name: Use npm caches
uses: actions/cache@v4
with:
path: ~/.yarn/berry/cache
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
path: ~/.npm
key: ${{ runner.os }}-npm-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-yarn-
${{ runner.os }}-npm-
- name: Use node_modules caches
id: cache-nm
uses: actions/cache@v4
with:
path: node_modules
key: ${{ runner.os }}-nm-${{ hashFiles('yarn.lock') }}
key: ${{ runner.os }}-nm-${{ hashFiles('package-lock.json') }}
- name: Install node_modules
if: steps.cache-nm.outputs.cache-hit != 'true'
run: yarn
run: npm install
- name: Run tests
run: yarn test || yarn test || yarn test || yarn test
run: npm test || npm test || npm test || npm test
env:
BIP47_HD_MNEMONIC: ${{ secrets.BIP47_HD_MNEMONIC}}
HD_MNEMONIC: ${{ secrets.HD_MNEMONIC }}
@ -74,15 +74,15 @@ jobs:
docker-images: true
swap-storage: true
- name: yarn and gradle caches in /mnt
- name: npm and gradle caches in /mnt
run: |
rm -rf ~/.yarn
rm -rf ~/.npm
rm -rf ~/.gradle
sudo mkdir -p /mnt/.yarn
sudo mkdir -p /mnt/.npm
sudo mkdir -p /mnt/.gradle
sudo chown -R runner /mnt/.yarn
sudo chown -R runner /mnt/.npm
sudo chown -R runner /mnt/.gradle
ln -s /mnt/.yarn /home/runner/
ln -s /mnt/.npm /home/runner/
ln -s /mnt/.gradle /home/runner/
- name: Create artifacts directory on /mnt
@ -105,16 +105,16 @@ jobs:
restore-keys: |
${{ runner.os }}-gradle-
- name: Use yarn caches
- name: Use npm caches
uses: actions/cache@v4
with:
path: ~/.yarn/berry/cache
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
path: ~/.npm
key: ${{ runner.os }}-npm-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-yarn-
${{ runner.os }}-npm-
- name: Install node_modules
run: yarn || yarn
run: npm install || npm install
- name: Use specific Java version for sdkmanager to work
uses: actions/setup-java@v4
@ -129,7 +129,7 @@ jobs:
sudo udevadm trigger --name-match=kvm
- name: Build
run: yarn e2e:release-build
run: npm run e2e:release-build
- name: Run tests
uses: reactivecircus/android-emulator-runner@v2
@ -139,7 +139,7 @@ jobs:
force-avd-creation: false
emulator-options: -no-window -gpu swiftshader_indirect -no-snapshot -noaudio -no-boot-anim -camera-back none -camera-front none -partition-size 2047
arch: x86_64
script: yarn e2e:release-test --record-videos all --record-logs all --take-screenshots all --headless -d 200000 -R 5 --artifacts-location /mnt/artifacts
script: npm run e2e:release-test -- --record-videos all --record-logs all --take-screenshots all --headless -d 200000 -R 5 --artifacts-location /mnt/artifacts
- uses: actions/upload-artifact@v4
if: failure()

11
.gitignore vendored
View file

@ -89,11 +89,6 @@ android/app/.project
android/app/.classpath
android/.settings/org.eclipse.buildship.core.prefs
android/.project
# Yarn
.yarn/*
!.yarn/patches
!.yarn/plugins
!.yarn/releases
!.yarn/sdks
!.yarn/versions
android/.settings/org.eclipse.buildship.core.prefs
android/app/.classpath
android/app/.project

1
.npmrc Normal file
View file

@ -0,0 +1 @@
legacy-peer-deps=true

File diff suppressed because one or more lines are too long

View file

@ -1,5 +0,0 @@
nodeLinker: node-modules
yarnPath: .yarn/releases/yarn-3.6.4.cjs
# checksumBehavior: 'update'

View file

@ -27,12 +27,12 @@ Community: [telegram group](https://t.me/bluewallet)
## BUILD & RUN IT
Please refer to the engines field in package.json file for the minimum required versions of Node and yarn. It is preferred that you use an even-numbered version of Node as these are LTS versions.
Please refer to the engines field in package.json file for the minimum required versions of Node and npm. It is preferred that you use an even-numbered version of Node as these are LTS versions.
To view the version of Node and yarn in your environment, run the following in your console:
To view the version of Node and npm in your environment, run the following in your console:
```
node --version && yarn --version
node --version && npm --version
```
* In your console:
@ -40,10 +40,10 @@ node --version && yarn --version
```
git clone https://github.com/BlueWallet/BlueWallet.git
cd BlueWallet
yarn
npm install
```
Please make sure that your console is running the most stable versions of node (even-numbered versions).
Please make sure that your console is running the most stable versions of npm and node (even-numbered versions).
* To run on Android:
@ -69,7 +69,7 @@ The above command will build the app and install it. Once you launch the app it
```
npx pod-install
yarn start
npm start
```
In another terminal window within the BlueWallet folder:
@ -83,7 +83,7 @@ npx react-native run-ios
```
npx pod-install
yarn start
npm start
```
Open ios/BlueWallet.xcworkspace. Once the project loads, select the scheme/target BlueWallet. Click Run.
@ -91,7 +91,7 @@ Open ios/BlueWallet.xcworkspace. Once the project loads, select the scheme/targe
## TESTS
```bash
yarn test
npm run test
```

View file

@ -20,6 +20,8 @@ export interface TinySecp256k1InterfaceExtended {
isXOnlyPoint(p: Uint8Array): boolean;
xOnlyPointAddTweak(p: Uint8Array, tweak: Uint8Array): XOnlyPointAddTweakResult | null;
privateNegate(d: Uint8Array): Uint8Array;
}
necc.utils.sha256Sync = (...messages: Uint8Array[]): Uint8Array => {
@ -119,7 +121,7 @@ const ecc: TinySecp256k1InterfaceExtended & TinySecp256k1Interface & TinySecp256
return ret;
}),
// privateNegate: (d: Uint8Array): Uint8Array => necc.utils.privateNegate(d),
privateNegate: (d: Uint8Array): Uint8Array => necc.utils.privateNegate(d),
sign: (h: Uint8Array, d: Uint8Array, e?: Uint8Array): Uint8Array => {
return necc.signSync(h, d, { der: false, extraEntropy: e });

View file

@ -230,7 +230,7 @@ const TransactionsNavigationHeader: React.FC<TransactionsNavigationHeaderProps>
<TouchableOpacity style={styles.walletPreferredUnitView} onPress={changeWalletBalanceUnit}>
<Text style={styles.walletPreferredUnitText}>
{wallet.getPreferredBalanceUnit() === BitcoinUnit.LOCAL_CURRENCY
? (preferredFiatCurrency?.endPointKey ?? FiatUnit.USD)
? preferredFiatCurrency?.endPointKey ?? FiatUnit.USD
: wallet.getPreferredBalanceUnit()}
</Text>
</TouchableOpacity>

View file

@ -221,7 +221,7 @@ export const WalletCarouselItem: React.FC<WalletCarouselItemProps> = React.memo(
return (
<Animated.View
style={[
isLargeScreen || !horizontal ? [iStyles.rootLargeDevice, customStyle] : (customStyle ?? { ...iStyles.root, width: itemWidth }),
isLargeScreen || !horizontal ? [iStyles.rootLargeDevice, customStyle] : customStyle ?? { ...iStyles.root, width: itemWidth },
{ opacity, transform: [{ scale: scaleValue }] },
]}
>
@ -341,27 +341,31 @@ const WalletsCarousel = forwardRef<FlatListRefType, WalletsCarouselProps>((props
const flatListRef = useRef<FlatList<any>>(null);
useImperativeHandle(ref, (): any => {
return {
scrollToEnd: (params: { animated?: boolean | null | undefined } | undefined) => flatListRef.current?.scrollToEnd(params),
scrollToIndex: (params: {
animated?: boolean | null | undefined;
index: number;
viewOffset?: number | undefined;
viewPosition?: number | undefined;
}) => flatListRef.current?.scrollToIndex(params),
scrollToItem: (params: {
animated?: boolean | null | undefined;
item: any;
viewOffset?: number | undefined;
viewPosition?: number | undefined;
}) => flatListRef.current?.scrollToItem(params),
scrollToOffset: (params: { animated?: boolean | null | undefined; offset: number }) => flatListRef.current?.scrollToOffset(params),
recordInteraction: () => flatListRef.current?.recordInteraction(),
flashScrollIndicators: () => flatListRef.current?.flashScrollIndicators(),
getNativeScrollRef: () => flatListRef.current?.getNativeScrollRef(),
};
}, []);
useImperativeHandle(
ref,
(): any => {
return {
scrollToEnd: (params: { animated?: boolean | null | undefined } | undefined) => flatListRef.current?.scrollToEnd(params),
scrollToIndex: (params: {
animated?: boolean | null | undefined;
index: number;
viewOffset?: number | undefined;
viewPosition?: number | undefined;
}) => flatListRef.current?.scrollToIndex(params),
scrollToItem: (params: {
animated?: boolean | null | undefined;
item: any;
viewOffset?: number | undefined;
viewPosition?: number | undefined;
}) => flatListRef.current?.scrollToItem(params),
scrollToOffset: (params: { animated?: boolean | null | undefined; offset: number }) => flatListRef.current?.scrollToOffset(params),
recordInteraction: () => flatListRef.current?.recordInteraction(),
flashScrollIndicators: () => flatListRef.current?.flashScrollIndicators(),
getNativeScrollRef: () => flatListRef.current?.getNativeScrollRef(),
};
},
[],
);
const onScrollToIndexFailed = (error: { averageItemLength: number; index: number }): void => {
console.debug('onScrollToIndexFailed');

View file

@ -131,7 +131,7 @@
B4D0B2682C1DED67006B6B1B /* ReceiveMethod.swift in Sources */ = {isa = PBXBuildFile; fileRef = B4D0B2672C1DED67006B6B1B /* ReceiveMethod.swift */; };
B4EE583C226703320003363C /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = B40D4E35225841ED00428FCC /* Assets.xcassets */; };
B4EFF73B2C3F6C5E0095D655 /* MockData.swift in Sources */ = {isa = PBXBuildFile; fileRef = B4EFF73A2C3F6C5E0095D655 /* MockData.swift */; };
C978A716948AB7DEC5B6F677 /* (null) in Frameworks */ = {isa = PBXBuildFile; };
C978A716948AB7DEC5B6F677 /* BuildFile in Frameworks */ = {isa = PBXBuildFile; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
@ -383,7 +383,7 @@
files = (
782F075B5DD048449E2DECE9 /* libz.tbd in Frameworks */,
764B49B1420D4AEB8109BF62 /* libsqlite3.0.tbd in Frameworks */,
C978A716948AB7DEC5B6F677 /* (null) in Frameworks */,
C978A716948AB7DEC5B6F677 /* BuildFile in Frameworks */,
773E382FE62E836172AAB98B /* libPods-BlueWallet.a in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;

View file

@ -21,10 +21,10 @@ echo 'export CPPFLAGS="-I/usr/local/opt/node@20/include"' >> ~/.zshrc
export CPPFLAGS="-I/usr/local/opt/node@20/include"
echo "Configuration complete."
# Install dependencies using yarn
echo "===== Running yarn install ====="
yarn install | tee yarn-install-log.txt
echo "yarn install complete. Full log output in yarn-install-log.txt"
# Install dependencies using npm
echo "===== Running npm install ====="
npm install -y | tee npm-install-log.txt
echo "npm install complete. Full log output in npm-install-log.txt"
echo "===== Running pod install ====="
cd ios

16073
package-lock.json generated Normal file

File diff suppressed because it is too large Load diff

View file

@ -29,6 +29,7 @@
"eslint-config-standard-jsx": "^11.0.0",
"eslint-config-standard-react": "^13.0.0",
"eslint-plugin-import": "^2.29.1",
"eslint-plugin-jest": "^28.7.0",
"eslint-plugin-n": "^16.6.2",
"eslint-plugin-prettier": "^5.1.3",
"eslint-plugin-promise": "^6.1.1",
@ -46,26 +47,26 @@
"node": ">=20"
},
"scripts": {
"clean": "cd android/; ./gradlew clean; cd ..; rm -r -f /tmp/metro-cache/; rm -r -f node_modules/; yarn cache clean; yarn install; yarn start --reset-cache",
"clean:ios": "rm -fr node_modules && rm -fr ios/Pods && yarn && cd ios && pod update && cd ..; yarn start --reset-cache",
"clean": "cd android/; ./gradlew clean; cd ..; rm -r -f /tmp/metro-cache/; rm -r -f node_modules/; npm cache clean --force; npm i; npm start -- --reset-cache",
"clean:ios": "rm -fr node_modules && rm -fr ios/Pods && npm i && cd ios && pod update && cd ..; npm start -- --reset-cache",
"releasenotes2json": "./scripts/release-notes.sh > release-notes.txt; node -e 'console.log(JSON.stringify(require(\"fs\").readFileSync(\"release-notes.txt\", \"utf8\")));' > release-notes.json",
"branch2json": "./scripts/current-branch.sh > current-branch.json",
"start": "react-native start",
"start": "node node_modules/react-native/local-cli/cli.js start",
"android": "react-native run-android",
"android:clean": "cd android; ./gradlew clean; cd .. ;yarn android",
"android:clean": "cd android; ./gradlew clean ; cd .. ; npm run android",
"ios": "react-native run-ios",
"postinstall": "rn-nodeify --install buffer,events,process,stream,inherits,path,assert,crypto --hack; yarn releasenotes2json; yarn branch2json; yarn patches",
"patches": "patch -p1 < scripts/react-native-camera-kit.patch;",
"test": "yarn tslint && yarn lint && yarn unit && yarn jest",
"postinstall": "rn-nodeify --install buffer,events,process,stream,inherits,path,assert,crypto --hack; npm run releasenotes2json; npm run branch2json; npm run patches",
"patches": "patch -p1 < scripts/react-native-camera-kit.patch;",
"test": "npm run tslint && npm run lint && npm run unit && npm run jest",
"jest": "jest tests/integration/*",
"e2e:debug-build": "detox build -c android.debug",
"e2e:debug-test": "detox test -c android.debug -d 200000 -l info",
"e2e:debug": "(test -f android/app/build/outputs/apk/debug/app-debug.apk && test -f android/app/build/outputs/apk/androidTest/debug/app-debug-androidTest.apk) || yarn e2e:debug-build; yarn e2e:debug-test",
"e2e:debug": "(test -f android/app/build/outputs/apk/debug/app-debug.apk && test -f android/app/build/outputs/apk/androidTest/debug/app-debug-androidTest.apk) || npm run e2e:debug-build; npm run e2e:debug-test",
"e2e:release-build": "detox build -c android.release",
"e2e:release-test": "detox test -c android.release",
"tslint": "tsc",
"lint": " yarn tslint && node scripts/find-unused-loc.js && eslint --ext .js,.ts,.tsx '*.@(js|ts|tsx)' screen 'blue_modules/*.@(js|ts|tsx)' class models loc tests components navigation typings",
"lint:fix": "yarn lint --fix",
"lint": " npm run tslint && node scripts/find-unused-loc.js && eslint --ext .js,.ts,.tsx '*.@(js|ts|tsx)' screen 'blue_modules/*.@(js|ts|tsx)' class models loc tests components navigation typings",
"lint:fix": "npm run lint -- --fix",
"lint:quickfix": "git status --porcelain | grep -v '\\.json' | grep -E '\\.js|\\.ts' --color=never | awk '{print $2}' | xargs eslint --fix; exit 0",
"unit": "jest -b -w tests/unit/*"
},
@ -102,25 +103,24 @@
]
},
"dependencies": {
"@babel/preset-env": "^7.20.0",
"@babel/preset-env": "7.25.3",
"@bugsnag/react-native": "7.25.0",
"@bugsnag/source-maps": "2.3.3",
"@keystonehq/bc-ur-registry": "0.6.4",
"@lodev09/react-native-true-sheet": "github:BlueWallet/react-native-true-sheet#730a84b0261ef2dd2e7e9adadba7f260c7f76726",
"@ngraveio/bc-ur": "1.1.12",
"@remobile/react-native-qrcode-local-image": "github:BlueWallet/react-native-qrcode-local-image#31b0113110fbafcf5a5f3ca4183a563550f5c352",
"@noble/secp256k1": "1.6.3",
"@react-native-async-storage/async-storage": "1.24.0",
"@react-native-clipboard/clipboard": "1.14.1",
"@react-native-community/push-notification-ios": "1.11.0",
"@react-native-menu/menu": "1.1.2",
"@react-native/metro-config": "0.74.84",
"@react-navigation/drawer": "6.7.2",
"@react-navigation/native": "6.1.18",
"@react-navigation/native-stack": "6.11.0",
"@remobile/react-native-qrcode-local-image": "github:BlueWallet/react-native-qrcode-local-image#31b0113110fbafcf5a5f3ca4183a563550f5c352",
"@rneui/base": "4.0.0-rc.8",
"@rneui/themed": "4.0.0-rc.8",
"@spsina/bip47": "github:BlueWallet/bip47#f4b8047c7efbe382c268b3074a4956698087f984",
"@spsina/bip47": "github:BlueWallet/bip47#f4b8047",
"aezeed": "0.0.5",
"assert": "2.1.0",
"base-x": "4.0.0",
@ -129,7 +129,7 @@
"bignumber.js": "9.1.1",
"bip21": "2.0.3",
"bip32": "3.0.1",
"bip38": "github:BlueWallet/bip38#7ec4b1932b98eaaff16c5a26765a26466958e6b4",
"bip38": "github:BlueWallet/bip38",
"bip39": "3.1.0",
"bitcoinjs-lib": "6.1.6",
"bitcoinjs-message": "2.2.0",
@ -141,7 +141,7 @@
"detox": "20.25.1",
"ecpair": "2.0.1",
"ecurve": "1.0.6",
"electrum-client": "github:BlueWallet/rn-electrum-client#1bfe3cc4249d5440b816baac942b0cfa921eebf9",
"electrum-client": "github:BlueWallet/rn-electrum-client#1bfe3cc",
"electrum-mnemonic": "2.0.0",
"events": "3.3.0",
"frisbee": "3.1.4",
@ -153,21 +153,21 @@
"process": "0.11.10",
"prop-types": "15.8.1",
"react": "18.2.0",
"react-localization": "github:BlueWallet/react-localization#ae7969a8998128aebf1169f931fb22587dc5f874",
"react-localization": "github:BlueWallet/react-localization#ae7969a",
"react-native": "0.72.14",
"react-native-biometrics": "3.0.1",
"react-native-blue-crypto": "github:BlueWallet/react-native-blue-crypto#3cb5442425bd835e185284fbc62e84b7155bc441",
"react-native-blue-crypto": "github:BlueWallet/react-native-blue-crypto#3cb5442",
"react-native-camera-kit": "13.0.0",
"react-native-crypto": "2.2.0",
"react-native-default-preference": "1.4.4",
"react-native-device-info": "11.1.0",
"react-native-document-picker": "github:BlueWallet/react-native-document-picker#ba9299e01be6d0ddaa5f1b491406481a5ad0f315",
"react-native-draggable-flatlist": "github:BlueWallet/react-native-draggable-flatlist#3061e3055cbe0a9c7665b9c4b90912c30f668a3d",
"react-native-document-picker": "9.3.0",
"react-native-draggable-flatlist": "github:BlueWallet/react-native-draggable-flatlist#v4.0.1",
"react-native-fs": "2.20.0",
"react-native-gesture-handler": "2.18.1",
"react-native-handoff": "github:BlueWallet/react-native-handoff#31d005f93d31099d0e564590a3bbd052b8a02b39",
"react-native-handoff": "github:BlueWallet/react-native-handoff#v0.0.4",
"react-native-haptic-feedback": "2.3.0",
"react-native-idle-timer": "github:BlueWallet/react-native-idle-timer#7300b637c465c86e8db874c442e687950111da40",
"react-native-idle-timer": "github:BlueWallet/react-native-idle-timer#v2.2.3",
"react-native-image-picker": "7.1.2",
"react-native-ios-context-menu": "github:BlueWallet/react-native-ios-context-menu#e5c1217cd220bfab6e6d9a7c65838545082e3f8e",
"react-native-keychain": "8.2.0",
@ -175,14 +175,15 @@
"react-native-localize": "3.2.1",
"react-native-obscure": "github:BlueWallet/react-native-obscure#f4b83b4a261e39b1f5ed4a45ac5bcabc8a59eadb",
"react-native-permissions": "4.1.5",
"react-native-privacy-snapshot": "github:BlueWallet/react-native-privacy-snapshot#529e4627d93f67752a27e82a040ff7b64dca0783",
"react-native-prompt-android": "github:BlueWallet/react-native-prompt-android#ed168d66fed556bc2ed07cf498770f058b78a376",
"react-native-privacy-snapshot": "github:BlueWallet/react-native-privacy-snapshot#529e4627d93f67752a27e82a040ff7b64dca0783",
"react-native-push-notification": "8.1.1",
"react-native-qrcode-svg": "6.3.1",
"react-native-quick-actions": "0.3.13",
"react-native-randombytes": "3.6.1",
"react-native-rate": "1.2.12",
"react-native-reanimated": "3.14.0",
"@react-native/metro-config": "0.74.84",
"react-native-safe-area-context": "4.10.8",
"react-native-screens": "3.33.0",
"react-native-secure-key-store": "github:BlueWallet/react-native-secure-key-store#2076b4849e88aa0a78e08bfbb4ce3923e0925cbc",
@ -195,8 +196,8 @@
"realm": "12.12.1",
"rn-nodeify": "10.3.0",
"scryptsy": "2.1.0",
"silent-payments": "github:BlueWallet/SilentPayments#7ac4d17b85dc875a3ebb072883dd1d92ac286d98",
"slip39": "github:BlueWallet/slip39-js#d316ee6a929ab645fe5462ef1c91720eb66889c8",
"silent-payments": "github:BlueWallet/SilentPayments#7ac4d17",
"slip39": "https://github.com/BlueWallet/slip39-js#d316ee6",
"stream-browserify": "3.0.0",
"url": "0.11.4",
"wif": "2.0.6"
@ -214,14 +215,13 @@
"stream": "stream-browserify"
},
"browser": {
"_stream_duplex": "readable-stream/duplex",
"_stream_passthrough": "readable-stream/passthrough",
"_stream_readable": "readable-stream/readable",
"_stream_transform": "readable-stream/transform",
"_stream_writable": "readable-stream/writable",
"crypto": "react-native-crypto",
"path": "path-browserify",
"_stream_transform": "readable-stream/transform",
"_stream_readable": "readable-stream/readable",
"_stream_writable": "readable-stream/writable",
"_stream_duplex": "readable-stream/duplex",
"_stream_passthrough": "readable-stream/passthrough",
"stream": "stream-browserify"
},
"packageManager": "yarn@3.6.4"
}
}

View file

@ -112,7 +112,7 @@ const SendDetails = () => {
const [dumb, setDumb] = useState(false);
const { isEditable } = routeParams;
// if utxo is limited we use it to calculate available balance
const balance: number = utxo ? utxo.reduce((prev, curr) => prev + curr.value, 0) : (wallet?.getBalance() ?? 0);
const balance: number = utxo ? utxo.reduce((prev, curr) => prev + curr.value, 0) : wallet?.getBalance() ?? 0;
const allBalance = formatBalanceWithoutSuffix(balance, BitcoinUnit.BTC, true);
// if cutomFee is not set, we need to choose highest possible fee for wallet balance
@ -1179,7 +1179,7 @@ const SendDetails = () => {
feeLabel: {
color: colors.feeText,
},
feeRow: {
backgroundColor: colors.feeLabel,
},
@ -1468,13 +1468,13 @@ const SendDetails = () => {
</TouchableOpacity>
{renderCreateButton()}
<SelectFeeModal
ref={feeModalRef}
networkTransactionFees={networkTransactionFees}
feePrecalc={feePrecalc}
feeRate={feeRate}
setCustomFee={setCustomFee}
setFeePrecalc={setFeePrecalc}
/>
ref={feeModalRef}
networkTransactionFees={networkTransactionFees}
feePrecalc={feePrecalc}
feeRate={feeRate}
setCustomFee={setCustomFee}
setFeePrecalc={setFeePrecalc}
/>
{renderOptionsModal()}
</KeyboardAvoidingView>
</View>

View file

@ -143,7 +143,7 @@ const TransactionDetails = () => {
// okay, this txid _was_ with someone using payment codes, so we show the label edit dialog
// and load user-defined alias for the pc if any
setCounterpartyLabel(counterpartyMetadata ? (counterpartyMetadata[foundPaymentCode]?.label ?? '') : '');
setCounterpartyLabel(counterpartyMetadata ? counterpartyMetadata[foundPaymentCode]?.label ?? '' : '');
setIsCounterpartyLabelVisible(true);
setPaymentCode(foundPaymentCode);
}

View file

@ -127,7 +127,9 @@ const ManageWallets: React.FC = () => {
}, [wallets, txMetadata]);
const handleClose = useCallback(() => {
const walletOrder = state.order.filter(item => item.type === ItemType.WalletSection).map(item => item.data);
// Filter out only wallet items from the order array
const walletOrder = state.order.filter((item): item is WalletItem => item.type === ItemType.WalletSection).map(item => item.data);
setWalletsWithNewOrder(walletOrder);
goBack();
}, [goBack, setWalletsWithNewOrder, state.order]);

View file

@ -1,4 +1,4 @@
vim ios/BlueWallet.xcodeproj/project.pbxproj
vim android/app/build.gradle
vim package.json
vim yarn.lock
vim package-lock.json

14598
yarn.lock

File diff suppressed because it is too large Load diff