Merge pull request #235 from tooot-app/main

Test v3.5.3
This commit is contained in:
xmflsct 2022-02-19 17:35:14 +01:00 committed by GitHub
commit 83c3a82f36
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
9 changed files with 1192 additions and 840 deletions

View File

@ -18,10 +18,10 @@ PODS:
- EXFirebaseCore - EXFirebaseCore
- ExpoModulesCore - ExpoModulesCore
- Firebase/Core (= 7.7.0) - Firebase/Core (= 7.7.0)
- EXFirebaseCore (4.1.1): - EXFirebaseCore (4.1.0):
- ExpoModulesCore - ExpoModulesCore
- Firebase/Core (= 7.7.0) - Firebase/Core (= 7.7.0)
- EXImageLoader (3.1.1): - EXImageLoader (3.1.0):
- ExpoModulesCore - ExpoModulesCore
- React-Core - React-Core
- EXImageManipulator (10.2.1): - EXImageManipulator (10.2.1):
@ -29,8 +29,8 @@ PODS:
- ExpoModulesCore - ExpoModulesCore
- EXImagePicker (12.0.2): - EXImagePicker (12.0.2):
- ExpoModulesCore - ExpoModulesCore
- EXJSONUtils (0.2.1) - EXJSONUtils (0.2.0)
- EXManifests (0.2.4): - EXManifests (0.2.2):
- EXJSONUtils - EXJSONUtils
- EXNotifications (0.14.1): - EXNotifications (0.14.1):
- ExpoModulesCore - ExpoModulesCore
@ -54,14 +54,14 @@ PODS:
- React-Core - React-Core
- EXStoreReview (5.1.1): - EXStoreReview (5.1.1):
- ExpoModulesCore - ExpoModulesCore
- EXStructuredHeaders (2.1.1) - EXStructuredHeaders (2.1.0)
- EXUpdates (0.11.3): - EXUpdates (0.11.3):
- EXManifests - EXManifests
- ExpoModulesCore - ExpoModulesCore
- EXStructuredHeaders - EXStructuredHeaders
- EXUpdatesInterface - EXUpdatesInterface
- React-Core - React-Core
- EXUpdatesInterface (0.5.1) - EXUpdatesInterface (0.5.0)
- EXVideoThumbnails (6.2.0): - EXVideoThumbnails (6.2.0):
- ExpoModulesCore - ExpoModulesCore
- EXWebBrowser (10.1.1): - EXWebBrowser (10.1.1):
@ -497,7 +497,7 @@ PODS:
- Sentry (7.9.0): - Sentry (7.9.0):
- Sentry/Core (= 7.9.0) - Sentry/Core (= 7.9.0)
- Sentry/Core (7.9.0) - Sentry/Core (7.9.0)
- UMTaskManagerInterface (7.1.1): - UMTaskManagerInterface (7.1.0):
- ExpoModulesCore - ExpoModulesCore
- Yoga (1.14.0) - Yoga (1.14.0)
@ -761,12 +761,12 @@ SPEC CHECKSUMS:
EXErrorRecovery: b0d7582714a2cc896e94a2308a356f94dbf14ef7 EXErrorRecovery: b0d7582714a2cc896e94a2308a356f94dbf14ef7
EXFileSystem: 7bcd3c1428698150d5c8ca140c8183f2ee204048 EXFileSystem: 7bcd3c1428698150d5c8ca140c8183f2ee204048
EXFirebaseAnalytics: a7ec2dd1394ad0de5c0c63fac0deee496f798284 EXFirebaseAnalytics: a7ec2dd1394ad0de5c0c63fac0deee496f798284
EXFirebaseCore: 52151d0b008b99983e6a120cea94466ee760a4e9 EXFirebaseCore: 16f39b0ea94ce985a8f2e16cc796bf79bdcfa297
EXImageLoader: 347b72c2ec2df65120ccec40ea65a4c4f24317ff EXImageLoader: df83442d32bcfb57b7cfc5690096b6caf8203f8d
EXImageManipulator: 60d1bf3f1d7709453b1feb38adf8594b7f58710f EXImageManipulator: 60d1bf3f1d7709453b1feb38adf8594b7f58710f
EXImagePicker: bf4d62532cc2bf217edbe4abbb0014e73e079eac EXImagePicker: bf4d62532cc2bf217edbe4abbb0014e73e079eac
EXJSONUtils: 5ee0d5cf76da70ad86f0be1a41cc70f47d69e06f EXJSONUtils: f515cf71710855d7ba5bfc6752af3b9a6f6aad01
EXManifests: d3464cd2278f4a19cd80c1aa673231570b534c11 EXManifests: 50e42e01335df4e54109dee7be5a91bfd37347db
EXNotifications: a7d582fa800d77f4a75bd22d52e84e2fbcee26df EXNotifications: a7d582fa800d77f4a75bd22d52e84e2fbcee26df
Expo: 534e51e607aba8229293297da5585f4b26f50fa1 Expo: 534e51e607aba8229293297da5585f4b26f50fa1
ExpoHaptics: 0d0b69b2414755a4057ffad0a10315902c0ea1b7 ExpoHaptics: 0d0b69b2414755a4057ffad0a10315902c0ea1b7
@ -777,9 +777,9 @@ SPEC CHECKSUMS:
EXSecureStore: b80c74c5ee29d0160c2aace3fd9a24a5edc20015 EXSecureStore: b80c74c5ee29d0160c2aace3fd9a24a5edc20015
EXSplashScreen: 21669e598804ee810547dbb6692c8deb5dd8dbf3 EXSplashScreen: 21669e598804ee810547dbb6692c8deb5dd8dbf3
EXStoreReview: 5a24fd222d193878a7d4f6059dd19f51c808af66 EXStoreReview: 5a24fd222d193878a7d4f6059dd19f51c808af66
EXStructuredHeaders: 4993087b2010dbcc510f5d92555b36f523425e8d EXStructuredHeaders: 2ce79a3770bd3795bade1aab215ada70deae8bbc
EXUpdates: 98b9e647ce7a0e9d5ab67135bf42188c750a99eb EXUpdates: 98b9e647ce7a0e9d5ab67135bf42188c750a99eb
EXUpdatesInterface: a9814f422d3cd6e7cfd260d13c27786148ece20e EXUpdatesInterface: f459b515151bd73fff7a35366eace34a6c6a0d3f
EXVideoThumbnails: 847d648d6f4bc0c1afad05caa56a487dc543445e EXVideoThumbnails: 847d648d6f4bc0c1afad05caa56a487dc543445e
EXWebBrowser: f1573262c5de753987ed526c630076eda130804d EXWebBrowser: f1573262c5de753987ed526c630076eda130804d
FBLazyVector: e5569e42a1c79ca00521846c223173a57aca1fe1 FBLazyVector: e5569e42a1c79ca00521846c223173a57aca1fe1
@ -841,7 +841,7 @@ SPEC CHECKSUMS:
SDWebImage: 53179a2dba77246efa8a9b85f5c5b21f8f43e38f SDWebImage: 53179a2dba77246efa8a9b85f5c5b21f8f43e38f
SDWebImageWebPCoder: f93010f3f6c031e2f8fb3081ca4ee6966c539815 SDWebImageWebPCoder: f93010f3f6c031e2f8fb3081ca4ee6966c539815
Sentry: 2f7e91f247cfb05b05bd01e0b5d0692557a7687b Sentry: 2f7e91f247cfb05b05bd01e0b5d0692557a7687b
UMTaskManagerInterface: 3184c93ecc290bd422c6e344badc89b601e9c29b UMTaskManagerInterface: 6f7150f9ec9bc6f2760eeae532a70de71ff951c1
Yoga: e7dc4e71caba6472ff48ad7d234389b91dadc280 Yoga: e7dc4e71caba6472ff48ad7d234389b91dadc280
PODFILE CHECKSUM: 9bf9d386bac4ff98f76fc93f120c9922660384b5 PODFILE CHECKSUM: 9bf9d386bac4ff98f76fc93f120c9922660384b5

View File

@ -4,7 +4,7 @@
"native": "220214", "native": "220214",
"major": 3, "major": 3,
"minor": 5, "minor": 5,
"patch": 1, "patch": 3,
"expo": "44.0.0" "expo": "44.0.0"
}, },
"description": "tooot app for Mastodon", "description": "tooot app for Mastodon",

View File

@ -37,7 +37,7 @@ const TimelineAvatar = React.memo(
}) })
})} })}
onPress={onPress} onPress={onPress}
uri={{ original: account.avatar, static: account.avatar_static }} uri={{ original: account?.avatar, static: account?.avatar_static }}
dimension={{ dimension={{
width: StyleConstants.Avatar.M, width: StyleConstants.Avatar.M,
height: StyleConstants.Avatar.M height: StyleConstants.Avatar.M

View File

@ -1 +1,3 @@
{} {
"frequentUsed": "Sử dụng gần đây"
}

View File

@ -249,7 +249,7 @@
} }
}, },
"feedback": { "feedback": {
"heading": "Yêu cầu tính năng" "heading": "Đề xuất tính năng"
}, },
"support": { "support": {
"heading": "Ủng hộ tooot" "heading": "Ủng hộ tooot"
@ -290,7 +290,7 @@
} }
}, },
"attachments": { "attachments": {
"name": "Bộ sưu tập của <1></1>" "name": "<0 /><1>'s media</1>"
}, },
"search": { "search": {
"header": { "header": {

View File

@ -11,7 +11,6 @@ import accountInitialState from '@screens/Tabs/Shared/Account/utils/initialState
import accountReducer from '@screens/Tabs/Shared/Account/utils/reducer' import accountReducer from '@screens/Tabs/Shared/Account/utils/reducer'
import { useProfileQuery } from '@utils/queryHooks/profile' import { useProfileQuery } from '@utils/queryHooks/profile'
import { getInstanceActive } from '@utils/slices/instancesSlice' import { getInstanceActive } from '@utils/slices/instancesSlice'
import { StyleConstants } from '@utils/styles/constants'
import React, { useReducer, useRef } from 'react' import React, { useReducer, useRef } from 'react'
import Animated, { import Animated, {
useAnimatedScrollHandler, useAnimatedScrollHandler,
@ -50,7 +49,6 @@ const TabMeRoot: React.FC = () => {
keyboardShouldPersistTaps='handled' keyboardShouldPersistTaps='handled'
onScroll={onScroll} onScroll={onScroll}
scrollEventThrottle={16} scrollEventThrottle={16}
style={{ marginBottom: StyleConstants.Spacing.L }}
> >
{instanceActive !== -1 ? ( {instanceActive !== -1 ? (
<MyInfo account={data} /> <MyInfo account={data} />

View File

@ -21,7 +21,8 @@ const Logout: React.FC = () => {
content={t('me.root.logout.button')} content={t('me.root.logout.button')}
style={{ style={{
marginHorizontal: StyleConstants.Spacing.Global.PagePadding * 2, marginHorizontal: StyleConstants.Spacing.Global.PagePadding * 2,
marginTop: StyleConstants.Spacing.Global.PagePadding marginTop: StyleConstants.Spacing.Global.PagePadding,
marginBottom: StyleConstants.Spacing.Global.PagePadding * 2
}} }}
destructive destructive
onPress={() => onPress={() =>

View File

@ -6,7 +6,6 @@ import { QueryKeyTimeline } from '@utils/queryHooks/timeline'
import React, { useCallback, useEffect, useRef, useState } from 'react' import React, { useCallback, useEffect, useRef, useState } from 'react'
import { FlatList } from 'react-native' import { FlatList } from 'react-native'
import { InfiniteQueryObserver, useQueryClient } from 'react-query' import { InfiniteQueryObserver, useQueryClient } from 'react-query'
import * as Sentry from 'sentry-expo'
const TabSharedToot: React.FC<TabSharedStackScreenProps<'Tab-Shared-Toot'>> = ({ const TabSharedToot: React.FC<TabSharedStackScreenProps<'Tab-Shared-Toot'>> = ({
route: { route: {
@ -44,26 +43,16 @@ const TabSharedToot: React.FC<TabSharedStackScreenProps<'Tab-Shared-Toot'>> = ({
if (!scrolled.current) { if (!scrolled.current) {
scrolled.current = true scrolled.current = true
const pointer = flattenData.findIndex(({ id }) => id === toot.id) const pointer = flattenData.findIndex(({ id }) => id === toot.id)
if (pointer === -1) return if (pointer < 1) return
Sentry.Native.setContext('Scroll to Index', {
type: 'original',
index: pointer,
itemsLength: flattenData.length,
id: toot.id,
flattenData: flattenData.map(({ id }) => id)
})
try { try {
setTimeout(() => { setTimeout(() => {
console.log('scrolling')
flRef.current?.scrollToIndex({ flRef.current?.scrollToIndex({
index: pointer, index: pointer,
viewOffset: 100 viewOffset: 100
}) })
}, 500) }, 500)
} catch (err) { } catch {}
if (Math.random() < 0.05) {
Sentry.Native.captureException(err)
}
}
} }
} }
}) })
@ -74,12 +63,6 @@ const TabSharedToot: React.FC<TabSharedStackScreenProps<'Tab-Shared-Toot'>> = ({
error => { error => {
const offset = error.averageItemLength * error.index const offset = error.averageItemLength * error.index
flRef.current?.scrollToOffset({ offset }) flRef.current?.scrollToOffset({ offset })
Sentry.Native.setContext('Scroll to Index', {
type: 'onScrollToIndexFailed',
index: error.index,
itemsLength,
id: toot.id
})
try { try {
error.index < itemsLength && error.index < itemsLength &&
setTimeout( setTimeout(
@ -90,11 +73,7 @@ const TabSharedToot: React.FC<TabSharedStackScreenProps<'Tab-Shared-Toot'>> = ({
}), }),
500 500
) )
} catch (err) { } catch {}
if (Math.random() < 0.05) {
Sentry.Native.captureException(err)
}
}
}, },
[itemsLength] [itemsLength]
) )

1958
yarn.lock

File diff suppressed because it is too large Load Diff