Fix weird error reportings

This commit is contained in:
Zhiyuan Zheng 2022-06-09 23:25:01 +02:00
parent e33e8550f6
commit db46ccc3d8
8 changed files with 21 additions and 17 deletions

View File

@ -68,8 +68,8 @@ const apiGeneral = async <T = unknown>({
error.response.data.error
)
return Promise.reject({
status: error.response.status,
message: error.response.data.error
status: error?.response.status,
message: error?.response.data.error
})
} else if (error?.request) {
// The request was made but no response was received

View File

@ -110,8 +110,8 @@ const apiInstance = async <T = unknown>({
error.response.data.error
)
return Promise.reject({
status: error.response.status,
message: error.response.data.error
status: error?.response.status,
message: error?.response.data.error
})
} else if (error?.request) {
// The request was made but no response was received

View File

@ -66,7 +66,7 @@ const apiTooot = async <T = unknown>({
})
})
.catch(error => {
if (sentry && Math.random() < 0.1) {
if (sentry) {
Sentry.Native.setExtras({
API: 'tooot',
...(error?.response && { response: error.response }),
@ -85,8 +85,8 @@ const apiTooot = async <T = unknown>({
error.response.data.error
)
return Promise.reject({
status: error.response.status,
message: error.response.data.error
status: error?.response.status,
message: error?.response.data.error
})
} else if (error?.request) {
// The request was made but no response was received

View File

@ -49,7 +49,7 @@ const renderNode = ({
const href = node.attribs.href
if (classes) {
if (classes.includes('hashtag')) {
const tag = href.split(new RegExp(/\/tag\/(.*)|\/tags\/(.*)/))
const tag = href?.split(new RegExp(/\/tag\/(.*)|\/tags\/(.*)/))
const differentTag = routeParams?.hashtag
? routeParams.hashtag !== tag[1] && routeParams.hashtag !== tag[2]
: true
@ -107,7 +107,7 @@ const renderNode = ({
)
}
} else {
const domain = href.split(new RegExp(/:\/\/(.[^\/]+)/))
const domain = href?.split(new RegExp(/:\/\/(.[^\/]+)/))
// Need example here
const content =
node.children && node.children[0] && node.children[0].data
@ -124,11 +124,15 @@ const renderNode = ({
}}
onPress={async () => {
analytics('status_link_press')
!disableDetails && !shouldBeTag
? await openLink(href, navigation)
: navigation.push('Tab-Shared-Hashtag', {
if (!disableDetails) {
if (shouldBeTag) {
navigation.push('Tab-Shared-Hashtag', {
hashtag: content.substring(1)
})
} else {
await openLink(href, navigation)
}
}
}}
>
{(content && content !== href && content) ||

View File

@ -22,7 +22,7 @@ const TimelineActioned = React.memo(
const { colors } = useTheme()
const navigation =
useNavigation<StackNavigationProp<TabLocalStackParamList>>()
const name = account?.display_name || account.username
const name = account?.display_name || account?.username
const iconColor = colors.primaryDefault
const content = (content: string) => (

View File

@ -27,7 +27,7 @@ const HeaderSharedAccount = React.memo(
numberOfLines={1}
>
<ParseEmojis
content={account?.display_name || account.username}
content={account?.display_name || account?.username}
emojis={account.emojis}
fontBold
/>

View File

@ -49,7 +49,7 @@ const ActionsStatus: React.FC<Props> = ({
message: t('common:message.error.message', {
function: t(`shared.header.actions.status.${theFunction}.function`)
}),
...(err.status &&
...(err?.status &&
typeof err.status === 'number' &&
err.data &&
err.data.error &&

View File

@ -249,7 +249,7 @@ const instancesSlice = createSlice({
// Update Instance Configuration
.addCase(updateConfiguration.fulfilled, (state, action) => {
const activeIndex = findInstanceActive(state.instances)
state.instances[activeIndex].version = action.payload.version
state.instances[activeIndex].version = action.payload?.version || '0'
state.instances[activeIndex].configuration =
action.payload.configuration
})
@ -316,7 +316,7 @@ const instancesSlice = createSlice({
state.instances[activeIndex].frequentEmojis = state.instances[
activeIndex
].frequentEmojis?.filter(emoji => {
return action.payload.find(
return action.payload?.find(
e =>
e.shortcode === emoji.emoji.shortcode && e.url === emoji.emoji.url
)