From d3900f04f19c5cba477ab9bfcb2d58a102c97249 Mon Sep 17 00:00:00 2001 From: Luis Perrone Date: Mon, 16 Dec 2024 16:37:15 -0500 Subject: [PATCH] Address comments, fix small screen issues, lat,lng, and more :) --- package.json | 148 +-- .../pages/AddExistingWalletPage.tsx | 20 +- .../pages/ConnectKeystonePage.tsx | 13 +- .../pages/CreateSeedPhrasePage.tsx | 18 +- .../AccountsService/pages/PairLedgerPage.tsx | 12 +- .../HotspotService/pages/AddHotspotPage.tsx | 7 +- .../HotspotService/pages/ExplorerPage.tsx | 60 +- src/components/ServiceNavBar.tsx | 2 +- src/components/ServiceSheetPage.tsx | 5 +- src/config/locales/en.ts | 4 +- src/features/accounts/WalletList.tsx | 7 +- .../activity/ActivityDetailsScreen.tsx | 7 +- src/features/activity/ActivityScreen.tsx | 9 +- src/features/addressBook/ContactDetails.tsx | 7 +- src/features/addressBook/ContactsList.tsx | 9 +- src/features/burn/BurnScreen.tsx | 12 +- .../collectables/ManageCollectables.tsx | 7 +- .../collectables/NftDetailsScreen.tsx | 7 +- src/features/collectables/NftList.tsx | 9 +- .../TransferCollectableScreen.tsx | 6 +- .../collectables/TransferCompleteScreen.tsx | 7 +- .../hotspots/AssertLocationScreen.tsx | 9 +- src/features/hotspots/HotspotConfig.tsx | 17 +- src/features/hotspots/HotspotDetails.tsx | 40 +- src/features/hotspots/HotspotPage.tsx | 18 +- .../hotspots/{ => components}/EmptyState.tsx | 14 +- .../keystone/SelectKeystoneAccountsScreen.tsx | 9 +- .../onboarding/CreateImportAccountScreen.tsx | 9 +- .../onboarding/WelcomeToHeliumScreen.tsx | 34 +- .../onboarding/import/AccountImportScreen.tsx | 2 +- src/features/payment/PaymentScreen.tsx | 6 +- src/features/payment/PaymentSuccess.tsx | 7 +- .../provider-methods/SignTransaction.tsx | 29 +- src/features/swaps/SwapScreen.tsx | 10 +- .../wallet/AccountManageTokenListScreen.tsx | 6 +- src/features/wallet/AirdropScreen.tsx | 7 +- src/features/wallet/TokensScreen.tsx | 9 +- src/hooks/useBottomSpacing.ts | 10 + yarn.lock | 875 ++++++++++-------- 39 files changed, 822 insertions(+), 665 deletions(-) rename src/features/hotspots/{ => components}/EmptyState.tsx (86%) create mode 100644 src/hooks/useBottomSpacing.ts diff --git a/package.json b/package.json index 005d4571..28189f16 100644 --- a/package.json +++ b/package.json @@ -29,103 +29,103 @@ "packageManager": "yarn@3.6.4", "dependencies": { "@babel/preset-typescript": "7.21.0", - "@bonfida/spl-name-service": "^1.1.1", - "@coral-xyz/anchor": "^0.28.0", + "@bonfida/spl-name-service": "1.1.1", + "@coral-xyz/anchor": "0.28.0", "@gorhom/bottom-sheet": "5.0.4", "@gorhom/portal": "1.0.14", - "@graphql-codegen/cli": "^5.0.0", - "@graphql-codegen/typescript": "^4.0.1", - "@graphql-codegen/typescript-operations": "^4.0.1", - "@graphql-codegen/typescript-rtk-query": "^3.1.1", + "@graphql-codegen/cli": "5.0.0", + "@graphql-codegen/typescript": "4.0.1", + "@graphql-codegen/typescript-operations": "4.0.1", + "@graphql-codegen/typescript-rtk-query": "3.1.1", "@helium/account-fetch-cache": "0.9.14", "@helium/account-fetch-cache-hooks": "0.9.14", "@helium/address": "4.10.2", - "@helium/circuit-breaker-sdk": "^0.9.14", + "@helium/circuit-breaker-sdk": "0.9.14", "@helium/crypto-react-native": "4.8.0", - "@helium/currency-utils": "^0.9.14", - "@helium/data-credits-sdk": "^0.9.14", + "@helium/currency-utils": "0.9.14", + "@helium/data-credits-sdk": "0.9.14", "@helium/distributor-oracle": "0.9.14", - "@helium/fanout-sdk": "^0.9.14", - "@helium/helium-entity-manager-sdk": "^0.9.14", + "@helium/fanout-sdk": "0.9.14", + "@helium/helium-entity-manager-sdk": "0.9.14", "@helium/helium-react-hooks": "0.9.14", - "@helium/helium-sub-daos-sdk": "^0.9.14", + "@helium/helium-sub-daos-sdk": "0.9.14", "@helium/http": "4.7.5", "@helium/idls": "0.9.14", - "@helium/lazy-distributor-sdk": "^0.9.14", - "@helium/modular-governance-hooks": "^0.0.13", + "@helium/lazy-distributor-sdk": "0.9.14", + "@helium/modular-governance-hooks": "0.0.13", "@helium/modular-governance-idls": "0.0.13", "@helium/onboarding": "4.11.0", - "@helium/organization-sdk": "^0.0.13", + "@helium/organization-sdk": "0.0.13", "@helium/proto-ble": "4.0.0", "@helium/react-native-sdk": "3.0.5", "@helium/spl-utils": "0.9.14", - "@helium/state-controller-sdk": "^0.0.13", + "@helium/state-controller-sdk": "0.0.13", "@helium/sus": "0.9.14", "@helium/transactions": "4.8.1", - "@helium/treasury-management-sdk": "^0.9.14", + "@helium/treasury-management-sdk": "0.9.14", "@helium/voter-stake-registry-hooks": "0.9.14", "@helium/voter-stake-registry-sdk": "0.9.14", "@helium/wallet-link": "4.11.0", - "@jup-ag/api": "^6.0.6", - "@keystonehq/keystone-sdk": "^0.8.0", + "@jup-ag/api": "6.0.6", + "@keystonehq/keystone-sdk": "0.8.0", "@ledgerhq/hw-app-solana": "7.2.4", "@ledgerhq/react-native-hid": "6.32.4", "@ledgerhq/react-native-hw-transport-ble": "6.29.4", - "@ledgerhq/types-devices": "^6.25.3", - "@metaplex-foundation/js": "^0.19.5", + "@ledgerhq/types-devices": "6.25.3", + "@metaplex-foundation/js": "0.19.5", "@metaplex-foundation/mpl-bubblegum": "0.6.0", "@metaplex-foundation/mpl-token-metadata": "2.10.0", - "@ngraveio/bc-ur": "^1.1.13", + "@ngraveio/bc-ur": "1.1.13", "@novalabsxyz/mobile-theme": "2.0.0-y.26", - "@onsol/tldparser": "^0.5.3", + "@onsol/tldparser": "0.5.3", "@react-native-async-storage/async-storage": "1.18.1", "@react-native-community/blur": "4.3.0", "@react-native-community/checkbox": "0.5.17", "@react-native-community/clipboard": "1.5.1", "@react-native-community/hooks": "2.8.1", "@react-native-community/netinfo": "9.3.7", - "@react-native-community/slider": "^4.5.2", - "@react-native-masked-view/masked-view": "^0.3.2", + "@react-native-community/slider": "4.5.2", + "@react-native-masked-view/masked-view": "0.3.2", "@react-navigation/bottom-tabs": "6.4.0", "@react-navigation/material-top-tabs": "6.5.1", "@react-navigation/native": "6.0.11", "@react-navigation/native-stack": "6.7.0", "@react-navigation/stack": "6.2.2", "@reduxjs/toolkit": "1.9.1", - "@rnmapbox/maps": "^10.1.31", - "@shopify/react-native-skia": "^1.5.10", + "@rnmapbox/maps": "10.1.31", + "@shopify/react-native-skia": "1.5.10", "@shopify/restyle": "2.4.2", "@solana/spl-account-compression": "0.1.4", "@solana/spl-memo": "0.2.3", "@solana/spl-token": "0.3.6", - "@solana/spl-token-metadata": "^0.1.4", + "@solana/spl-token-metadata": "0.1.4", "@solana/wallet-adapter-react": "0.15.33", "@solana/wallet-standard-features": "1.0.0", - "@solana/web3.js": "^1.87.6", - "@tanstack/react-query": "^5.45.1", + "@solana/web3.js": "1.87.6", + "@tanstack/react-query": "5.45.1", "@tradle/react-native-http": "2.0.1", "@turf/bbox": "6.5.0", "@turf/center": "6.5.0", "@turf/helpers": "6.5.0", - "@types/base-64": "^1.0.2", + "@types/base-64": "1.0.2", "@walletconnect/react-native-compat": "2.2.1", "@walletconnect/sign-client": "2.2.1", "@walletconnect/types": "2.2.1", - "aes-js": "^3.1.2", + "aes-js": "3.1.2", "angry-purple-tiger": "1.0.5", "assert": "1.5.0", "axios": "1.3.2", - "axios-mock-adapter": "^1.22.0", + "axios-mock-adapter": "1.22.0", "base-64": "1.0.0", "bcrypt-react-native": "1.1.1", "bignumber.js": "9.1.1", - "bip39": "^3.1.0", + "bip39": "3.1.0", "bn.js": "5.2.1", "browserify-zlib": "0.1.4", "bs58": "5.0.0", "buffer": "6.0.3", "camelcase-keys": "7.0.2", - "compare-versions": "^6.1.0", + "compare-versions": "6.1.0", "console-browserify": "1.2.0", "constants-browserify": "1.0.0", "crypto": "1.0.1", @@ -133,7 +133,7 @@ "deprecated-react-native-prop-types": "2.3.0", "dns.js": "1.0.1", "domain-browser": "1.2.0", - "ed25519-hd-key": "^1.3.0", + "ed25519-hd-key": "1.3.0", "events": "3.3.0", "expo": "51.0.24", "expo-asset": "10.0.10", @@ -143,44 +143,44 @@ "expo-haptics": "13.0.1", "expo-linking": "6.3.1", "expo-local-authentication": "14.0.1", - "expo-location": "^17.0.1", + "expo-location": "17.0.1", "expo-secure-store": "13.0.2", "fuse.js": "6.6.2", - "geolib": "^3.3.4", + "geolib": "3.3.4", "h3-js": "4.1.0", "https-browserify": "0.0.1", "i18next": "21.9.1", "lodash": "4.17.21", "long": "5.2.0", - "lottie-ios": "^4.4.1", - "lottie-react-native": "^6.7.0", - "markdown-it": "^13.0.2", - "metro-react-native-babel-transformer": "^0.77.0", + "lottie-ios": "4.4.1", + "lottie-react-native": "6.7.0", + "markdown-it": "13.0.2", + "metro-react-native-babel-transformer": "0.77.0", "parse5": "6.0.1", - "patch-package": "^8.0.0", + "patch-package": "8.0.0", "path-browserify": "0.0.0", "punycode": "1.4.1", "qs": "6.11.0", "query-string": "7.1.1", "querystring-es3": "0.2.1", "react": "18.2.0", - "react-async-hook": "^4.0.0", - "react-error-boundary": "^4.0.13", + "react-async-hook": "4.0.0", + "react-error-boundary": "4.0.13", "react-i18next": "11.18.4", "react-native": "0.74.5", - "react-native-animated-numbers": "^0.6.2", + "react-native-animated-numbers": "0.6.2", "react-native-appstate-hook": "1.0.6", "react-native-ble-plx": "2.0.3", - "react-native-bootsplash": "^6.3.2", + "react-native-bootsplash": "6.3.2", "react-native-charts-wrapper": "0.5.10", - "react-native-cheerio": "^1.0.0-rc.4", - "react-native-compass-heading": "^1.5.0", - "react-native-confetti-cannon": "^1.5.2", + "react-native-cheerio": "1.0.0-rc.4", + "react-native-compass-heading": "1.5.0", + "react-native-confetti-cannon": "1.5.2", "react-native-config": "1.4.6", "react-native-crypto": "2.2.0", "react-native-device-info": "8.7.1", "react-native-flash-message": "0.2.1", - "react-native-geocoding": "^0.5.0", + "react-native-geocoding": "0.5.0", "react-native-gesture-handler": "2.18.1", "react-native-get-random-values": "1.8.0", "react-native-icloudstore": "0.9.0", @@ -190,14 +190,14 @@ "react-native-linear-gradient": "2.6.2", "react-native-localize": "2.2.3", "react-native-mail": "6.1.1", - "react-native-markdown-display": "^7.0.0-alpha.2", - "react-native-navigation-bar-color": "^2.0.2", + "react-native-markdown-display": "7.0.0-alpha.2", + "react-native-navigation-bar-color": "2.0.2", "react-native-network-info": "5.2.1", "react-native-onesignal": "5.2.2", - "react-native-os": "^1.2.6", + "react-native-os": "1.2.6", "react-native-pager-view": "6.1.2", - "react-native-permissions": "^3.9.0", - "react-native-qrcode-svg": "^6.3.2", + "react-native-permissions": "3.9.0", + "react-native-qrcode-svg": "6.3.2", "react-native-randombytes": "3.6.1", "react-native-reanimated": "3.14.0", "react-native-safe-area-context": "4.10.8", @@ -205,18 +205,18 @@ "react-native-share": "7.9.0", "react-native-shared-group-preferences": "1.1.24", "react-native-simple-toast": "1.1.4", - "react-native-skeleton-placeholder": "^5.2.4", + "react-native-skeleton-placeholder": "5.2.4", "react-native-snap-carousel": "4.0.0-beta.6", - "react-native-sodium": "^0.4.0", + "react-native-sodium": "0.4.0", "react-native-svg": "13.4.0", "react-native-tab-view": "3.3.4", "react-native-tcp": "3.3.2", "react-native-test-flight": "1.1.0", "react-native-text-ticker": "1.14.0", "react-native-udp": "2.7.0", - "react-native-url-polyfill": "^2.0.0", + "react-native-url-polyfill": "2.0.0", "react-native-video": "5.2.1", - "react-native-vision-camera": "^4.5.3", + "react-native-vision-camera": "4.5.3", "react-native-webview": "13.10.5", "react-redux": "8.0.4", "readable-stream": "3.6.0", @@ -228,7 +228,7 @@ "stream": "0.0.2", "stream-browserify": "1.0.0", "string_decoder": "0.10.31", - "text-encoding-polyfill": "^0.6.7", + "text-encoding-polyfill": "0.6.7", "timers-browserify": "1.4.2", "tinycolor2": "1.4.2", "tty-browserify": "0.0.0", @@ -247,14 +247,14 @@ "@react-native/metro-config": "0.74.87", "@react-native/typescript-config": "0.74.87", "@types/bn.js": "5.1.1", - "@types/debounce": "^1.2.4", + "@types/debounce": "1.2.4", "@types/i18n-js": "3.8.2", "@types/lodash": "4.14.183", - "@types/mapbox__geo-viewport": "^0.5.3", - "@types/markdown-it": "^13.0.5", + "@types/mapbox__geo-viewport": "0.5.3", + "@types/markdown-it": "13.0.5", "@types/parse5": "5.0.3", "@types/qs": "6.9.7", - "@types/react": "^18.2.6", + "@types/react": "18.2.6", "@types/react-native": "0.70.6", "@types/react-native-charts-wrapper": "0.5.2", "@types/react-native-shared-group-preferences": "1.1.1", @@ -265,7 +265,7 @@ "@types/tinycolor2": "1.4.3", "@typescript-eslint/eslint-plugin": "5.59.2", "@typescript-eslint/parser": "5.59.2", - "babel-jest": "^29.6.3", + "babel-jest": "29.6.3", "babel-plugin-module-resolver": "4.1.0", "babel-plugin-transform-remove-console": "6.9.4", "eslint": "7.32.0", @@ -279,10 +279,10 @@ "eslint-plugin-react": "7.30.1", "eslint-plugin-react-hooks": "4.6.0", "husky": "7.0.4", - "jest": "^29.6.3", + "jest": "29.6.3", "jetifier": "1.6.8", "prettier": "2.8.8", - "react-native-clean-project": "^4.0.3", + "react-native-clean-project": "4.0.3", "react-native-cli-bump-version": "1.5.0", "react-native-codegen": "0.0.7", "react-native-svg-transformer": "0.14.3", @@ -296,12 +296,12 @@ "@types/react": "18", "react": "18.2.0", "@solana/wallet-adapter-react": "0.15.33", - "@helium/account-fetch-cache": "^0.9.14", - "@helium/account-fetch-cache-hooks": "^0.9.14", - "@helium/helium-react-hooks": "^0.9.14", - "@helium/voter-stake-registry-hooks": "^0.9.14", - "@helium/voter-stake-registry-sdk": "^0.9.14", - "@helium/modular-governance-hooks": "^0.0.13", + "@helium/account-fetch-cache": "0.9.14", + "@helium/account-fetch-cache-hooks": "0.9.14", + "@helium/helium-react-hooks": "0.9.14", + "@helium/voter-stake-registry-hooks": "0.9.14", + "@helium/voter-stake-registry-sdk": "0.9.14", + "@helium/modular-governance-hooks": "0.0.13", "@helium/onboarding": "4.11.0" }, "react-native": { diff --git a/src/app/services/AccountsService/pages/AddExistingWalletPage.tsx b/src/app/services/AccountsService/pages/AddExistingWalletPage.tsx index 40d146e2..57ec2b64 100644 --- a/src/app/services/AccountsService/pages/AddExistingWalletPage.tsx +++ b/src/app/services/AccountsService/pages/AddExistingWalletPage.tsx @@ -1,11 +1,9 @@ import Box from '@components/Box' import ScrollBox from '@components/ScrollBox' -import { NavBarHeight } from '@components/ServiceNavBar' import { useSpacing, useColors } from '@config/theme/themeHooks' import Text from '@components/Text' import React, { useCallback, useMemo, useRef } from 'react' import { useTranslation } from 'react-i18next' -import { useSafeAreaInsets } from 'react-native-safe-area-context' import { StyleProp, ViewStyle } from 'react-native' import SecretPhrase from '@assets/svgs/secretPhrase.svg' import PrivateKey from '@assets/svgs/privateKey.svg' @@ -24,13 +22,14 @@ import { FlowType, OnboardingSheetWrapper, } from '@features/onboarding/OnboardingSheet' +import { useBottomSpacing } from '@hooks/useBottomSpacing' const AddExistingWalletPage = () => { const { t } = useTranslation() const spacing = useSpacing() const colors = useColors() - const { bottom } = useSafeAreaInsets() const onboardingSheetRef = useRef(null) + const bottomSpacing = useBottomSpacing() const onAddExistingWallet = useCallback( (flowType: FlowType) => () => { @@ -41,20 +40,25 @@ const AddExistingWalletPage = () => { const contentContainerStyle = useMemo( () => ({ - paddingHorizontal: spacing['2xl'], - flex: 1, + padding: spacing['2xl'], justifyContent: 'center', gap: spacing.xl, - paddingBottom: bottom + spacing['2xl'] + NavBarHeight, + paddingBottom: bottomSpacing, }), - [spacing, bottom], + [spacing, bottomSpacing], ) return ( } > - + {t('AddExistingWalletPage.title')} { const { t } = useTranslation() const spacing = useSpacing() const colors = useColors() - const { bottom } = useSafeAreaInsets() + const bottomSpacing = useBottomSpacing() const onboardingSheetRef = useRef(null) const contentContainerStyle = useMemo( () => ({ - paddingHorizontal: spacing['2xl'], - flex: 1, + padding: spacing['2xl'], justifyContent: 'center', alignItems: 'center', - paddingBottom: bottom + spacing['2xl'] + NavBarHeight, + paddingBottom: bottomSpacing, }), - [spacing, bottom], + [spacing, bottomSpacing], ) const openOnboarding = useCallback(() => { @@ -40,6 +38,7 @@ const ConnectKeystonePage = () => { contentContainerStyle={contentContainerStyle as StyleProp} > diff --git a/src/app/services/AccountsService/pages/CreateSeedPhrasePage.tsx b/src/app/services/AccountsService/pages/CreateSeedPhrasePage.tsx index 4b625110..135d4a7c 100644 --- a/src/app/services/AccountsService/pages/CreateSeedPhrasePage.tsx +++ b/src/app/services/AccountsService/pages/CreateSeedPhrasePage.tsx @@ -8,30 +8,29 @@ import React, { useCallback, useMemo, useRef } from 'react' import { useTranslation } from 'react-i18next' import { StyleProp, ViewStyle } from 'react-native' import Add from '@assets/svgs/add.svg' -import { useSafeAreaInsets } from 'react-native-safe-area-context' -import { NavBarHeight } from '@components/ServiceNavBar' import { OnboardingSheetRef, OnboardingSheetWrapper, } from '@features/onboarding/OnboardingSheet' +import { useBottomSpacing } from '@hooks/useBottomSpacing' const CreateSeedPhrasePage = () => { const { t } = useTranslation() const spacing = useSpacing() const colors = useColors() - const { bottom } = useSafeAreaInsets() + const bottomSpacing = useBottomSpacing() + const onboardingSheetRef = useRef(null) const contentContainerStyle = useMemo( () => ({ - paddingHorizontal: spacing['2xl'], - flex: 1, + padding: spacing['2xl'], justifyContent: 'center', alignItems: 'center', gap: spacing.xl, - paddingBottom: bottom + spacing['2xl'] + NavBarHeight, + paddingBottom: bottomSpacing, }), - [spacing, bottom], + [spacing, bottomSpacing], ) const showBottomSheet = useCallback(() => { @@ -40,10 +39,11 @@ const CreateSeedPhrasePage = () => { return ( } > - - + + {t('CreateSeedPhrasePage.title')} { const { t } = useTranslation() const spacing = useSpacing() const colors = useColors() const onboardingSheetRef = useRef(null) - const { bottom } = useSafeAreaInsets() + const bottomSpacing = useBottomSpacing() const contentContainerStyle = useMemo( () => ({ - paddingHorizontal: spacing['2xl'], - flex: 1, + padding: spacing['2xl'], justifyContent: 'center', alignItems: 'center', - paddingBottom: bottom + spacing['2xl'] + NavBarHeight, + paddingBottom: bottomSpacing, }), - [spacing, bottom], + [spacing, bottomSpacing], ) const openOnboardingSheet = useCallback(() => { diff --git a/src/app/services/HotspotService/pages/AddHotspotPage.tsx b/src/app/services/HotspotService/pages/AddHotspotPage.tsx index 3a3237a4..94e5cad7 100644 --- a/src/app/services/HotspotService/pages/AddHotspotPage.tsx +++ b/src/app/services/HotspotService/pages/AddHotspotPage.tsx @@ -8,19 +8,18 @@ import Add from '@assets/svgs/add.svg' import { useColors, useSpacing } from '@config/theme/themeHooks' import RightArrow from '@assets/svgs/rightArrow.svg' import ScrollBox from '@components/ScrollBox' -import { NavBarHeight } from '@components/ServiceNavBar' -import { useSafeAreaInsets } from 'react-native-safe-area-context' import { OnboardingSheetWrapper, OnboardingSheetRef, } from '@features/hotspot-onboarding/OnboardingSheet' +import { useBottomSpacing } from '@hooks/useBottomSpacing' const AddHotspotPage = () => { const { t } = useTranslation() - const { bottom } = useSafeAreaInsets() const colors = useColors() const spacing = useSpacing() const onboardingSheetRef = useRef(null) + const bottomSpacing = useBottomSpacing() const showOnboardingSheet = useCallback(() => { onboardingSheetRef.current?.show() @@ -88,7 +87,7 @@ const AddHotspotPage = () => { gap="sm" justifyContent="center" style={{ - marginBottom: NavBarHeight + bottom + spacing['2xl'], + marginBottom: bottomSpacing, }} > diff --git a/src/app/services/HotspotService/pages/ExplorerPage.tsx b/src/app/services/HotspotService/pages/ExplorerPage.tsx index 712b544e..44f2571c 100644 --- a/src/app/services/HotspotService/pages/ExplorerPage.tsx +++ b/src/app/services/HotspotService/pages/ExplorerPage.tsx @@ -15,6 +15,12 @@ import { useSpacing } from '@config/theme/themeHooks' import Text from '@components/Text' import { ReAnimatedBox } from '@components/AnimatedBox' import { FadeIn, FadeOut } from 'react-native-reanimated' +import { useAsync } from 'react-async-hook' +import { useEntityKey } from '@hooks/useEntityKey' +import { useIotInfo } from '@hooks/useIotInfo' +import { useMobileInfo } from '@hooks/useMobileInfo' +import { parseH3BNLocation } from '@utils/h3' +import { HotspotWithPendingRewards } from '../../../../types/solana' const ExplorerPage = () => { const { hotspotsWithMeta } = useHotspots() @@ -90,31 +96,41 @@ const ExplorerPage = () => { - {hotspotsWithMeta.map((hotspot) => { - const subDao = hotspot?.content?.metadata?.hotspot_infos?.iot - ?.device_type - ? 'iot' - : 'mobile' - const { long, lat } = hotspot.content.metadata.hotspot_infos[subDao] - - if (!long || !lat) return null - - return ( - - - - ) - })} + {hotspotsWithMeta.map((hotspot) => ( + + ))} ) } +const HotspotMarker = ({ hotspot }: { hotspot: HotspotWithPendingRewards }) => { + const entityKey = useEntityKey(hotspot) + const iotInfoAcc = useIotInfo(entityKey) + const mobileInfoAcc = useMobileInfo(entityKey) + + const { result } = useAsync(async () => { + if (iotInfoAcc) { + return parseH3BNLocation(iotInfoAcc.info.location).reverse() + } + + if (mobileInfoAcc) { + return parseH3BNLocation(mobileInfoAcc.info.location).reverse() + } + }, [hotspot]) + + if (!result) return null + + return ( + + + + ) +} + export default ExplorerPage diff --git a/src/components/ServiceNavBar.tsx b/src/components/ServiceNavBar.tsx index 7f109ace..57d05041 100644 --- a/src/components/ServiceNavBar.tsx +++ b/src/components/ServiceNavBar.tsx @@ -180,7 +180,7 @@ const NavServiceNavBar = ({ return ( { >() const { sortedAccounts, currentAccount, setCurrentAccount, accounts } = useAccountStorage() - const { bottom } = useSafeAreaInsets() + const bottomSpacing = useBottomSpacing() const onboardingSheetRef = useRef(null) const handleAddSub = useCallback( @@ -322,7 +321,7 @@ const WalletList = () => { { } const ActivityDetailsScreen = () => { - const { bottom } = useSafeAreaInsets() const route = useRoute() const colors = useColors() const { t, i18n } = useTranslation() const createExplorerUrl = useCreateExplorerUrl() const copyText = useCopyText() const { triggerImpact } = useHaptic() + const bottomSpacing = useBottomSpacing() const { transaction } = route.params @@ -398,7 +397,7 @@ const ActivityDetailsScreen = () => { titleColor="base.black" onPress={handleOpenExplorer} style={{ - marginBottom: NavBarHeight + bottom, + marginBottom: bottomSpacing, }} /> diff --git a/src/features/activity/ActivityScreen.tsx b/src/features/activity/ActivityScreen.tsx index fabd8a02..ddc2172a 100644 --- a/src/features/activity/ActivityScreen.tsx +++ b/src/features/activity/ActivityScreen.tsx @@ -4,7 +4,6 @@ import { EnrichedTransaction } from 'src/types/solana' import { ConfirmedSignatureInfo } from '@solana/web3.js' import { useNavigation } from '@react-navigation/native' import { useTranslation } from 'react-i18next' -import { useSafeAreaInsets } from 'react-native-safe-area-context' import Box from '@components/Box' import Text from '@components/Text' import useEnrichedTransactions from '@hooks/useEnrichedTransactions' @@ -12,8 +11,8 @@ import CircleLoader from '@components/CircleLoader' import FadeInOut from '@components/FadeInOut' import useHaptic from '@hooks/useHaptic' import { useColors, useSpacing } from '@config/theme/themeHooks' -import { NavBarHeight } from '@components/ServiceNavBar' import ScrollBox from '@components/ScrollBox' +import { useBottomSpacing } from '@hooks/useBottomSpacing' import { ActivityNavigationProp } from './activityTypes' import ActivityListItem from './ActivityListItem' @@ -22,17 +21,17 @@ const ActivityScreen = () => { useEnrichedTransactions() const { t } = useTranslation() const spacing = useSpacing() - const { bottom } = useSafeAreaInsets() const colors = useColors() const navigation = useNavigation() const { triggerImpact } = useHaptic() + const bottomSpacing = useBottomSpacing() const contentContainer = useMemo( () => ({ paddingTop: spacing['6xl'], - paddingBottom: NavBarHeight + bottom + spacing['6xl'], + paddingBottom: bottomSpacing, }), - [spacing, bottom], + [spacing, bottomSpacing], ) const SectionData = useMemo((): { diff --git a/src/features/addressBook/ContactDetails.tsx b/src/features/addressBook/ContactDetails.tsx index f1ab9981..375dfdf2 100644 --- a/src/features/addressBook/ContactDetails.tsx +++ b/src/features/addressBook/ContactDetails.tsx @@ -28,13 +28,12 @@ import { heliumAddressFromSolAddress } from '@helium/spl-utils' import { useDebounce } from 'use-debounce' import { fetchDomainOwner } from '@utils/getDomainOwner' import BackScreen from '@components/BackScreen' -import { NavBarHeight } from '@components/ServiceNavBar' -import { useSafeAreaInsets } from 'react-native-safe-area-context' import ScrollBox from '@components/ScrollBox' import { useAccountStorage } from '@config/storage/AccountStorageProvider' import { useAppStorage } from '@config/storage/AppStorageProvider' import { CSAccount } from '@config/storage/cloudStorage' import { useSolana } from '@features/solana/SolanaProvider' +import { useBottomSpacing } from '@hooks/useBottomSpacing' import AddressExtra from './AddressExtra' import { AddressBookNavigationProp, @@ -55,7 +54,6 @@ const ContactDetails = ({ action, contact }: Props) => { const { t } = useTranslation() const addressBookNav = useNavigation() const route = useRoute() - const { bottom } = useSafeAreaInsets() const { addContact, editContact, deleteContact } = useAccountStorage() const [nickname, setNickname] = useState(contact?.alias || '') const [address, setAddress] = useState('') @@ -67,6 +65,7 @@ const ContactDetails = ({ action, contact }: Props) => { const { connection } = useSolana() // debounce is needed to avoid unneccessary rpc calls const [debouncedAddress] = useDebounce(address, 800) + const bottomSpacing = useBottomSpacing() useEffect(() => { if (route.params?.address) { @@ -185,7 +184,7 @@ const ContactDetails = ({ action, contact }: Props) => { paddingHorizontal="0" padding="4" style={{ - paddingBottom: NavBarHeight + bottom + spacing.xl, + paddingBottom: bottomSpacing, }} > diff --git a/src/features/addressBook/ContactsList.tsx b/src/features/addressBook/ContactsList.tsx index 3b24231a..70ced5c1 100644 --- a/src/features/addressBook/ContactsList.tsx +++ b/src/features/addressBook/ContactsList.tsx @@ -13,8 +13,7 @@ import FabButton from '@components/FabButton' import SearchInput from '@components/SearchInput' import AccountListItem from '@components/AccountListItem' import { useSpacing } from '@config/theme/themeHooks' -import { NavBarHeight } from '@components/ServiceNavBar' -import { useSafeAreaInsets } from 'react-native-safe-area-context' +import { useBottomSpacing } from '@hooks/useBottomSpacing' import { CSAccount } from '@config/storage/cloudStorage' type Props = { @@ -38,7 +37,7 @@ const ContactsList = ({ const { t } = useTranslation() const spacing = useSpacing() - const { bottom } = useSafeAreaInsets() + const bottomSpacing = useBottomSpacing() const [searchTerm, setSearchTerm] = useState('') const handleContactPressed = useCallback( (item: CSAccount) => { @@ -161,9 +160,9 @@ const ContactsList = ({ const contentContainerStyle = useMemo(() => { return { padding: spacing['5'], - paddingBottom: NavBarHeight + bottom, + paddingBottom: bottomSpacing, } - }, [spacing, bottom]) + }, [spacing, bottomSpacing]) if (insideBottomSheet) { return ( diff --git a/src/features/burn/BurnScreen.tsx b/src/features/burn/BurnScreen.tsx index c168e761..ed4a70f5 100644 --- a/src/features/burn/BurnScreen.tsx +++ b/src/features/burn/BurnScreen.tsx @@ -23,7 +23,7 @@ import { useCurrentWallet } from '@hooks/useCurrentWallet' import { useMetaplexMetadata } from '@hooks/useMetaplexMetadata' import { RouteProp, useNavigation, useRoute } from '@react-navigation/native' import { PublicKey } from '@solana/web3.js' -import { useColors, useHitSlop, useSpacing } from '@config/theme/themeHooks' +import { useColors, useHitSlop } from '@config/theme/themeHooks' import { BN } from 'bn.js' import React, { memo as reactMemo, @@ -44,7 +44,7 @@ import { } from '@services/WalletService/pages/WalletPage' import { useAccountStorage } from '@config/storage/AccountStorageProvider' import { CSAccount } from '@config/storage/cloudStorage' -import { NavBarHeight } from '@components/ServiceNavBar' +import { useBottomSpacing } from '@hooks/useBottomSpacing' import ScrollBox from '@components/ScrollBox' import AddressBookSelector, { AddressBookRef, @@ -72,8 +72,8 @@ const BurnScreen = () => { setCurrentAccount, defaultAccountAddress, } = useAccountStorage() - const spacing = useSpacing() - const { top, bottom } = useSafeAreaInsets() + const { top } = useSafeAreaInsets() + const bottomSpacing = useBottomSpacing() const navigation = useNavigation() const { t } = useTranslation() const { primaryText } = useColors() @@ -105,10 +105,10 @@ const BurnScreen = () => { const containerStyle = useMemo( () => ({ marginTop: Platform.OS === 'android' ? top : undefined, - paddingBottom: NavBarHeight + spacing['2xl'] + bottom, + paddingBottom: bottomSpacing, flex: 1, }), - [top, spacing, bottom], + [top, bottomSpacing], ) const networkType = useMemo( diff --git a/src/features/collectables/ManageCollectables.tsx b/src/features/collectables/ManageCollectables.tsx index 798a5d55..3eaea6a4 100644 --- a/src/features/collectables/ManageCollectables.tsx +++ b/src/features/collectables/ManageCollectables.tsx @@ -1,6 +1,6 @@ import BackScreen from '@components/BackScreen' import ScrollBox from '@components/ScrollBox' -import { NavBarHeight } from '@components/ServiceNavBar' +import { useBottomSpacing } from '@hooks/useBottomSpacing' import useCollectables from '@hooks/useCollectables' import { RootState } from '@store/rootReducer' import { useColors } from '@config/theme/themeHooks' @@ -9,13 +9,12 @@ import React, { useCallback } from 'react' import { useAsync } from 'react-async-hook' import { FlatList, RefreshControl } from 'react-native' import { useSelector } from 'react-redux' -import { useSafeAreaInsets } from 'react-native-safe-area-context' import { useTranslation } from 'react-i18next' import CollectionItem, { Collection } from './CollectionItem' const ManageCollectables = () => { const { t } = useTranslation() - const { bottom } = useSafeAreaInsets() + const bottomSpacing = useBottomSpacing() const colors = useColors() const { fetchAllCollectablesByGroup } = useCollectables() const approvedCollections = useSelector( @@ -118,7 +117,7 @@ const ManageCollectables = () => { renderItem={renderItem} keyExtractor={keyExtractor} contentContainerStyle={{ - paddingBottom: NavBarHeight + bottom, + paddingBottom: bottomSpacing, }} /> diff --git a/src/features/collectables/NftDetailsScreen.tsx b/src/features/collectables/NftDetailsScreen.tsx index ba24b102..c691ccff 100644 --- a/src/features/collectables/NftDetailsScreen.tsx +++ b/src/features/collectables/NftDetailsScreen.tsx @@ -1,6 +1,5 @@ import React, { useCallback, useMemo, memo } from 'react' import { RouteProp, useNavigation, useRoute } from '@react-navigation/native' -import { useSafeAreaInsets } from 'react-native-safe-area-context' import 'text-encoding-polyfill' import { useTranslation } from 'react-i18next' import Face from '@assets/svgs/face.svg' @@ -18,7 +17,7 @@ import { WalletNavigationProp, WalletStackParamList, } from '@services/WalletService/pages/WalletPage' -import { NavBarHeight } from '@components/ServiceNavBar' +import { useBottomSpacing } from '@hooks/useBottomSpacing' import ButtonPressable from '@components/ButtonPressable' import { useAccountStorage } from '@config/storage/AccountStorageProvider' import NftMetadata from './NftMetadata' @@ -31,7 +30,7 @@ const NftDetailsScreen = () => { const route = useRoute() const navigation = useNavigation() const COLLECTABLE_HEIGHT = ww - const { bottom } = useSafeAreaInsets() + const bottomSpacing = useBottomSpacing() const { editAvatar } = useAccountStorage() const { t } = useTranslation() @@ -182,7 +181,7 @@ const NftDetailsScreen = () => { diff --git a/src/features/collectables/NftList.tsx b/src/features/collectables/NftList.tsx index e4ed8c85..16b104f3 100644 --- a/src/features/collectables/NftList.tsx +++ b/src/features/collectables/NftList.tsx @@ -6,8 +6,7 @@ import Box from '@components/Box' import useCollectables from '@hooks/useCollectables' import { useColors, useSpacing } from '@config/theme/themeHooks' import { useNavigation } from '@react-navigation/native' -import { NavBarHeight } from '@components/ServiceNavBar' -import { useSafeAreaInsets } from 'react-native-safe-area-context' +import { useBottomSpacing } from '@hooks/useBottomSpacing' import TouchableOpacityBox from '@components/TouchableOpacityBox' import Config from '@assets/svgs/config.svg' import Text from '@components/Text' @@ -19,7 +18,7 @@ import NFTListItem, { NFTSkeleton } from './NftListItem' const NftList = () => { const spacing = useSpacing() - const { bottom } = useSafeAreaInsets() + const bottomSpacing = useBottomSpacing() const navigation = useNavigation() const approvedCollections = useSelector( (state: RootState) => state.collectables.approvedCollections, @@ -110,11 +109,11 @@ const NftList = () => { const contentContainerStyle = useMemo( () => ({ marginTop: spacing[4], - paddingBottom: NavBarHeight + bottom + spacing['6xl'], + paddingBottom: bottomSpacing, paddingHorizontal: spacing[5], gap: spacing[4], }), - [spacing, bottom], + [spacing, bottomSpacing], ) return ( diff --git a/src/features/collectables/TransferCollectableScreen.tsx b/src/features/collectables/TransferCollectableScreen.tsx index 30953b08..451e44a3 100644 --- a/src/features/collectables/TransferCollectableScreen.tsx +++ b/src/features/collectables/TransferCollectableScreen.tsx @@ -25,7 +25,7 @@ import { useSafeAreaInsets } from 'react-native-safe-area-context' import 'text-encoding-polyfill' import ScrollBox from '@components/ScrollBox' import { Asset } from '@helium/spl-utils' -import { NavBarHeight } from '@components/ServiceNavBar' +import { useBottomSpacing } from '@hooks/useBottomSpacing' import TouchableOpacityBox from '@components/TouchableOpacityBox' import AddressIcon from '@assets/svgs/addressIcon.svg' import { WalletNavigationProp } from '@services/WalletService/pages/WalletPage' @@ -46,7 +46,7 @@ const TransferCollectableScreen = () => { const route = useRoute() const navigation = useNavigation() const COLLECTABLE_HEIGHT = ww - const { bottom } = useSafeAreaInsets() + const bottomSpacing = useBottomSpacing() const { t } = useTranslation() const { collectable } = route.params @@ -222,7 +222,7 @@ const TransferCollectableScreen = () => { flexDirection="row" marginTop="4" style={{ - marginBottom: NavBarHeight + bottom, + marginBottom: bottomSpacing, }} > { const route = useRoute() const colors = useColors() const spacing = useSpacing() - const { bottom } = useSafeAreaInsets() + const bottomSpacing = useBottomSpacing() const navigation = useNavigation() const COLLECTABLE_HEIGHT = ww const solBalance = useBN(useSolOwnedAmount(useCurrentWallet()).amount) @@ -193,7 +192,7 @@ const TransferCollectableScreen = () => { width="100%" justifyContent="flex-end" style={{ - paddingBottom: NavBarHeight + bottom + spacing.xl, + paddingBottom: bottomSpacing, }} > const AssertLocationScreen = () => { const { t } = useTranslation() - const { bottom } = useSafeAreaInsets() + const bottomSpacing = useBottomSpacing() const route = useRoute() const { backgroundStyle } = useCreateOpacity() const { collectable } = route.params @@ -737,7 +736,7 @@ const AssertLocationScreen = () => { justifyContent="center" onPress={handleAssertLocationPress} style={{ - marginBottom: bottom + NavBarHeight, + marginBottom: bottomSpacing, }} > {debouncedDisabled || asserting ? ( @@ -847,7 +846,7 @@ const AssertLocationScreen = () => { { const navigation = useNavigation() const copyText = useCopyText() const { triggerImpact } = useHaptic() - + const bottomSpacing = useBottomSpacing() const data = useMemo(() => { return [ { @@ -170,12 +171,6 @@ export const HotspotConfig = () => { [data, colors], ) - const contentContainerStyle = useMemo(() => { - return { - // paddingBottom: spacing['2xl'], - } - }, []) - const renderHeader = useCallback(() => { return ( @@ -191,9 +186,13 @@ export const HotspotConfig = () => { }, [onBack]) return ( - + { hotspot: HotspotWithPendingRewards } const spacing = useSpacing() + const bottomSpacing = useBottomSpacing() const navigation = useNavigation() - + const entityKey = useEntityKey(hotspot) + const iotInfoAcc = useIotInfo(entityKey) + const mobileInfoAcc = useMobileInfo(entityKey) const colors = useColors() const borderRadii = useBorderRadii() @@ -60,12 +68,27 @@ const HotspotDetails = () => { }, [hotspot]) const { result: hotspotAddress } = useAsync(async () => { - const subDaoInfo = hotspot?.content?.metadata?.hotspot_infos[subDao] + let address: + | { + city: string | undefined + postalCode: string | undefined + country: string | undefined + street: string | undefined + state: string | undefined + } + | undefined - const lat = subDaoInfo?.lat - const long = subDaoInfo?.long + if (iotInfoAcc) { + const loc = await parseH3BNLocation(iotInfoAcc.info.location).reverse() + address = await getAddressFromLatLng(loc[1], loc[0]) + } + + if (mobileInfoAcc) { + const loc = await parseH3BNLocation(mobileInfoAcc.info.location).reverse() + address = await getAddressFromLatLng(loc[1], loc[0]) + } - const address = await getAddressFromLatLng(lat, long) + if (!address) return undefined return `${address.street}, ${address.city}, ${address.state}` }, [hotspot, subDao]) @@ -201,7 +224,12 @@ const HotspotDetails = () => { ) return ( - + { const { @@ -35,11 +34,16 @@ const HotspotPage = () => { onEndReached, } = useHotspots() + // Refresh the hotspots when the page is loaded + useEffect(() => { + refresh() + }, [refresh]) + const isFocused = useIsFocused() const colors = useColors() const { t } = useTranslation() const spacing = useSpacing() - const { bottom } = useSafeAreaInsets() + const bottomSpacing = useBottomSpacing() const navigation = useNavigation() const [filterText, setFilterText] = useState('') const [userLocation, setUserLocation] = useState() @@ -310,9 +314,9 @@ const HotspotPage = () => { const contentContainerStyle = useMemo(() => { return { paddingHorizontal: spacing['2xl'], - paddingBottom: bottom + NavBarHeight + spacing.xl, + paddingBottom: bottomSpacing, } - }, [spacing, bottom]) + }, [spacing, bottomSpacing]) return ( <> diff --git a/src/features/hotspots/EmptyState.tsx b/src/features/hotspots/components/EmptyState.tsx similarity index 86% rename from src/features/hotspots/EmptyState.tsx rename to src/features/hotspots/components/EmptyState.tsx index 9544f3ce..c0fb11df 100644 --- a/src/features/hotspots/EmptyState.tsx +++ b/src/features/hotspots/components/EmptyState.tsx @@ -1,9 +1,8 @@ import Box from '@components/Box' -import { NavBarHeight } from '@components/ServiceNavBar' -import { useColors, useSpacing } from '@config/theme/themeHooks' +import { useBottomSpacing } from '@hooks/useBottomSpacing' +import { useColors } from '@config/theme/themeHooks' import React, { useCallback } from 'react' import { useTranslation } from 'react-i18next' -import { useSafeAreaInsets } from 'react-native-safe-area-context' import Text from '@components/Text' import ButtonPressable from '@components/ButtonPressable' import AddIcon from '@assets/svgs/add.svg' @@ -12,10 +11,9 @@ import { useNavigation } from '@react-navigation/native' import { HotspotServiceNavigationProp } from 'src/app/services/HotspotService' const EmptyState = () => { - const spacing = useSpacing() const colors = useColors() const { t } = useTranslation() - const { bottom } = useSafeAreaInsets() + const bottomSpacing = useBottomSpacing() const navigation = useNavigation() const onLearnMore = useCallback(() => { @@ -30,7 +28,7 @@ const EmptyState = () => { { backgroundColor="primaryText" borderRadius="6xl" alignItems="center" - paddingTop="8xl" + paddingTop={{ xs: '2xl', lg: '8xl' }} > { variant="textXlMedium" color="text.quaternary-500" marginTop="2.5" - marginBottom="8xl" + marginBottom={{ xs: '2xl', lg: '8xl' }} textAlign="center" paddingHorizontal="2" > diff --git a/src/features/keystone/SelectKeystoneAccountsScreen.tsx b/src/features/keystone/SelectKeystoneAccountsScreen.tsx index b45abcab..420d303e 100644 --- a/src/features/keystone/SelectKeystoneAccountsScreen.tsx +++ b/src/features/keystone/SelectKeystoneAccountsScreen.tsx @@ -18,8 +18,7 @@ import { useSolana } from '@features/solana/SolanaProvider' import { useOnboardingSheet } from '@features/onboarding/OnboardingSheet' import ForwardButton from '@components/ForwardButton' import ScrollBox from '@components/ScrollBox' -import { NavBarHeight } from '@components/ServiceNavBar' -import { useSafeAreaInsets } from 'react-native-safe-area-context' +import { useBottomSpacing } from '@hooks/useBottomSpacing' import { useKeystoneOnboarding } from './KeystoneOnboardingProvider' export type KeystoneAccountType = { @@ -31,7 +30,7 @@ export type KeystoneAccountType = { } const SelectKeystoneAccountsScreen = () => { - const { bottom } = useSafeAreaInsets() + const bottomSpacing = useBottomSpacing() const colors = useColors() const spacing = useSpacing() const { @@ -214,9 +213,9 @@ const SelectKeystoneAccountsScreen = () => { return { padding: spacing['2xl'], flex: 1, - paddingBottom: bottom + NavBarHeight + spacing.xl, + paddingBottom: bottomSpacing, } - }, [spacing, bottom]) + }, [spacing, bottomSpacing]) return ( <> diff --git a/src/features/onboarding/CreateImportAccountScreen.tsx b/src/features/onboarding/CreateImportAccountScreen.tsx index aa817feb..32f724f7 100644 --- a/src/features/onboarding/CreateImportAccountScreen.tsx +++ b/src/features/onboarding/CreateImportAccountScreen.tsx @@ -3,7 +3,7 @@ import React, { memo, useCallback, useRef } from 'react' import { useTranslation } from 'react-i18next' import Box from '@components/Box' import Text from '@components/Text' -import { useColors } from '@config/theme/themeHooks' +import { useColors, useSpacing } from '@config/theme/themeHooks' import FinePrint from '@components/FinePrint' import TouchableContainer from '@components/TouchableContainer' import SecretPhrase from '@assets/svgs/secretPhrase.svg' @@ -28,6 +28,7 @@ const CreateImportAccountScreen = () => { const navigation = useNavigation() const colors = useColors() const onboardingSheetRef = useRef(null) + const spacing = useSpacing() const goBack = useCallback(() => { navigation.goBack() @@ -43,8 +44,10 @@ const CreateImportAccountScreen = () => { return ( { return ( - + @@ -38,7 +53,10 @@ const WelcomeToHeliumScreen = () => { {t('WelcomeToHeliumScreen.title')} { {t('WelcomeToHeliumScreen.subtitle')} - + { options={options} onItemSelected={onWordAmountClicked} paddingTop="4xl" - paddingBottom="8xl" + paddingBottom={{ xs: '4xl', lg: '8xl' }} /> diff --git a/src/features/payment/PaymentScreen.tsx b/src/features/payment/PaymentScreen.tsx index fadc09ed..0373ceb0 100644 --- a/src/features/payment/PaymentScreen.tsx +++ b/src/features/payment/PaymentScreen.tsx @@ -42,7 +42,7 @@ import { KeyboardAwareScrollView } from 'react-native-keyboard-aware-scroll-view import { useSafeAreaInsets } from 'react-native-safe-area-context' import Toast from 'react-native-simple-toast' import { useSelector } from 'react-redux' -import { NavBarHeight } from '@components/ServiceNavBar' +import { useBottomSpacing } from '@hooks/useBottomSpacing' import { WalletNavigationProp } from '@services/WalletService/pages/WalletPage' import { PaymentRouteParam } from 'src/app/services/WalletService' import ScrollBox from '@components/ScrollBox' @@ -100,7 +100,7 @@ const parseLinkedPayments = (opts: PaymentRouteParam): LinkedPayment[] => { type Route = RouteProp const PaymentScreen = () => { const route = useRoute() - const { bottom } = useSafeAreaInsets() + const bottomSpacing = useBottomSpacing() const addressBookRef = useRef(null) const tokenSelectorRef = useRef(null) const hntKeyboardRef = useRef(null) @@ -675,7 +675,7 @@ const PaymentScreen = () => { backgroundColor="primaryBackground" style={{ ...containerStyle, - paddingBottom: NavBarHeight + bottom, + paddingBottom: bottomSpacing, }} > {/* { const { t } = useTranslation() - const { bottom } = useSafeAreaInsets() + const bottomSpacing = useBottomSpacing() return ( @@ -45,7 +44,7 @@ const PaymentSuccess = ({ padding="6" overflow="hidden" style={{ - paddingBottom: NavBarHeight + bottom, + paddingBottom: bottomSpacing, }} backgroundColor="cardBackground" > diff --git a/src/features/provider-methods/SignTransaction.tsx b/src/features/provider-methods/SignTransaction.tsx index d1120fcc..c21b40c8 100644 --- a/src/features/provider-methods/SignTransaction.tsx +++ b/src/features/provider-methods/SignTransaction.tsx @@ -9,12 +9,7 @@ import { Linking, ViewStyle } from 'react-native' import { useTranslation } from 'react-i18next' import ImageBox from '@components/ImageBox' import ButtonPressable from '@components/ButtonPressable' -import { - Connection, - PublicKey, - Transaction, - TransactionInstruction, -} from '@solana/web3.js' +import { Transaction } from '@solana/web3.js' import { useWalletSign } from '@features/solana/WalletSignProvider' import { WalletStandardMessageTypes } from '@features/solana/walletSignBottomSheetTypes' import { useSolana } from '@features/solana/SolanaProvider' @@ -25,28 +20,6 @@ import useSession, { Session, SignTransactionPayload } from './hooks/useSession' import ErrorDetected from './components/ErrorDetected' import extractWebMetadata from './utils' -export const generateMockTxn = async ( - publicKey: PublicKey, - connection: Connection, -) => { - const { - value: { blockhash }, - } = await connection.getLatestBlockhashAndContext() - - const transaction = new Transaction({ - feePayer: publicKey, - recentBlockhash: blockhash, - }).add( - new TransactionInstruction({ - data: Buffer.from('Hello, from the Solana Wallet Adapter example app!'), - keys: [], - programId: new PublicKey('MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr'), - }), - ) - - return transaction -} - type Route = RouteProp export const SignTransaction = () => { const { params } = useRoute() diff --git a/src/features/swaps/SwapScreen.tsx b/src/features/swaps/SwapScreen.tsx index 38c38de8..aff5759f 100644 --- a/src/features/swaps/SwapScreen.tsx +++ b/src/features/swaps/SwapScreen.tsx @@ -67,13 +67,13 @@ import { Keyboard, Image, } from 'react-native' -import { Edge, useSafeAreaInsets } from 'react-native-safe-area-context' -import { NavBarHeight } from '@components/ServiceNavBar' +import { Edge } from 'react-native-safe-area-context' import SegmentedControl from '@components/SegmentedControl' import { Portal } from '@gorhom/portal' import ScrollBox from '@components/ScrollBox' import changeNavigationBarColor from 'react-native-navigation-bar-color' import { useSolana } from '@features/solana/SolanaProvider' +import { useBottomSpacing } from '@hooks/useBottomSpacing' import { solAddressIsValid } from '../../utils/accountUtils' import SwapItem from './SwapItem' import { SwapNavigationProp } from './swapTypes' @@ -88,7 +88,7 @@ enum SelectorMode { const SwapScreen = () => { const { t } = useTranslation() - const { bottom } = useSafeAreaInsets() + const bottomSpacing = useBottomSpacing() const spacing = useSpacing() const { currentAccount } = useAccountStorage() const { isDevnet, anchorProvider, connection } = useSolana() @@ -700,9 +700,7 @@ const SwapScreen = () => { flex={1} paddingHorizontal="5" style={{ - marginBottom: slippageInfoVisible - ? 0 - : NavBarHeight + bottom + spacing['2xl'], + marginBottom: slippageInfoVisible ? 0 : bottomSpacing, }} > diff --git a/src/features/wallet/AccountManageTokenListScreen.tsx b/src/features/wallet/AccountManageTokenListScreen.tsx index 2fc9f217..49fa5b60 100644 --- a/src/features/wallet/AccountManageTokenListScreen.tsx +++ b/src/features/wallet/AccountManageTokenListScreen.tsx @@ -23,8 +23,8 @@ import BackScreen from '@components/BackScreen' import ScrollBox from '@components/ScrollBox' import { BoxProps } from '@shopify/restyle' import { Theme } from '@config/theme/theme' -import { NavBarHeight } from '@components/ServiceNavBar' import { useSolana } from '@features/solana/SolanaProvider' +import { useBottomSpacing } from '@hooks/useBottomSpacing' import { syncTokenAccounts } from '../../store/slices/balancesSlice' import { useAppDispatch } from '../../store/store' import AccountTokenCurrencyBalance from './AccountTokenCurrencyBalance' @@ -114,6 +114,8 @@ const CheckableTokenListItem = ({ const AccountManageTokenListScreen: React.FC = () => { const { visibleTokens, setVisibleTokens } = useVisibleTokens() const { tokenAccounts } = useBalance() + const bottomSpacing = useBottomSpacing() + const mints = useMemo(() => { return tokenAccounts ?.filter( @@ -185,7 +187,7 @@ const AccountManageTokenListScreen: React.FC = () => { renderItem={renderItem} keyExtractor={keyExtractor} contentContainerStyle={{ - paddingBottom: NavBarHeight, + paddingBottom: bottomSpacing, }} /> diff --git a/src/features/wallet/AirdropScreen.tsx b/src/features/wallet/AirdropScreen.tsx index bc011d2e..1351b3ea 100644 --- a/src/features/wallet/AirdropScreen.tsx +++ b/src/features/wallet/AirdropScreen.tsx @@ -23,16 +23,15 @@ import { withRepeat, withTiming, } from 'react-native-reanimated' -import { useSafeAreaInsets } from 'react-native-safe-area-context' import ScrollBox from '@components/ScrollBox' import HNT from '@assets/svgs/hnt.svg' import { useMetaplexMetadata } from '@hooks/useMetaplexMetadata' -import { NavBarHeight } from '@components/ServiceNavBar' import { WalletNavigationProp, WalletStackParamList, } from 'src/app/services/WalletService/pages/WalletPage' import { useSolana } from '@features/solana/SolanaProvider' +import { useBottomSpacing } from '@hooks/useBottomSpacing' const DROP_HEIGHT = 79 @@ -40,7 +39,7 @@ type Route = RouteProp const AirdropScreen = () => { const navigation = useNavigation() - const { bottom } = useSafeAreaInsets() + const bottomSpacing = useBottomSpacing() const { currentAccount } = useAccountStorage() const { anchorProvider } = useSolana() const { t } = useTranslation() @@ -192,7 +191,7 @@ const AirdropScreen = () => { { const widgetGroup = 'group.com.helium.mobile.wallet.widget' @@ -50,7 +49,7 @@ const TokensScreen = () => { const { visibleTokens } = useVisibleTokens() const colors = useColors() const spacing = useSpacing() - const { bottom } = useSafeAreaInsets() + const bottomSpacing = useBottomSpacing() const { currentAccount, sortedAccounts, defaultAccountAddress } = useAccountStorage() const dispatch = useAppDispatch() @@ -212,9 +211,9 @@ const TokensScreen = () => { () => ({ backgroundColor: colors['base.white'], paddingTop: spacing['4'], - paddingBottom: NavBarHeight + bottom, + paddingBottom: bottomSpacing, }), - [colors, spacing, bottom], + [colors, spacing, bottomSpacing], ) useEffect(() => { diff --git a/src/hooks/useBottomSpacing.ts b/src/hooks/useBottomSpacing.ts new file mode 100644 index 00000000..490b56c8 --- /dev/null +++ b/src/hooks/useBottomSpacing.ts @@ -0,0 +1,10 @@ +import { NavBarHeight } from '@components/ServiceNavBar' +import { useSpacing } from '@config/theme/themeHooks' +import { useSafeAreaInsets } from 'react-native-safe-area-context' + +export const useBottomSpacing = () => { + const { bottom } = useSafeAreaInsets() + const spacing = useSpacing() + + return (bottom || spacing['2xl']) + NavBarHeight + spacing.xs +} diff --git a/yarn.lock b/yarn.lock index 80030a88..b0973b86 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1867,6 +1867,15 @@ __metadata: languageName: node linkType: hard +"@babel/runtime@npm:^7.23.2": + version: 7.26.0 + resolution: "@babel/runtime@npm:7.26.0" + dependencies: + regenerator-runtime: ^0.14.0 + checksum: c8e2c0504ab271b3467a261a8f119bf2603eb857a0d71e37791f4e3fae00f681365073cc79f141ddaa90c6077c60ba56448004ad5429d07ac73532be9f7cf28a + languageName: node + linkType: hard + "@babel/runtime@npm:^7.25.0": version: 7.25.7 resolution: "@babel/runtime@npm:7.25.7" @@ -1956,7 +1965,7 @@ __metadata: languageName: node linkType: hard -"@bonfida/spl-name-service@npm:^1.1.1": +"@bonfida/spl-name-service@npm:1.1.1": version: 1.1.1 resolution: "@bonfida/spl-name-service@npm:1.1.1" dependencies: @@ -2013,7 +2022,7 @@ __metadata: languageName: node linkType: hard -"@coral-xyz/anchor@npm:^0.28.0": +"@coral-xyz/anchor@npm:0.28.0, @coral-xyz/anchor@npm:^0.28.0": version: 0.28.0 resolution: "@coral-xyz/anchor@npm:0.28.0" dependencies: @@ -3052,28 +3061,15 @@ __metadata: languageName: node linkType: hard -"@graphql-codegen/add@npm:^5.0.3": - version: 5.0.3 - resolution: "@graphql-codegen/add@npm:5.0.3" - dependencies: - "@graphql-codegen/plugin-helpers": ^5.0.3 - tslib: ~2.6.0 - peerDependencies: - graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 - checksum: 5196b6c64907f03dc1adc0ac4f98ed5fe69abe0eb87027a55dfc14b178cc1fee2bc47f68c8f5a68ce7aa4bc5a4f970f983d1d85b6d7a20489e50657baccd2ad0 - languageName: node - linkType: hard - -"@graphql-codegen/cli@npm:^5.0.0": - version: 5.0.3 - resolution: "@graphql-codegen/cli@npm:5.0.3" +"@graphql-codegen/cli@npm:5.0.0": + version: 5.0.0 + resolution: "@graphql-codegen/cli@npm:5.0.0" dependencies: "@babel/generator": ^7.18.13 "@babel/template": ^7.18.10 "@babel/types": ^7.18.13 - "@graphql-codegen/client-preset": ^4.4.0 - "@graphql-codegen/core": ^4.0.2 - "@graphql-codegen/plugin-helpers": ^5.0.3 + "@graphql-codegen/core": ^4.0.0 + "@graphql-codegen/plugin-helpers": ^5.0.1 "@graphql-tools/apollo-engine-loader": ^8.0.0 "@graphql-tools/code-file-loader": ^8.0.0 "@graphql-tools/git-loader": ^8.0.0 @@ -3084,12 +3080,12 @@ __metadata: "@graphql-tools/prisma-loader": ^8.0.0 "@graphql-tools/url-loader": ^8.0.0 "@graphql-tools/utils": ^10.0.0 - "@whatwg-node/fetch": ^0.9.20 + "@whatwg-node/fetch": ^0.8.0 chalk: ^4.1.0 cosmiconfig: ^8.1.3 debounce: ^1.2.0 detect-indent: ^6.0.0 - graphql-config: ^5.1.1 + graphql-config: ^5.0.2 inquirer: ^8.0.0 is-glob: ^4.0.1 jiti: ^1.17.1 @@ -3114,34 +3110,11 @@ __metadata: graphql-code-generator: cjs/bin.js graphql-codegen: cjs/bin.js graphql-codegen-esm: esm/bin.js - checksum: 8a28419b25e73b4edf5006a93243a24ecdcc030b80d19dbf9153326c45382b2654b9275fa5b29035864652e3698196883e93ba593339cba43221c46cc20da697 + checksum: 55c3cafb08ee33667a896aa1c56e27ff2b6eae123d6116ff299be308038a543fb7d58c4179f34a3dff64079065d549dc05bfd95208c8c3024cecdd6307c0353b languageName: node linkType: hard -"@graphql-codegen/client-preset@npm:^4.4.0": - version: 4.5.0 - resolution: "@graphql-codegen/client-preset@npm:4.5.0" - dependencies: - "@babel/helper-plugin-utils": ^7.20.2 - "@babel/template": ^7.20.7 - "@graphql-codegen/add": ^5.0.3 - "@graphql-codegen/gql-tag-operations": 4.0.11 - "@graphql-codegen/plugin-helpers": ^5.1.0 - "@graphql-codegen/typed-document-node": ^5.0.11 - "@graphql-codegen/typescript": ^4.1.1 - "@graphql-codegen/typescript-operations": ^4.3.1 - "@graphql-codegen/visitor-plugin-common": ^5.5.0 - "@graphql-tools/documents": ^1.0.0 - "@graphql-tools/utils": ^10.0.0 - "@graphql-typed-document-node/core": 3.2.0 - tslib: ~2.6.0 - peerDependencies: - graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 - checksum: 8247074bdb5210c2822e1f3d9c6a37c21d642a4d2241424f1afefdd3a7a29a984da8b9efd250876d6b8f89e056661c70ed70cb96060e71d0f36d5339405f5ed9 - languageName: node - linkType: hard - -"@graphql-codegen/core@npm:^4.0.2": +"@graphql-codegen/core@npm:^4.0.0": version: 4.0.2 resolution: "@graphql-codegen/core@npm:4.0.2" dependencies: @@ -3155,21 +3128,6 @@ __metadata: languageName: node linkType: hard -"@graphql-codegen/gql-tag-operations@npm:4.0.11": - version: 4.0.11 - resolution: "@graphql-codegen/gql-tag-operations@npm:4.0.11" - dependencies: - "@graphql-codegen/plugin-helpers": ^5.1.0 - "@graphql-codegen/visitor-plugin-common": 5.5.0 - "@graphql-tools/utils": ^10.0.0 - auto-bind: ~4.0.0 - tslib: ~2.6.0 - peerDependencies: - graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 - checksum: 68d5eac31547b7012551a72a41caa2be532b85e08efe3efaf7744f27ea4b355a59f032a99f3394b1c2d0eea045d30e2216bf5d86379cbc0e926bf51cb12b4de2 - languageName: node - linkType: hard - "@graphql-codegen/plugin-helpers@npm:^2.7.2": version: 2.7.2 resolution: "@graphql-codegen/plugin-helpers@npm:2.7.2" @@ -3202,7 +3160,7 @@ __metadata: languageName: node linkType: hard -"@graphql-codegen/plugin-helpers@npm:^5.0.3, @graphql-codegen/plugin-helpers@npm:^5.1.0": +"@graphql-codegen/plugin-helpers@npm:^5.0.0, @graphql-codegen/plugin-helpers@npm:^5.0.1, @graphql-codegen/plugin-helpers@npm:^5.0.3, @graphql-codegen/plugin-helpers@npm:^5.1.0": version: 5.1.0 resolution: "@graphql-codegen/plugin-helpers@npm:5.1.0" dependencies: @@ -3218,7 +3176,7 @@ __metadata: languageName: node linkType: hard -"@graphql-codegen/schema-ast@npm:^4.0.2": +"@graphql-codegen/schema-ast@npm:^4.0.0, @graphql-codegen/schema-ast@npm:^4.0.2": version: 4.1.0 resolution: "@graphql-codegen/schema-ast@npm:4.1.0" dependencies: @@ -3231,37 +3189,22 @@ __metadata: languageName: node linkType: hard -"@graphql-codegen/typed-document-node@npm:^5.0.11": - version: 5.0.11 - resolution: "@graphql-codegen/typed-document-node@npm:5.0.11" - dependencies: - "@graphql-codegen/plugin-helpers": ^5.1.0 - "@graphql-codegen/visitor-plugin-common": 5.5.0 - auto-bind: ~4.0.0 - change-case-all: 1.0.15 - tslib: ~2.6.0 - peerDependencies: - graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 - checksum: c14b16c06910181355c4b3b0d01e023ca394889cf18c1262841280c84c2c00a27692359d8703d4545832183749f185ebf0d519b1ca6970043fce6fb8687aaa9c - languageName: node - linkType: hard - -"@graphql-codegen/typescript-operations@npm:^4.0.1, @graphql-codegen/typescript-operations@npm:^4.3.1": - version: 4.3.1 - resolution: "@graphql-codegen/typescript-operations@npm:4.3.1" +"@graphql-codegen/typescript-operations@npm:4.0.1": + version: 4.0.1 + resolution: "@graphql-codegen/typescript-operations@npm:4.0.1" dependencies: - "@graphql-codegen/plugin-helpers": ^5.1.0 - "@graphql-codegen/typescript": ^4.1.1 - "@graphql-codegen/visitor-plugin-common": 5.5.0 + "@graphql-codegen/plugin-helpers": ^5.0.0 + "@graphql-codegen/typescript": ^4.0.1 + "@graphql-codegen/visitor-plugin-common": 4.0.1 auto-bind: ~4.0.0 - tslib: ~2.6.0 + tslib: ~2.5.0 peerDependencies: graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 - checksum: 9618fb8287d6f5d94942da67e48826ae85d9ed2df376a4da686f37438492a4870f209f0473356abd3140762d34021f4c8166a7c8cab63ace8be5f423a8e2f0d3 + checksum: 82cd58ceb7406a3ff7aa5b36a58c9303fd819259679c2de10411f9e22c4fd142068d711714f68259c64eab86ea0a2b3d761959fa59fa5140ca3f1382a5ab5169 languageName: node linkType: hard -"@graphql-codegen/typescript-rtk-query@npm:^3.1.1": +"@graphql-codegen/typescript-rtk-query@npm:3.1.1": version: 3.1.1 resolution: "@graphql-codegen/typescript-rtk-query@npm:3.1.1" dependencies: @@ -3282,7 +3225,22 @@ __metadata: languageName: node linkType: hard -"@graphql-codegen/typescript@npm:^4.0.1, @graphql-codegen/typescript@npm:^4.1.1": +"@graphql-codegen/typescript@npm:4.0.1": + version: 4.0.1 + resolution: "@graphql-codegen/typescript@npm:4.0.1" + dependencies: + "@graphql-codegen/plugin-helpers": ^5.0.0 + "@graphql-codegen/schema-ast": ^4.0.0 + "@graphql-codegen/visitor-plugin-common": 4.0.1 + auto-bind: ~4.0.0 + tslib: ~2.5.0 + peerDependencies: + graphql: ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 + checksum: f360b7204dc33b918d1ece88b65a46a4eac89e7c3f729886e954ebdc405d1279de6fc5a688580a4aba50826ca663dae03bcda2ac72189f5afbfc1a1727d188a6 + languageName: node + linkType: hard + +"@graphql-codegen/typescript@npm:^4.0.1": version: 4.1.1 resolution: "@graphql-codegen/typescript@npm:4.1.1" dependencies: @@ -3317,7 +3275,27 @@ __metadata: languageName: node linkType: hard -"@graphql-codegen/visitor-plugin-common@npm:5.5.0, @graphql-codegen/visitor-plugin-common@npm:^5.5.0": +"@graphql-codegen/visitor-plugin-common@npm:4.0.1": + version: 4.0.1 + resolution: "@graphql-codegen/visitor-plugin-common@npm:4.0.1" + dependencies: + "@graphql-codegen/plugin-helpers": ^5.0.0 + "@graphql-tools/optimize": ^2.0.0 + "@graphql-tools/relay-operation-optimizer": ^7.0.0 + "@graphql-tools/utils": ^10.0.0 + auto-bind: ~4.0.0 + change-case-all: 1.0.15 + dependency-graph: ^0.11.0 + graphql-tag: ^2.11.0 + parse-filepath: ^1.0.2 + tslib: ~2.5.0 + peerDependencies: + graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 + checksum: 72fe72850bcf9907c46ee85cf80ca5f7313418953fc6bc09b761145260ceb9e79199e92c7b3467e9b6371342e70234af5e1be7ee664457a4fdec92ea3bed878a + languageName: node + linkType: hard + +"@graphql-codegen/visitor-plugin-common@npm:5.5.0": version: 5.5.0 resolution: "@graphql-codegen/visitor-plugin-common@npm:5.5.0" dependencies: @@ -3398,18 +3376,6 @@ __metadata: languageName: node linkType: hard -"@graphql-tools/documents@npm:^1.0.0": - version: 1.0.1 - resolution: "@graphql-tools/documents@npm:1.0.1" - dependencies: - lodash.sortby: ^4.7.0 - tslib: ^2.4.0 - peerDependencies: - graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 - checksum: c6ff859d2673dbf884f19d6319735afacc6bff2df6f8ea3dbf56839d01568f61210f256f0905156f123428cc24962ada26b37903263699fc8cd7efb8849a6508 - languageName: node - linkType: hard - "@graphql-tools/executor-graphql-ws@npm:^1.3.1": version: 1.3.1 resolution: "@graphql-tools/executor-graphql-ws@npm:1.3.1" @@ -3778,7 +3744,7 @@ __metadata: languageName: node linkType: hard -"@helium/account-fetch-cache-hooks@npm:^0.9.14": +"@helium/account-fetch-cache-hooks@npm:0.9.14": version: 0.9.14 resolution: "@helium/account-fetch-cache-hooks@npm:0.9.14" dependencies: @@ -3792,7 +3758,7 @@ __metadata: languageName: node linkType: hard -"@helium/account-fetch-cache@npm:^0.9.14": +"@helium/account-fetch-cache@npm:0.9.14": version: 0.9.14 resolution: "@helium/account-fetch-cache@npm:0.9.14" dependencies: @@ -3883,6 +3849,19 @@ __metadata: languageName: node linkType: hard +"@helium/circuit-breaker-sdk@npm:0.9.14, @helium/circuit-breaker-sdk@npm:^0.9.14": + version: 0.9.14 + resolution: "@helium/circuit-breaker-sdk@npm:0.9.14" + dependencies: + "@coral-xyz/anchor": ^0.28.0 + "@helium/anchor-resolvers": ^0.9.14 + "@helium/idls": ^0.9.14 + bn.js: ^5.2.0 + bs58: ^4.0.1 + checksum: 1ccbf2ca4de833066b63592756ce4cfc0b5135a97d8f3f3a006d948d226e094ab992a80643ee0ef5436540aa38e69a7bbc97070fef983be89e6ea21eff72b498 + languageName: node + linkType: hard + "@helium/circuit-breaker-sdk@npm:^0.6.6": version: 0.6.6 resolution: "@helium/circuit-breaker-sdk@npm:0.6.6" @@ -3909,19 +3888,6 @@ __metadata: languageName: node linkType: hard -"@helium/circuit-breaker-sdk@npm:^0.9.14": - version: 0.9.14 - resolution: "@helium/circuit-breaker-sdk@npm:0.9.14" - dependencies: - "@coral-xyz/anchor": ^0.28.0 - "@helium/anchor-resolvers": ^0.9.14 - "@helium/idls": ^0.9.14 - bn.js: ^5.2.0 - bs58: ^4.0.1 - checksum: 1ccbf2ca4de833066b63592756ce4cfc0b5135a97d8f3f3a006d948d226e094ab992a80643ee0ef5436540aa38e69a7bbc97070fef983be89e6ea21eff72b498 - languageName: node - linkType: hard - "@helium/crypto-react-native@npm:4.8.0": version: 4.8.0 resolution: "@helium/crypto-react-native@npm:4.8.0" @@ -3934,6 +3900,16 @@ __metadata: languageName: node linkType: hard +"@helium/currency-utils@npm:0.9.14": + version: 0.9.14 + resolution: "@helium/currency-utils@npm:0.9.14" + dependencies: + "@solana/spl-token": ^0.3.8 + "@solana/web3.js": ^1.78.8 + checksum: 77854dcc5149621ad9b97c54c1419e2f5f0bb7eee6cdacea2c2d56452087627fe4d1323b15eb84ab5f7cf1b58f1fdb051ce94e23edadd6b536f502b08a863480 + languageName: node + linkType: hard + "@helium/currency-utils@npm:^0.6.6": version: 0.6.6 resolution: "@helium/currency-utils@npm:0.6.6" @@ -3955,16 +3931,6 @@ __metadata: languageName: node linkType: hard -"@helium/currency-utils@npm:^0.9.14": - version: 0.9.14 - resolution: "@helium/currency-utils@npm:0.9.14" - dependencies: - "@solana/spl-token": ^0.3.8 - "@solana/web3.js": ^1.78.8 - checksum: 77854dcc5149621ad9b97c54c1419e2f5f0bb7eee6cdacea2c2d56452087627fe4d1323b15eb84ab5f7cf1b58f1fdb051ce94e23edadd6b536f502b08a863480 - languageName: node - linkType: hard - "@helium/currency@npm:^4.7.3": version: 4.10.2 resolution: "@helium/currency@npm:4.10.2" @@ -3974,6 +3940,22 @@ __metadata: languageName: node linkType: hard +"@helium/data-credits-sdk@npm:0.9.14": + version: 0.9.14 + resolution: "@helium/data-credits-sdk@npm:0.9.14" + dependencies: + "@coral-xyz/anchor": ^0.28.0 + "@helium/anchor-resolvers": ^0.9.14 + "@helium/circuit-breaker-sdk": ^0.9.14 + "@helium/helium-sub-daos-sdk": ^0.9.14 + "@helium/idls": ^0.9.14 + bn.js: ^5.2.0 + bs58: ^4.0.1 + crypto-js: ^4.1.1 + checksum: f6f7204a0de8cb40ee75f58407bb34e17d744af08ae649ecf232abfef104564ddc29f31d978f7b6fa2da644d56f4a9f114aa3dfd453019dfbacf81bb94481f37 + languageName: node + linkType: hard + "@helium/data-credits-sdk@npm:^0.6.6": version: 0.6.6 resolution: "@helium/data-credits-sdk@npm:0.6.6" @@ -4006,22 +3988,6 @@ __metadata: languageName: node linkType: hard -"@helium/data-credits-sdk@npm:^0.9.14": - version: 0.9.14 - resolution: "@helium/data-credits-sdk@npm:0.9.14" - dependencies: - "@coral-xyz/anchor": ^0.28.0 - "@helium/anchor-resolvers": ^0.9.14 - "@helium/circuit-breaker-sdk": ^0.9.14 - "@helium/helium-sub-daos-sdk": ^0.9.14 - "@helium/idls": ^0.9.14 - bn.js: ^5.2.0 - bs58: ^4.0.1 - crypto-js: ^4.1.1 - checksum: f6f7204a0de8cb40ee75f58407bb34e17d744af08ae649ecf232abfef104564ddc29f31d978f7b6fa2da644d56f4a9f114aa3dfd453019dfbacf81bb94481f37 - languageName: node - linkType: hard - "@helium/distributor-oracle@npm:0.9.14": version: 0.9.14 resolution: "@helium/distributor-oracle@npm:0.9.14" @@ -4055,7 +4021,7 @@ __metadata: languageName: node linkType: hard -"@helium/fanout-sdk@npm:^0.9.14": +"@helium/fanout-sdk@npm:0.9.14": version: 0.9.14 resolution: "@helium/fanout-sdk@npm:0.9.14" dependencies: @@ -4068,6 +4034,25 @@ __metadata: languageName: node linkType: hard +"@helium/helium-entity-manager-sdk@npm:0.9.14, @helium/helium-entity-manager-sdk@npm:^0.9.14": + version: 0.9.14 + resolution: "@helium/helium-entity-manager-sdk@npm:0.9.14" + dependencies: + "@coral-xyz/anchor": ^0.28.0 + "@helium/address": ^4.10.2 + "@helium/anchor-resolvers": ^0.9.14 + "@helium/helium-sub-daos-sdk": ^0.9.14 + "@helium/idls": ^0.9.14 + "@helium/no-emit-sdk": ^0.9.14 + "@helium/spl-utils": ^0.9.14 + bn.js: ^5.2.0 + bs58: ^4.0.1 + crypto-js: ^4.1.1 + js-sha256: ^0.9.0 + checksum: 24c6825b2226ba40ad433d1c7ec132effef96f535b5fb34d2abbf94c7dfed218b21cc53fc2ecb151c7152703e3b2c8359e383446fc15d89f6022f1918f6ab9de + languageName: node + linkType: hard + "@helium/helium-entity-manager-sdk@npm:^0.6.6": version: 0.6.6 resolution: "@helium/helium-entity-manager-sdk@npm:0.6.6" @@ -4106,26 +4091,7 @@ __metadata: languageName: node linkType: hard -"@helium/helium-entity-manager-sdk@npm:^0.9.14": - version: 0.9.14 - resolution: "@helium/helium-entity-manager-sdk@npm:0.9.14" - dependencies: - "@coral-xyz/anchor": ^0.28.0 - "@helium/address": ^4.10.2 - "@helium/anchor-resolvers": ^0.9.14 - "@helium/helium-sub-daos-sdk": ^0.9.14 - "@helium/idls": ^0.9.14 - "@helium/no-emit-sdk": ^0.9.14 - "@helium/spl-utils": ^0.9.14 - bn.js: ^5.2.0 - bs58: ^4.0.1 - crypto-js: ^4.1.1 - js-sha256: ^0.9.0 - checksum: 24c6825b2226ba40ad433d1c7ec132effef96f535b5fb34d2abbf94c7dfed218b21cc53fc2ecb151c7152703e3b2c8359e383446fc15d89f6022f1918f6ab9de - languageName: node - linkType: hard - -"@helium/helium-react-hooks@npm:^0.9.14": +"@helium/helium-react-hooks@npm:0.9.14": version: 0.9.14 resolution: "@helium/helium-react-hooks@npm:0.9.14" dependencies: @@ -4145,6 +4111,21 @@ __metadata: languageName: node linkType: hard +"@helium/helium-sub-daos-sdk@npm:0.9.14, @helium/helium-sub-daos-sdk@npm:^0.9.14": + version: 0.9.14 + resolution: "@helium/helium-sub-daos-sdk@npm:0.9.14" + dependencies: + "@coral-xyz/anchor": ^0.28.0 + "@helium/anchor-resolvers": ^0.9.14 + "@helium/circuit-breaker-sdk": ^0.9.14 + "@helium/treasury-management-sdk": ^0.9.14 + "@helium/voter-stake-registry-sdk": ^0.9.14 + bn.js: ^5.2.0 + bs58: ^4.0.1 + checksum: 91eef5ad462687c7eeda5cd4692d0450c99f4b8ad6cf1158956c0d8d788883996f82673b93cb3011688ee611d957062a87c965cb73900304587e1a95d20d0f6b + languageName: node + linkType: hard + "@helium/helium-sub-daos-sdk@npm:^0.6.6": version: 0.6.6 resolution: "@helium/helium-sub-daos-sdk@npm:0.6.6" @@ -4175,21 +4156,6 @@ __metadata: languageName: node linkType: hard -"@helium/helium-sub-daos-sdk@npm:^0.9.14": - version: 0.9.14 - resolution: "@helium/helium-sub-daos-sdk@npm:0.9.14" - dependencies: - "@coral-xyz/anchor": ^0.28.0 - "@helium/anchor-resolvers": ^0.9.14 - "@helium/circuit-breaker-sdk": ^0.9.14 - "@helium/treasury-management-sdk": ^0.9.14 - "@helium/voter-stake-registry-sdk": ^0.9.14 - bn.js: ^5.2.0 - bs58: ^4.0.1 - checksum: 91eef5ad462687c7eeda5cd4692d0450c99f4b8ad6cf1158956c0d8d788883996f82673b93cb3011688ee611d957062a87c965cb73900304587e1a95d20d0f6b - languageName: node - linkType: hard - "@helium/hotspot-utils@npm:^0.6.6": version: 0.6.6 resolution: "@helium/hotspot-utils@npm:0.6.6" @@ -4287,7 +4253,7 @@ __metadata: languageName: node linkType: hard -"@helium/lazy-distributor-sdk@npm:^0.9.14": +"@helium/lazy-distributor-sdk@npm:0.9.14, @helium/lazy-distributor-sdk@npm:^0.9.14": version: 0.9.14 resolution: "@helium/lazy-distributor-sdk@npm:0.9.14" dependencies: @@ -4300,7 +4266,7 @@ __metadata: languageName: node linkType: hard -"@helium/modular-governance-hooks@npm:^0.0.13": +"@helium/modular-governance-hooks@npm:0.0.13": version: 0.0.13 resolution: "@helium/modular-governance-hooks@npm:0.0.13" dependencies: @@ -4417,7 +4383,7 @@ __metadata: languageName: node linkType: hard -"@helium/organization-sdk@npm:^0.0.13": +"@helium/organization-sdk@npm:0.0.13, @helium/organization-sdk@npm:^0.0.13": version: 0.0.13 resolution: "@helium/organization-sdk@npm:0.0.13" dependencies: @@ -4621,7 +4587,7 @@ __metadata: languageName: node linkType: hard -"@helium/state-controller-sdk@npm:^0.0.13": +"@helium/state-controller-sdk@npm:0.0.13": version: 0.0.13 resolution: "@helium/state-controller-sdk@npm:0.0.13" dependencies: @@ -4673,6 +4639,20 @@ __metadata: languageName: node linkType: hard +"@helium/treasury-management-sdk@npm:0.9.14, @helium/treasury-management-sdk@npm:^0.9.14": + version: 0.9.14 + resolution: "@helium/treasury-management-sdk@npm:0.9.14" + dependencies: + "@coral-xyz/anchor": ^0.28.0 + "@helium/anchor-resolvers": ^0.9.14 + "@helium/circuit-breaker-sdk": ^0.9.14 + "@helium/idls": ^0.9.14 + bn.js: ^5.2.0 + bs58: ^4.0.1 + checksum: a46291b78876591fac3900ac3784e6fe7427fae56982a2b7830c2a5194c919307ef520e98a1f66b84cec1896c59905f3a917497fa0557f67ff7ae07dff3dfa0f + languageName: node + linkType: hard + "@helium/treasury-management-sdk@npm:^0.6.6": version: 0.6.6 resolution: "@helium/treasury-management-sdk@npm:0.6.6" @@ -4701,21 +4681,7 @@ __metadata: languageName: node linkType: hard -"@helium/treasury-management-sdk@npm:^0.9.14": - version: 0.9.14 - resolution: "@helium/treasury-management-sdk@npm:0.9.14" - dependencies: - "@coral-xyz/anchor": ^0.28.0 - "@helium/anchor-resolvers": ^0.9.14 - "@helium/circuit-breaker-sdk": ^0.9.14 - "@helium/idls": ^0.9.14 - bn.js: ^5.2.0 - bs58: ^4.0.1 - checksum: a46291b78876591fac3900ac3784e6fe7427fae56982a2b7830c2a5194c919307ef520e98a1f66b84cec1896c59905f3a917497fa0557f67ff7ae07dff3dfa0f - languageName: node - linkType: hard - -"@helium/voter-stake-registry-hooks@npm:^0.9.14": +"@helium/voter-stake-registry-hooks@npm:0.9.14": version: 0.9.14 resolution: "@helium/voter-stake-registry-hooks@npm:0.9.14" dependencies: @@ -4744,7 +4710,7 @@ __metadata: languageName: node linkType: hard -"@helium/voter-stake-registry-sdk@npm:^0.9.14": +"@helium/voter-stake-registry-sdk@npm:0.9.14": version: 0.9.14 resolution: "@helium/voter-stake-registry-sdk@npm:0.9.14" dependencies: @@ -4848,7 +4814,7 @@ __metadata: languageName: node linkType: hard -"@jest/core@npm:^29.7.0": +"@jest/core@npm:^29.6.3, @jest/core@npm:^29.7.0": version: 29.7.0 resolution: "@jest/core@npm:29.7.0" dependencies: @@ -5036,7 +5002,7 @@ __metadata: languageName: node linkType: hard -"@jest/transform@npm:^29.7.0": +"@jest/transform@npm:^29.6.3, @jest/transform@npm:^29.7.0": version: 29.7.0 resolution: "@jest/transform@npm:29.7.0" dependencies: @@ -5138,7 +5104,7 @@ __metadata: languageName: node linkType: hard -"@jup-ag/api@npm:^6.0.6": +"@jup-ag/api@npm:6.0.6": version: 6.0.6 resolution: "@jup-ag/api@npm:6.0.6" checksum: 3438ac34675b3f5250755d4d61460b811a64a401bd52b51090c369077f9880f9f02dcbf732a13c5114765daed3711c60461019f66737c46adfda95a766de3f6f @@ -5318,7 +5284,7 @@ __metadata: languageName: node linkType: hard -"@keystonehq/keystone-sdk@npm:^0.8.0": +"@keystonehq/keystone-sdk@npm:0.8.0": version: 0.8.0 resolution: "@keystonehq/keystone-sdk@npm:0.8.0" dependencies: @@ -5473,7 +5439,7 @@ __metadata: languageName: node linkType: hard -"@ledgerhq/types-devices@npm:^6.25.3": +"@ledgerhq/types-devices@npm:6.25.3": version: 6.25.3 resolution: "@ledgerhq/types-devices@npm:6.25.3" checksum: 1bfe60ed14752f0f8daabd7af8c0b4daa26182b29aac7329f5510c1cd5f0dcb3592133a3e331277cf48440a5236373c50e473597a715f9ab54bb0b3c540ac260 @@ -5544,7 +5510,7 @@ __metadata: languageName: node linkType: hard -"@metaplex-foundation/js@npm:^0.19.5": +"@metaplex-foundation/js@npm:0.19.5": version: 0.19.5 resolution: "@metaplex-foundation/js@npm:0.19.5" dependencies: @@ -5709,7 +5675,7 @@ __metadata: languageName: node linkType: hard -"@ngraveio/bc-ur@npm:^1.1.13, @ngraveio/bc-ur@npm:^1.1.5, @ngraveio/bc-ur@npm:^1.1.6": +"@ngraveio/bc-ur@npm:1.1.13, @ngraveio/bc-ur@npm:^1.1.5, @ngraveio/bc-ur@npm:^1.1.6": version: 1.1.13 resolution: "@ngraveio/bc-ur@npm:1.1.13" dependencies: @@ -5844,7 +5810,7 @@ __metadata: languageName: node linkType: hard -"@onsol/tldparser@npm:^0.5.3": +"@onsol/tldparser@npm:0.5.3": version: 0.5.3 resolution: "@onsol/tldparser@npm:0.5.3" dependencies: @@ -5866,6 +5832,39 @@ __metadata: languageName: node linkType: hard +"@peculiar/asn1-schema@npm:^2.3.13, @peculiar/asn1-schema@npm:^2.3.8": + version: 2.3.13 + resolution: "@peculiar/asn1-schema@npm:2.3.13" + dependencies: + asn1js: ^3.0.5 + pvtsutils: ^1.3.5 + tslib: ^2.6.2 + checksum: 245cf398992788fc61c48a4e1263a47803bccd91807e7a419e3fe9ad44ede5e396a5f8d13215b0765774855b634fe10d730b08944e5dc085fc5ee121a7e0139e + languageName: node + linkType: hard + +"@peculiar/json-schema@npm:^1.1.12": + version: 1.1.12 + resolution: "@peculiar/json-schema@npm:1.1.12" + dependencies: + tslib: ^2.0.0 + checksum: b26ececdc23c5ef25837f8be8d1eb5e1c8bb6e9ae7227ac59ffea57fff56bd05137734e7685e9100595d3d88d906dff638ef8d1df54264c388d3eac1b05aa060 + languageName: node + linkType: hard + +"@peculiar/webcrypto@npm:^1.4.0": + version: 1.5.0 + resolution: "@peculiar/webcrypto@npm:1.5.0" + dependencies: + "@peculiar/asn1-schema": ^2.3.8 + "@peculiar/json-schema": ^1.1.12 + pvtsutils: ^1.3.5 + tslib: ^2.6.2 + webcrypto-core: ^1.8.0 + checksum: 9022d7452d564a5a26fbacf477842be34736f2d9139f2f5026adc47fdeda7033193d727491503f2a829d35ab819bbfa61c82a785c49c999eac535ecd69a3a459 + languageName: node + linkType: hard + "@pkgjs/parseargs@npm:^0.11.0": version: 0.11.0 resolution: "@pkgjs/parseargs@npm:0.11.0" @@ -6274,14 +6273,14 @@ __metadata: languageName: node linkType: hard -"@react-native-community/slider@npm:^4.5.2": +"@react-native-community/slider@npm:4.5.2": version: 4.5.2 resolution: "@react-native-community/slider@npm:4.5.2" checksum: 99023660756a1a876fc3d9c1a7cec13f7e414abee3452e1e03d2794bc7f46a9d689740bed5c3889914adf6ed85a55c6017e2f0d73b5de353025ba52bba6e79e1 languageName: node linkType: hard -"@react-native-masked-view/masked-view@npm:^0.3.2": +"@react-native-masked-view/masked-view@npm:0.3.2": version: 0.3.2 resolution: "@react-native-masked-view/masked-view@npm:0.3.2" peerDependencies: @@ -6806,7 +6805,7 @@ __metadata: languageName: node linkType: hard -"@rnmapbox/maps@npm:^10.1.31": +"@rnmapbox/maps@npm:10.1.31": version: 10.1.31 resolution: "@rnmapbox/maps@npm:10.1.31" dependencies: @@ -6886,7 +6885,7 @@ __metadata: languageName: node linkType: hard -"@shopify/react-native-skia@npm:^1.5.10": +"@shopify/react-native-skia@npm:1.5.10": version: 1.5.10 resolution: "@shopify/react-native-skia@npm:1.5.10" dependencies: @@ -7235,27 +7234,27 @@ __metadata: languageName: node linkType: hard -"@solana/spl-token-metadata@npm:^0.1.2": - version: 0.1.5 - resolution: "@solana/spl-token-metadata@npm:0.1.5" +"@solana/spl-token-metadata@npm:0.1.4": + version: 0.1.4 + resolution: "@solana/spl-token-metadata@npm:0.1.4" dependencies: - "@solana/codecs": 2.0.0-rc.1 + "@solana/codecs": 2.0.0-preview.2 "@solana/spl-type-length-value": 0.1.0 peerDependencies: - "@solana/web3.js": ^1.95.3 - checksum: dffe1bf05c5c60cb3a725044c2013c5d3dfeed2e0ae99dd083916cf92cc433f5d87b631f38fc8ae0aac5ed8c1d266be1c8dc7c868da5253be076fe7ce49a31b8 + "@solana/web3.js": ^1.91.6 + checksum: 974969ce59a184f17e8d2f6aa98a118154ec042e9efa41a7b8ad33aecff8234d0a1161573807a59ab9e9d3557d8438b0b78f785cfc481f038900337f73523b02 languageName: node linkType: hard -"@solana/spl-token-metadata@npm:^0.1.4": - version: 0.1.4 - resolution: "@solana/spl-token-metadata@npm:0.1.4" +"@solana/spl-token-metadata@npm:^0.1.2": + version: 0.1.5 + resolution: "@solana/spl-token-metadata@npm:0.1.5" dependencies: - "@solana/codecs": 2.0.0-preview.2 + "@solana/codecs": 2.0.0-rc.1 "@solana/spl-type-length-value": 0.1.0 peerDependencies: - "@solana/web3.js": ^1.91.6 - checksum: 974969ce59a184f17e8d2f6aa98a118154ec042e9efa41a7b8ad33aecff8234d0a1161573807a59ab9e9d3557d8438b0b78f785cfc481f038900337f73523b02 + "@solana/web3.js": ^1.95.3 + checksum: dffe1bf05c5c60cb3a725044c2013c5d3dfeed2e0ae99dd083916cf92cc433f5d87b631f38fc8ae0aac5ed8c1d266be1c8dc7c868da5253be076fe7ce49a31b8 languageName: node linkType: hard @@ -7436,7 +7435,30 @@ __metadata: languageName: node linkType: hard -"@solana/web3.js@npm:^1.21.0, @solana/web3.js@npm:^1.32.0, @solana/web3.js@npm:^1.43.4, @solana/web3.js@npm:^1.50.1, @solana/web3.js@npm:^1.56.2, @solana/web3.js@npm:^1.66.2, @solana/web3.js@npm:^1.68.0, @solana/web3.js@npm:^1.69.0, @solana/web3.js@npm:^1.78.4, @solana/web3.js@npm:^1.78.8, @solana/web3.js@npm:^1.87.6": +"@solana/web3.js@npm:1.87.6": + version: 1.87.6 + resolution: "@solana/web3.js@npm:1.87.6" + dependencies: + "@babel/runtime": ^7.23.2 + "@noble/curves": ^1.2.0 + "@noble/hashes": ^1.3.1 + "@solana/buffer-layout": ^4.0.0 + agentkeepalive: ^4.3.0 + bigint-buffer: ^1.1.5 + bn.js: ^5.2.1 + borsh: ^0.7.0 + bs58: ^4.0.1 + buffer: 6.0.3 + fast-stable-stringify: ^1.0.0 + jayson: ^4.1.0 + node-fetch: ^2.6.12 + rpc-websockets: ^7.5.1 + superstruct: ^0.14.2 + checksum: 182eb2a953f6ebebdfbc7dfda031d1985fb1591a2aa38b388d5dfb9fd3df0fb53a3962373384dbd91df343e148ec3d42a579324effab9ca86f0560c4f6f08481 + languageName: node + linkType: hard + +"@solana/web3.js@npm:^1.21.0, @solana/web3.js@npm:^1.32.0, @solana/web3.js@npm:^1.43.4, @solana/web3.js@npm:^1.50.1, @solana/web3.js@npm:^1.56.2, @solana/web3.js@npm:^1.66.2, @solana/web3.js@npm:^1.68.0, @solana/web3.js@npm:^1.69.0, @solana/web3.js@npm:^1.78.4, @solana/web3.js@npm:^1.78.8": version: 1.91.4 resolution: "@solana/web3.js@npm:1.91.4" dependencies: @@ -7790,7 +7812,7 @@ __metadata: languageName: node linkType: hard -"@tanstack/react-query@npm:^5.45.0, @tanstack/react-query@npm:^5.45.1": +"@tanstack/react-query@npm:5.45.1, @tanstack/react-query@npm:^5.45.0": version: 5.45.1 resolution: "@tanstack/react-query@npm:5.45.1" dependencies: @@ -7990,7 +8012,7 @@ __metadata: languageName: node linkType: hard -"@types/base-64@npm:^1.0.2": +"@types/base-64@npm:1.0.2": version: 1.0.2 resolution: "@types/base-64@npm:1.0.2" checksum: bb7593c6de16c88a1bfed73a37c3be2e940921261bb7a160ab6d671f66d976b5426334ae9ce59553a10086db11e52af348813271a8b636e4f88e4cab8f27a3e4 @@ -8031,7 +8053,7 @@ __metadata: languageName: node linkType: hard -"@types/debounce@npm:^1.2.4": +"@types/debounce@npm:1.2.4": version: 1.2.4 resolution: "@types/debounce@npm:1.2.4" checksum: decef3eee65d681556d50f7fac346f1b33134f6b21f806d41326f9dfb362fa66b0282ff0640ae6791b690694c9dc3dad4e146e909e707e6f96650f3aa325b9da @@ -8175,14 +8197,14 @@ __metadata: languageName: node linkType: hard -"@types/mapbox__geo-viewport@npm:^0.5.3": +"@types/mapbox__geo-viewport@npm:0.5.3": version: 0.5.3 resolution: "@types/mapbox__geo-viewport@npm:0.5.3" checksum: 82240cc936a4bd70293d05576614f0932804c3b58cc841fd72e688f1bd41bcaac406d8249a6342ae669923496b5e6913fe90a3738ffcadf818493ca678afaf08 languageName: node linkType: hard -"@types/markdown-it@npm:^13.0.5": +"@types/markdown-it@npm:13.0.5": version: 13.0.5 resolution: "@types/markdown-it@npm:13.0.5" dependencies: @@ -9165,6 +9187,13 @@ __metadata: languageName: node linkType: hard +"@whatwg-node/events@npm:^0.0.3": + version: 0.0.3 + resolution: "@whatwg-node/events@npm:0.0.3" + checksum: af26f40d4d0a0f5f0ee45fc6124afb8d6b33988dae96ab0fb87aa5e66d1ff08a749491b9da533ea524bbaebd4a770736f254d574a91ab4455386aa098cee8c77 + languageName: node + linkType: hard + "@whatwg-node/fetch@npm:^0.10.0": version: 0.10.1 resolution: "@whatwg-node/fetch@npm:0.10.1" @@ -9175,25 +9204,29 @@ __metadata: languageName: node linkType: hard -"@whatwg-node/fetch@npm:^0.9.20": - version: 0.9.23 - resolution: "@whatwg-node/fetch@npm:0.9.23" +"@whatwg-node/fetch@npm:^0.8.0": + version: 0.8.8 + resolution: "@whatwg-node/fetch@npm:0.8.8" dependencies: - "@whatwg-node/node-fetch": ^0.6.0 - urlpattern-polyfill: ^10.0.0 - checksum: 16c99adecce7eac17220b24c9385f34a30b9c546a790ab8f03f602747746c34ebbd24cf22faa7c921b92463f2e1f6b1ce754da636b4eda1b920720b31f9c41b8 + "@peculiar/webcrypto": ^1.4.0 + "@whatwg-node/node-fetch": ^0.3.6 + busboy: ^1.6.0 + urlpattern-polyfill: ^8.0.0 + web-streams-polyfill: ^3.2.1 + checksum: 891407ba57e32e5af70a3b0a86980c4466dcf2ba8581b6927475c85400280b163085519e98821dd94776da9aa1b0b1e221e718009e2abed9c8a0d4721025b2ab languageName: node linkType: hard -"@whatwg-node/node-fetch@npm:^0.6.0": - version: 0.6.0 - resolution: "@whatwg-node/node-fetch@npm:0.6.0" +"@whatwg-node/node-fetch@npm:^0.3.6": + version: 0.3.6 + resolution: "@whatwg-node/node-fetch@npm:0.3.6" dependencies: - "@kamilkisiela/fast-url-parser": ^1.1.4 + "@whatwg-node/events": ^0.0.3 busboy: ^1.6.0 fast-querystring: ^1.1.1 - tslib: ^2.6.3 - checksum: 78a80a3c0ada94ba5256a7d94be5d27a5527b4cdc071ed2c328ff0f434d8446ee1e0464019af79be06c2d032520065f47abb7e492b774a084ac4b13bd4a86c41 + fast-url-parser: ^1.1.3 + tslib: ^2.3.1 + checksum: d3d7b0a0242c0511c7b666de66d9096fb24ea251426ce76e3a26a8ca17408de5d4d4f81b5aaec840cc7025f0321fb97e06067c53f377c844a5a9473dd76491ae languageName: node linkType: hard @@ -9325,7 +9358,7 @@ __metadata: languageName: node linkType: hard -"aes-js@npm:^3.1.2": +"aes-js@npm:3.1.2": version: 3.1.2 resolution: "aes-js@npm:3.1.2" checksum: 062154d50b1e433cc8c3b8ca7879f3a6375d5e79c2a507b2b6c4ec920b4cd851bf2afa7f65c98761a9da89c0ab618cbe6529e8e9a1c71f93290b53128fb8f712 @@ -9350,7 +9383,7 @@ __metadata: languageName: node linkType: hard -"agentkeepalive@npm:^4.5.0": +"agentkeepalive@npm:^4.3.0, agentkeepalive@npm:^4.5.0": version: 4.5.0 resolution: "agentkeepalive@npm:4.5.0" dependencies: @@ -9820,6 +9853,17 @@ __metadata: languageName: node linkType: hard +"asn1js@npm:^3.0.5": + version: 3.0.5 + resolution: "asn1js@npm:3.0.5" + dependencies: + pvtsutils: ^1.3.2 + pvutils: ^1.1.3 + tslib: ^2.4.0 + checksum: 3b6af1bbadd5762ef8ead5daf2f6bda1bc9e23bc825c4dcc996aa1f9521ad7390a64028565d95d98090d69c8431f004c71cccb866004759169d7c203cf9075eb + languageName: node + linkType: hard + "assert@npm:1.5.0": version: 1.5.0 resolution: "assert@npm:1.5.0" @@ -9994,7 +10038,7 @@ __metadata: languageName: node linkType: hard -"axios-mock-adapter@npm:^1.21.5, axios-mock-adapter@npm:^1.22.0": +"axios-mock-adapter@npm:1.22.0, axios-mock-adapter@npm:^1.21.5": version: 1.22.0 resolution: "axios-mock-adapter@npm:1.22.0" dependencies: @@ -10079,7 +10123,24 @@ __metadata: languageName: node linkType: hard -"babel-jest@npm:^29.6.3, babel-jest@npm:^29.7.0": +"babel-jest@npm:29.6.3": + version: 29.6.3 + resolution: "babel-jest@npm:29.6.3" + dependencies: + "@jest/transform": ^29.6.3 + "@types/babel__core": ^7.1.14 + babel-plugin-istanbul: ^6.1.1 + babel-preset-jest: ^29.6.3 + chalk: ^4.0.0 + graceful-fs: ^4.2.9 + slash: ^3.0.0 + peerDependencies: + "@babel/core": ^7.8.0 + checksum: 8b4b85d829d8ee010f0c8381cb9d67842da905c32183c1fc6e1e8833447a79b969f8279759d44197bb77001239dc41a49fff0e8222d8e8577f47a8d0428d178e + languageName: node + linkType: hard + +"babel-jest@npm:^29.7.0": version: 29.7.0 resolution: "babel-jest@npm:29.7.0" dependencies: @@ -10566,7 +10627,7 @@ __metadata: languageName: node linkType: hard -"bip39@npm:^3.1.0": +"bip39@npm:3.1.0": version: 3.1.0 resolution: "bip39@npm:3.1.0" dependencies: @@ -11695,7 +11756,7 @@ __metadata: languageName: node linkType: hard -"compare-versions@npm:^6.1.0": +"compare-versions@npm:6.1.0, compare-versions@npm:^6.1.0": version: 6.1.0 resolution: "compare-versions@npm:6.1.0" checksum: d4e2a45706a023d8d0b6680338b66b79e20bd02d1947f0ac6531dab634cbed89fa373b3f03d503c5e489761194258d6e1bae67a07f88b1efc61648454f2d47e7 @@ -12852,7 +12913,7 @@ __metadata: languageName: node linkType: hard -"ed25519-hd-key@npm:^1.3.0": +"ed25519-hd-key@npm:1.3.0": version: 1.3.0 resolution: "ed25519-hd-key@npm:1.3.0" dependencies: @@ -14083,7 +14144,7 @@ __metadata: languageName: node linkType: hard -"expo-location@npm:^17.0.1": +"expo-location@npm:17.0.1": version: 17.0.1 resolution: "expo-location@npm:17.0.1" peerDependencies: @@ -14337,6 +14398,15 @@ __metadata: languageName: node linkType: hard +"fast-url-parser@npm:^1.1.3": + version: 1.1.3 + resolution: "fast-url-parser@npm:1.1.3" + dependencies: + punycode: ^1.3.2 + checksum: 5043d0c4a8d775ff58504d56c096563c11b113e4cb8a2668c6f824a1cd4fb3812e2fdf76537eb24a7ce4ae7def6bd9747da630c617cf2a4b6ce0c42514e4f21c + languageName: node + linkType: hard + "fast-xml-parser@npm:^4.0.12, fast-xml-parser@npm:^4.2.4": version: 4.4.1 resolution: "fast-xml-parser@npm:4.4.1" @@ -14959,7 +15029,7 @@ __metadata: languageName: node linkType: hard -"geolib@npm:^3.3.4": +"geolib@npm:3.3.4": version: 3.3.4 resolution: "geolib@npm:3.3.4" checksum: b5ca8090effd384fec168a957d89416577a92dcb63aedf361a60794e07051e6f2a98a3c2db64de2dd9114ac22c63fbf9ec67b2f61dbc300292040cbd4387942b @@ -15190,7 +15260,7 @@ __metadata: languageName: node linkType: hard -"graphql-config@npm:^5.1.1": +"graphql-config@npm:^5.0.2": version: 5.1.3 resolution: "graphql-config@npm:5.1.3" dependencies: @@ -15431,64 +15501,64 @@ __metadata: "@babel/preset-env": 7.20.2 "@babel/preset-typescript": 7.21.0 "@babel/runtime": 7.20.13 - "@bonfida/spl-name-service": ^1.1.1 - "@coral-xyz/anchor": ^0.28.0 + "@bonfida/spl-name-service": 1.1.1 + "@coral-xyz/anchor": 0.28.0 "@gorhom/bottom-sheet": 5.0.4 "@gorhom/portal": 1.0.14 - "@graphql-codegen/cli": ^5.0.0 - "@graphql-codegen/typescript": ^4.0.1 - "@graphql-codegen/typescript-operations": ^4.0.1 - "@graphql-codegen/typescript-rtk-query": ^3.1.1 + "@graphql-codegen/cli": 5.0.0 + "@graphql-codegen/typescript": 4.0.1 + "@graphql-codegen/typescript-operations": 4.0.1 + "@graphql-codegen/typescript-rtk-query": 3.1.1 "@helium/account-fetch-cache": 0.9.14 "@helium/account-fetch-cache-hooks": 0.9.14 "@helium/address": 4.10.2 - "@helium/circuit-breaker-sdk": ^0.9.14 + "@helium/circuit-breaker-sdk": 0.9.14 "@helium/crypto-react-native": 4.8.0 - "@helium/currency-utils": ^0.9.14 - "@helium/data-credits-sdk": ^0.9.14 + "@helium/currency-utils": 0.9.14 + "@helium/data-credits-sdk": 0.9.14 "@helium/distributor-oracle": 0.9.14 - "@helium/fanout-sdk": ^0.9.14 - "@helium/helium-entity-manager-sdk": ^0.9.14 + "@helium/fanout-sdk": 0.9.14 + "@helium/helium-entity-manager-sdk": 0.9.14 "@helium/helium-react-hooks": 0.9.14 - "@helium/helium-sub-daos-sdk": ^0.9.14 + "@helium/helium-sub-daos-sdk": 0.9.14 "@helium/http": 4.7.5 "@helium/idls": 0.9.14 - "@helium/lazy-distributor-sdk": ^0.9.14 - "@helium/modular-governance-hooks": ^0.0.13 + "@helium/lazy-distributor-sdk": 0.9.14 + "@helium/modular-governance-hooks": 0.0.13 "@helium/modular-governance-idls": 0.0.13 "@helium/onboarding": 4.11.0 - "@helium/organization-sdk": ^0.0.13 + "@helium/organization-sdk": 0.0.13 "@helium/proto-ble": 4.0.0 "@helium/react-native-sdk": 3.0.5 "@helium/spl-utils": 0.9.14 - "@helium/state-controller-sdk": ^0.0.13 + "@helium/state-controller-sdk": 0.0.13 "@helium/sus": 0.9.14 "@helium/transactions": 4.8.1 - "@helium/treasury-management-sdk": ^0.9.14 + "@helium/treasury-management-sdk": 0.9.14 "@helium/voter-stake-registry-hooks": 0.9.14 "@helium/voter-stake-registry-sdk": 0.9.14 "@helium/wallet-link": 4.11.0 - "@jup-ag/api": ^6.0.6 - "@keystonehq/keystone-sdk": ^0.8.0 + "@jup-ag/api": 6.0.6 + "@keystonehq/keystone-sdk": 0.8.0 "@ledgerhq/hw-app-solana": 7.2.4 "@ledgerhq/hw-transport-mocker": 6.27.2 "@ledgerhq/react-native-hid": 6.32.4 "@ledgerhq/react-native-hw-transport-ble": 6.29.4 - "@ledgerhq/types-devices": ^6.25.3 - "@metaplex-foundation/js": ^0.19.5 + "@ledgerhq/types-devices": 6.25.3 + "@metaplex-foundation/js": 0.19.5 "@metaplex-foundation/mpl-bubblegum": 0.6.0 "@metaplex-foundation/mpl-token-metadata": 2.10.0 - "@ngraveio/bc-ur": ^1.1.13 + "@ngraveio/bc-ur": 1.1.13 "@novalabsxyz/mobile-theme": 2.0.0-y.26 - "@onsol/tldparser": ^0.5.3 + "@onsol/tldparser": 0.5.3 "@react-native-async-storage/async-storage": 1.18.1 "@react-native-community/blur": 4.3.0 "@react-native-community/checkbox": 0.5.17 "@react-native-community/clipboard": 1.5.1 "@react-native-community/hooks": 2.8.1 "@react-native-community/netinfo": 9.3.7 - "@react-native-community/slider": ^4.5.2 - "@react-native-masked-view/masked-view": ^0.3.2 + "@react-native-community/slider": 4.5.2 + "@react-native-masked-view/masked-view": 0.3.2 "@react-native/babel-preset": 0.74.87 "@react-native/eslint-config": 0.74.87 "@react-native/metro-config": 0.74.87 @@ -15499,31 +15569,31 @@ __metadata: "@react-navigation/native-stack": 6.7.0 "@react-navigation/stack": 6.2.2 "@reduxjs/toolkit": 1.9.1 - "@rnmapbox/maps": ^10.1.31 - "@shopify/react-native-skia": ^1.5.10 + "@rnmapbox/maps": 10.1.31 + "@shopify/react-native-skia": 1.5.10 "@shopify/restyle": 2.4.2 "@solana/spl-account-compression": 0.1.4 "@solana/spl-memo": 0.2.3 "@solana/spl-token": 0.3.6 - "@solana/spl-token-metadata": ^0.1.4 + "@solana/spl-token-metadata": 0.1.4 "@solana/wallet-adapter-react": 0.15.33 "@solana/wallet-standard-features": 1.0.0 - "@solana/web3.js": ^1.87.6 - "@tanstack/react-query": ^5.45.1 + "@solana/web3.js": 1.87.6 + "@tanstack/react-query": 5.45.1 "@tradle/react-native-http": 2.0.1 "@turf/bbox": 6.5.0 "@turf/center": 6.5.0 "@turf/helpers": 6.5.0 - "@types/base-64": ^1.0.2 + "@types/base-64": 1.0.2 "@types/bn.js": 5.1.1 - "@types/debounce": ^1.2.4 + "@types/debounce": 1.2.4 "@types/i18n-js": 3.8.2 "@types/lodash": 4.14.183 - "@types/mapbox__geo-viewport": ^0.5.3 - "@types/markdown-it": ^13.0.5 + "@types/mapbox__geo-viewport": 0.5.3 + "@types/markdown-it": 13.0.5 "@types/parse5": 5.0.3 "@types/qs": 6.9.7 - "@types/react": ^18.2.6 + "@types/react": 18.2.6 "@types/react-native": 0.70.6 "@types/react-native-charts-wrapper": 0.5.2 "@types/react-native-shared-group-preferences": 1.1.1 @@ -15537,24 +15607,24 @@ __metadata: "@walletconnect/react-native-compat": 2.2.1 "@walletconnect/sign-client": 2.2.1 "@walletconnect/types": 2.2.1 - aes-js: ^3.1.2 + aes-js: 3.1.2 angry-purple-tiger: 1.0.5 assert: 1.5.0 axios: 1.3.2 - axios-mock-adapter: ^1.22.0 - babel-jest: ^29.6.3 + axios-mock-adapter: 1.22.0 + babel-jest: 29.6.3 babel-plugin-module-resolver: 4.1.0 babel-plugin-transform-remove-console: 6.9.4 base-64: 1.0.0 bcrypt-react-native: 1.1.1 bignumber.js: 9.1.1 - bip39: ^3.1.0 + bip39: 3.1.0 bn.js: 5.2.1 browserify-zlib: 0.1.4 bs58: 5.0.0 buffer: 6.0.3 camelcase-keys: 7.0.2 - compare-versions: ^6.1.0 + compare-versions: 6.1.0 console-browserify: 1.2.0 constants-browserify: 1.0.0 crypto: 1.0.1 @@ -15562,7 +15632,7 @@ __metadata: deprecated-react-native-prop-types: 2.3.0 dns.js: 1.0.1 domain-browser: 1.2.0 - ed25519-hd-key: ^1.3.0 + ed25519-hd-key: 1.3.0 eslint: 7.32.0 eslint-config-airbnb: 18.2.1 eslint-config-airbnb-typescript: 14.0.2 @@ -15582,24 +15652,24 @@ __metadata: expo-haptics: 13.0.1 expo-linking: 6.3.1 expo-local-authentication: 14.0.1 - expo-location: ^17.0.1 + expo-location: 17.0.1 expo-secure-store: 13.0.2 fuse.js: 6.6.2 - geolib: ^3.3.4 + geolib: 3.3.4 h3-js: 4.1.0 https-browserify: 0.0.1 husky: 7.0.4 i18next: 21.9.1 - jest: ^29.6.3 + jest: 29.6.3 jetifier: 1.6.8 lodash: 4.17.21 long: 5.2.0 - lottie-ios: ^4.4.1 - lottie-react-native: ^6.7.0 - markdown-it: ^13.0.2 - metro-react-native-babel-transformer: ^0.77.0 + lottie-ios: 4.4.1 + lottie-react-native: 6.7.0 + markdown-it: 13.0.2 + metro-react-native-babel-transformer: 0.77.0 parse5: 6.0.1 - patch-package: ^8.0.0 + patch-package: 8.0.0 path-browserify: 0.0.0 prettier: 2.8.8 punycode: 1.4.1 @@ -15607,26 +15677,26 @@ __metadata: query-string: 7.1.1 querystring-es3: 0.2.1 react: 18.2.0 - react-async-hook: ^4.0.0 - react-error-boundary: ^4.0.13 + react-async-hook: 4.0.0 + react-error-boundary: 4.0.13 react-i18next: 11.18.4 react-native: 0.74.5 - react-native-animated-numbers: ^0.6.2 + react-native-animated-numbers: 0.6.2 react-native-appstate-hook: 1.0.6 react-native-ble-plx: 2.0.3 - react-native-bootsplash: ^6.3.2 + react-native-bootsplash: 6.3.2 react-native-charts-wrapper: 0.5.10 - react-native-cheerio: ^1.0.0-rc.4 - react-native-clean-project: ^4.0.3 + react-native-cheerio: 1.0.0-rc.4 + react-native-clean-project: 4.0.3 react-native-cli-bump-version: 1.5.0 react-native-codegen: 0.0.7 - react-native-compass-heading: ^1.5.0 - react-native-confetti-cannon: ^1.5.2 + react-native-compass-heading: 1.5.0 + react-native-confetti-cannon: 1.5.2 react-native-config: 1.4.6 react-native-crypto: 2.2.0 react-native-device-info: 8.7.1 react-native-flash-message: 0.2.1 - react-native-geocoding: ^0.5.0 + react-native-geocoding: 0.5.0 react-native-gesture-handler: 2.18.1 react-native-get-random-values: 1.8.0 react-native-icloudstore: 0.9.0 @@ -15636,14 +15706,14 @@ __metadata: react-native-linear-gradient: 2.6.2 react-native-localize: 2.2.3 react-native-mail: 6.1.1 - react-native-markdown-display: ^7.0.0-alpha.2 - react-native-navigation-bar-color: ^2.0.2 + react-native-markdown-display: 7.0.0-alpha.2 + react-native-navigation-bar-color: 2.0.2 react-native-network-info: 5.2.1 react-native-onesignal: 5.2.2 - react-native-os: ^1.2.6 + react-native-os: 1.2.6 react-native-pager-view: 6.1.2 - react-native-permissions: ^3.9.0 - react-native-qrcode-svg: ^6.3.2 + react-native-permissions: 3.9.0 + react-native-qrcode-svg: 6.3.2 react-native-randombytes: 3.6.1 react-native-reanimated: 3.14.0 react-native-safe-area-context: 4.10.8 @@ -15651,9 +15721,9 @@ __metadata: react-native-share: 7.9.0 react-native-shared-group-preferences: 1.1.24 react-native-simple-toast: 1.1.4 - react-native-skeleton-placeholder: ^5.2.4 + react-native-skeleton-placeholder: 5.2.4 react-native-snap-carousel: 4.0.0-beta.6 - react-native-sodium: ^0.4.0 + react-native-sodium: 0.4.0 react-native-svg: 13.4.0 react-native-svg-transformer: 0.14.3 react-native-tab-view: 3.3.4 @@ -15661,9 +15731,9 @@ __metadata: react-native-test-flight: 1.1.0 react-native-text-ticker: 1.14.0 react-native-udp: 2.7.0 - react-native-url-polyfill: ^2.0.0 + react-native-url-polyfill: 2.0.0 react-native-video: 5.2.1 - react-native-vision-camera: ^4.5.3 + react-native-vision-camera: 4.5.3 react-native-webview: 13.10.5 react-redux: 8.0.4 react-test-renderer: 17.0.2 @@ -15679,7 +15749,7 @@ __metadata: stream: 0.0.2 stream-browserify: 1.0.0 string_decoder: 0.10.31 - text-encoding-polyfill: ^0.6.7 + text-encoding-polyfill: 0.6.7 timers-browserify: 1.4.2 tinycolor2: 1.4.2 tty-browserify: 0.0.0 @@ -17018,7 +17088,7 @@ __metadata: languageName: node linkType: hard -"jest-cli@npm:^29.7.0": +"jest-cli@npm:^29.6.3": version: 29.7.0 resolution: "jest-cli@npm:29.7.0" dependencies: @@ -17399,14 +17469,14 @@ __metadata: languageName: node linkType: hard -"jest@npm:^29.6.3": - version: 29.7.0 - resolution: "jest@npm:29.7.0" +"jest@npm:29.6.3": + version: 29.6.3 + resolution: "jest@npm:29.6.3" dependencies: - "@jest/core": ^29.7.0 + "@jest/core": ^29.6.3 "@jest/types": ^29.6.3 import-local: ^3.0.2 - jest-cli: ^29.7.0 + jest-cli: ^29.6.3 peerDependencies: node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 peerDependenciesMeta: @@ -17414,7 +17484,7 @@ __metadata: optional: true bin: jest: bin/jest.js - checksum: 17ca8d67504a7dbb1998cf3c3077ec9031ba3eb512da8d71cb91bcabb2b8995c4e4b292b740cb9bf1cbff5ce3e110b3f7c777b0cefb6f41ab05445f248d0ee0b + checksum: dd4f53fb84f28b665b47c628222e5d3b624e9e0afa79b22afceef4f2a53dc0d8f0edd7ca254917ace5c94c3a7bf58c108563234c4fe34e86c679ce99633cfbe6 languageName: node linkType: hard @@ -18299,13 +18369,6 @@ __metadata: languageName: node linkType: hard -"lodash.sortby@npm:^4.7.0": - version: 4.7.0 - resolution: "lodash.sortby@npm:4.7.0" - checksum: db170c9396d29d11fe9a9f25668c4993e0c1331bcb941ddbd48fb76f492e732add7f2a47cfdf8e9d740fa59ac41bbfaf931d268bc72aab3ab49e9f89354d718c - languageName: node - linkType: hard - "lodash.throttle@npm:^4.1.1": version: 4.1.1 resolution: "lodash.throttle@npm:4.1.1" @@ -18403,14 +18466,14 @@ __metadata: languageName: node linkType: hard -"lottie-ios@npm:^4.4.1": +"lottie-ios@npm:4.4.1": version: 4.4.1 resolution: "lottie-ios@npm:4.4.1" checksum: a3a1b60693a55abb2cb1496a1bf2596d51905a05367535e666bdb2a64e58e1aab2965a2badd3155d849ce9d287fe71df4314c0babd187d01ed07213044147766 languageName: node linkType: hard -"lottie-react-native@npm:^6.7.0": +"lottie-react-native@npm:6.7.0": version: 6.7.0 resolution: "lottie-react-native@npm:6.7.0" peerDependencies: @@ -18544,33 +18607,33 @@ __metadata: languageName: node linkType: hard -"markdown-it@npm:^10.0.0": - version: 10.0.0 - resolution: "markdown-it@npm:10.0.0" +"markdown-it@npm:13.0.2": + version: 13.0.2 + resolution: "markdown-it@npm:13.0.2" dependencies: - argparse: ^1.0.7 - entities: ~2.0.0 - linkify-it: ^2.0.0 + argparse: ^2.0.1 + entities: ~3.0.1 + linkify-it: ^4.0.1 mdurl: ^1.0.1 uc.micro: ^1.0.5 bin: markdown-it: bin/markdown-it.js - checksum: 69f5ee640cbebb451b80d3cce308fff7230767e05c0f8c206a1e413775b7a6e5a08e91e9f3ec59f9b5c5a45493f9ce7ac089379cffb60c9d3e6677ed9d535086 + checksum: bb4bf2cb3e5d77a7f3dc9cf48e17d050fbcd26d37992204eaa5812220752858fe9debe439b2ae1de06e749a3bba537c0baf6ce7510307cf7163a70f04fafe672 languageName: node linkType: hard -"markdown-it@npm:^13.0.2": - version: 13.0.2 - resolution: "markdown-it@npm:13.0.2" +"markdown-it@npm:^10.0.0": + version: 10.0.0 + resolution: "markdown-it@npm:10.0.0" dependencies: - argparse: ^2.0.1 - entities: ~3.0.1 - linkify-it: ^4.0.1 + argparse: ^1.0.7 + entities: ~2.0.0 + linkify-it: ^2.0.0 mdurl: ^1.0.1 uc.micro: ^1.0.5 bin: markdown-it: bin/markdown-it.js - checksum: bb4bf2cb3e5d77a7f3dc9cf48e17d050fbcd26d37992204eaa5812220752858fe9debe439b2ae1de06e749a3bba537c0baf6ce7510307cf7163a70f04fafe672 + checksum: 69f5ee640cbebb451b80d3cce308fff7230767e05c0f8c206a1e413775b7a6e5a08e91e9f3ec59f9b5c5a45493f9ce7ac089379cffb60c9d3e6677ed9d535086 languageName: node linkType: hard @@ -18866,7 +18929,7 @@ __metadata: languageName: node linkType: hard -"metro-react-native-babel-transformer@npm:^0.77.0": +"metro-react-native-babel-transformer@npm:0.77.0": version: 0.77.0 resolution: "metro-react-native-babel-transformer@npm:0.77.0" dependencies: @@ -20347,7 +20410,7 @@ __metadata: languageName: node linkType: hard -"patch-package@npm:^8.0.0": +"patch-package@npm:8.0.0": version: 8.0.0 resolution: "patch-package@npm:8.0.0" dependencies: @@ -21111,7 +21174,7 @@ __metadata: languageName: node linkType: hard -"punycode@npm:1.4.1": +"punycode@npm:1.4.1, punycode@npm:^1.3.2": version: 1.4.1 resolution: "punycode@npm:1.4.1" checksum: fa6e698cb53db45e4628559e557ddaf554103d2a96a1d62892c8f4032cd3bc8871796cae9eabc1bc700e2b6677611521ce5bb1d9a27700086039965d0cf34518 @@ -21132,6 +21195,22 @@ __metadata: languageName: node linkType: hard +"pvtsutils@npm:^1.3.2, pvtsutils@npm:^1.3.5": + version: 1.3.6 + resolution: "pvtsutils@npm:1.3.6" + dependencies: + tslib: ^2.8.1 + checksum: 97b023b46d7b95bff004f8340efc465c1d995f35d7e97a2ef2e28d5e160f5ca47b48f42463b6be92b4341452a6b8c555feb2b1eb59ee90b97bd5d6fc86ffb186 + languageName: node + linkType: hard + +"pvutils@npm:^1.1.3": + version: 1.1.3 + resolution: "pvutils@npm:1.1.3" + checksum: 2ee26a9e5176c348977d6ec00d8ee80bff62f51743b1c5fe8abeeb4c5d29d9959cdfe0ce146707a9e6801bce88190fed3002d720b072dc87d031c692820b44c9 + languageName: node + linkType: hard + "q@npm:^1.1.2": version: 1.5.1 resolution: "q@npm:1.5.1" @@ -21345,7 +21424,7 @@ __metadata: languageName: node linkType: hard -"react-async-hook@npm:^4.0.0": +"react-async-hook@npm:4.0.0, react-async-hook@npm:^4.0.0": version: 4.0.0 resolution: "react-async-hook@npm:4.0.0" peerDependencies: @@ -21364,7 +21443,7 @@ __metadata: languageName: node linkType: hard -"react-error-boundary@npm:^4.0.13": +"react-error-boundary@npm:4.0.13": version: 4.0.13 resolution: "react-error-boundary@npm:4.0.13" dependencies: @@ -21423,7 +21502,7 @@ __metadata: languageName: node linkType: hard -"react-native-animated-numbers@npm:^0.6.2": +"react-native-animated-numbers@npm:0.6.2": version: 0.6.2 resolution: "react-native-animated-numbers@npm:0.6.2" peerDependencies: @@ -21450,7 +21529,7 @@ __metadata: languageName: node linkType: hard -"react-native-bootsplash@npm:^6.3.2": +"react-native-bootsplash@npm:6.3.2": version: 6.3.2 resolution: "react-native-bootsplash@npm:6.3.2" dependencies: @@ -21488,7 +21567,7 @@ __metadata: languageName: node linkType: hard -"react-native-cheerio@npm:^1.0.0-rc.4": +"react-native-cheerio@npm:1.0.0-rc.4": version: 1.0.0-rc.4 resolution: "react-native-cheerio@npm:1.0.0-rc.4" dependencies: @@ -21503,7 +21582,7 @@ __metadata: languageName: node linkType: hard -"react-native-clean-project@npm:^4.0.3": +"react-native-clean-project@npm:4.0.3": version: 4.0.3 resolution: "react-native-clean-project@npm:4.0.3" bin: @@ -21530,7 +21609,7 @@ __metadata: languageName: node linkType: hard -"react-native-compass-heading@npm:^1.5.0": +"react-native-compass-heading@npm:1.5.0": version: 1.5.0 resolution: "react-native-compass-heading@npm:1.5.0" peerDependencies: @@ -21540,7 +21619,7 @@ __metadata: languageName: node linkType: hard -"react-native-confetti-cannon@npm:^1.5.2": +"react-native-confetti-cannon@npm:1.5.2": version: 1.5.2 resolution: "react-native-confetti-cannon@npm:1.5.2" checksum: 09026fd93304c0f3c3acfcf8dfc9b25003b30826031dffd81df6eea3b66dcee84f6ac4237719a84d3d71cb430f4fbf53d4c22b64ef17d439d5a3e5986c2ada83 @@ -21621,7 +21700,7 @@ __metadata: languageName: node linkType: hard -"react-native-geocoding@npm:^0.5.0": +"react-native-geocoding@npm:0.5.0": version: 0.5.0 resolution: "react-native-geocoding@npm:0.5.0" checksum: a33e9dc87d104abe19206660e9fa0782090909ca8b58c70eae4690faa92194817724833086b29c57387500cdd9ecd0febd6ccbbd0f4eac0e11a93696429cf9d2 @@ -21752,7 +21831,7 @@ __metadata: languageName: node linkType: hard -"react-native-markdown-display@npm:^7.0.0-alpha.2": +"react-native-markdown-display@npm:7.0.0-alpha.2": version: 7.0.0-alpha.2 resolution: "react-native-markdown-display@npm:7.0.0-alpha.2" dependencies: @@ -21767,7 +21846,7 @@ __metadata: languageName: node linkType: hard -"react-native-navigation-bar-color@npm:^2.0.2": +"react-native-navigation-bar-color@npm:2.0.2": version: 2.0.2 resolution: "react-native-navigation-bar-color@npm:2.0.2" checksum: 47b74fc343c63b90819a67889b7af6e9b6524a663586dc8a7927d81e8517fbf8b395545d651ddf44e978167e4d8994a4b6d6e3dc086a35903c48087fa40155cd @@ -21792,7 +21871,7 @@ __metadata: languageName: node linkType: hard -"react-native-os@npm:^1.2.6": +"react-native-os@npm:1.2.6": version: 1.2.6 resolution: "react-native-os@npm:1.2.6" checksum: a0259a5b1d25dddf4b88eb501a55799403b71cef04d54f7750ea24f881fc0c31a49e809021e9ba1e9a9fa8cbcc8a2e097afcf2904045b21895ce995621d44d4f @@ -21818,9 +21897,9 @@ __metadata: languageName: node linkType: hard -"react-native-permissions@npm:^3.9.0": - version: 3.9.2 - resolution: "react-native-permissions@npm:3.9.2" +"react-native-permissions@npm:3.9.0": + version: 3.9.0 + resolution: "react-native-permissions@npm:3.9.0" peerDependencies: react: ">=16.13.1" react-native: ">=0.63.3" @@ -21828,11 +21907,11 @@ __metadata: peerDependenciesMeta: react-native-windows: optional: true - checksum: 047540958d415e62ea2359f8f5da392a345cec11d7bbe14b065459375b1185431bc98ac144595b9db27376ebb059811f79d9f3c80d61508aeecc3cb5e7c49996 + checksum: 4c08edb5fbddb8a927e32cf3cb7d3db255400978336e684ed44b1b263ba6fcdac508eebe27942e374e2c7418af3e4181ad59e4b7d7c159056ec5ba777214ef7a languageName: node linkType: hard -"react-native-qrcode-svg@npm:^6.3.2": +"react-native-qrcode-svg@npm:6.3.2": version: 6.3.2 resolution: "react-native-qrcode-svg@npm:6.3.2" dependencies: @@ -21923,7 +22002,7 @@ __metadata: languageName: node linkType: hard -"react-native-skeleton-placeholder@npm:^5.2.4": +"react-native-skeleton-placeholder@npm:5.2.4": version: 5.2.4 resolution: "react-native-skeleton-placeholder@npm:5.2.4" peerDependencies: @@ -21948,7 +22027,7 @@ __metadata: languageName: node linkType: hard -"react-native-sodium@npm:^0.4.0": +"react-native-sodium@npm:0.4.0, react-native-sodium@npm:^0.4.0": version: 0.4.0 resolution: "react-native-sodium@npm:0.4.0" checksum: fd8bcfcb48ef029ddf57b362e02699de9cefe7a260947c454083201a67fd1e40cb6516f7a5bbcbaf4fb57dad29872b35a4649cdea5fb898cf036b578268d5c7b @@ -22051,7 +22130,7 @@ __metadata: languageName: node linkType: hard -"react-native-url-polyfill@npm:^2.0.0": +"react-native-url-polyfill@npm:2.0.0": version: 2.0.0 resolution: "react-native-url-polyfill@npm:2.0.0" dependencies: @@ -22074,7 +22153,7 @@ __metadata: languageName: node linkType: hard -"react-native-vision-camera@npm:^4.5.3": +"react-native-vision-camera@npm:4.5.3": version: 4.5.3 resolution: "react-native-vision-camera@npm:4.5.3" peerDependencies: @@ -24571,7 +24650,7 @@ __metadata: languageName: node linkType: hard -"text-encoding-polyfill@npm:^0.6.7": +"text-encoding-polyfill@npm:0.6.7, text-encoding-polyfill@npm:^0.6.7": version: 0.6.7 resolution: "text-encoding-polyfill@npm:0.6.7" checksum: 8e5b45154f3394cd29af01760ec2f728caba7cfc57fbcab60c073dc9c6db479d923efda3e074ae467379c4a0710c45e6427c6917a70da3059876924c190e03ed @@ -24905,6 +24984,13 @@ __metadata: languageName: node linkType: hard +"tslib@npm:^2.0.0, tslib@npm:^2.3.1, tslib@npm:^2.5.0, tslib@npm:^2.6.2, tslib@npm:^2.6.3, tslib@npm:^2.7.0, tslib@npm:^2.8.1": + version: 2.8.1 + resolution: "tslib@npm:2.8.1" + checksum: e4aba30e632b8c8902b47587fd13345e2827fa639e7c3121074d5ee0880723282411a8838f830b55100cbe4517672f84a2472667d355b81e8af165a55dc6203a + languageName: node + linkType: hard + "tslib@npm:^2.0.1, tslib@npm:^2.0.3, tslib@npm:^2.1.0, tslib@npm:^2.4.0": version: 2.6.2 resolution: "tslib@npm:2.6.2" @@ -24919,13 +25005,6 @@ __metadata: languageName: node linkType: hard -"tslib@npm:^2.5.0, tslib@npm:^2.6.3": - version: 2.8.1 - resolution: "tslib@npm:2.8.1" - checksum: e4aba30e632b8c8902b47587fd13345e2827fa639e7c3121074d5ee0880723282411a8838f830b55100cbe4517672f84a2472667d355b81e8af165a55dc6203a - languageName: node - linkType: hard - "tslib@npm:~2.4.0": version: 2.4.1 resolution: "tslib@npm:2.4.1" @@ -24933,6 +25012,13 @@ __metadata: languageName: node linkType: hard +"tslib@npm:~2.5.0": + version: 2.5.3 + resolution: "tslib@npm:2.5.3" + checksum: 88902b309afaf83259131c1e13da1dceb0ad1682a213143a1346a649143924d78cf3760c448b84d796938fd76127183894f8d85cbb3bf9c4fddbfcc140c0003c + languageName: node + linkType: hard + "tslib@npm:~2.6.0": version: 2.6.3 resolution: "tslib@npm:2.6.3" @@ -25416,6 +25502,13 @@ __metadata: languageName: node linkType: hard +"urlpattern-polyfill@npm:^8.0.0": + version: 8.0.2 + resolution: "urlpattern-polyfill@npm:8.0.2" + checksum: d2cc0905a613c77e330c426e8697ee522dd9640eda79ac51160a0f6350e103f09b8c327623880989f8ba7325e8d95267b745aa280fdcc2aead80b023e16bd09d + languageName: node + linkType: hard + "use-debounce@npm:7.0.1": version: 7.0.1 resolution: "use-debounce@npm:7.0.1" @@ -25679,6 +25772,13 @@ __metadata: languageName: node linkType: hard +"web-streams-polyfill@npm:^3.2.1": + version: 3.3.3 + resolution: "web-streams-polyfill@npm:3.3.3" + checksum: 21ab5ea08a730a2ef8023736afe16713b4f2023ec1c7085c16c8e293ee17ed085dff63a0ad8722da30c99c4ccbd4ccd1b2e79c861829f7ef2963d7de7004c2cb + languageName: node + linkType: hard + "web3-utils@npm:^1.3.4": version: 1.10.4 resolution: "web3-utils@npm:1.10.4" @@ -25695,6 +25795,19 @@ __metadata: languageName: node linkType: hard +"webcrypto-core@npm:^1.8.0": + version: 1.8.1 + resolution: "webcrypto-core@npm:1.8.1" + dependencies: + "@peculiar/asn1-schema": ^2.3.13 + "@peculiar/json-schema": ^1.1.12 + asn1js: ^3.0.5 + pvtsutils: ^1.3.5 + tslib: ^2.7.0 + checksum: 5f8d862991bf9b36bfec53a317ceec7de95010c6d16092d2ba62b988acdfca9adfd254ef388036e610c66d0aad506d3f344574f62e06501a8c72ef961c8996b2 + languageName: node + linkType: hard + "webidl-conversions@npm:^3.0.0": version: 3.0.1 resolution: "webidl-conversions@npm:3.0.1"