Bluesky app fork with some witchin' additions 💫 witchsky.app
bluesky fork client

fix a bunch of lint errors

lint errors make me and vs code sad : ( (and these shouldve stopped u from committing code from linting failing, im surprised these even made it in)

"Run autofix to sort these imports!" - the yummy massive red square on my vs code screen

this doesnt fix any lint warnings but thats cuz they mostly dont matter n a lot of them are from upstream #lol

+8 -12
+1 -1
src/components/PostControls/PostMenu/PostMenuItems.tsx
··· 16 16 AppBskyFeedPost, 17 17 type AppBskyFeedThreadgate, 18 18 AtUri, 19 - type RichText as RichTextAPI, 20 19 type BlobRef, 20 + type RichText as RichTextAPI, 21 21 } from '@atproto/api' 22 22 import {msg} from '@lingui/macro' 23 23 import {useLingui} from '@lingui/react'
+1 -1
src/lib/api/index.ts
··· 23 23 import * as Hasher from 'multiformats/hashes/hasher' 24 24 25 25 import {isNetworkError} from '#/lib/strings/errors' 26 - import {shortenLinks, stripInvalidMentions, parseMarkdownLinks} from '#/lib/strings/rich-text-manip' 26 + import {parseMarkdownLinks,shortenLinks, stripInvalidMentions} from '#/lib/strings/rich-text-manip' 27 27 import {logger} from '#/logger' 28 28 import {compressImage} from '#/state/gallery' 29 29 import {
+1 -1
src/state/gallery.ts
··· 1 - import {type BlobRef} from '@atproto/api' 2 1 import { 3 2 cacheDirectory, 4 3 deleteAsync, ··· 11 10 manipulateAsync, 12 11 SaveFormat, 13 12 } from 'expo-image-manipulator' 13 + import {type BlobRef} from '@atproto/api' 14 14 import {nanoid} from 'nanoid/non-secure' 15 15 16 16 import {POST_IMG_MAX} from '#/lib/constants'
+1 -3
src/view/com/composer/Composer.tsx
··· 117 117 import {TextInput} from '#/view/com/composer/text-input/TextInput' 118 118 import {ThreadgateBtn} from '#/view/com/composer/threadgate/ThreadgateBtn' 119 119 import {SubtitleDialogBtn} from '#/view/com/composer/videos/SubtitleDialog' 120 + import {VideoEmbedRedraft} from '#/view/com/composer/videos/VideoEmbedRedraft' 120 121 import {VideoPreview} from '#/view/com/composer/videos/VideoPreview' 121 122 import {VideoTranscodeProgress} from '#/view/com/composer/videos/VideoTranscodeProgress' 122 - import {VideoEmbedRedraft} from '#/view/com/composer/videos/VideoEmbedRedraft' 123 123 import {Text} from '#/view/com/util/text/Text' 124 124 import {UserAvatar} from '#/view/com/util/UserAvatar' 125 125 import {atoms as a, native, useTheme, web} from '#/alf' ··· 127 127 import {CircleInfo_Stroke2_Corner0_Rounded as CircleInfoIcon} from '#/components/icons/CircleInfo' 128 128 import {EmojiArc_Stroke2_Corner0_Rounded as EmojiSmileIcon} from '#/components/icons/Emoji' 129 129 import {PlusLarge_Stroke2_Corner0_Rounded as PlusIcon} from '#/components/icons/Plus' 130 - import {Play_Stroke2_Corner0_Rounded as PlayIcon} from '#/components/icons/Play' 131 130 import {TimesLarge_Stroke2_Corner0_Rounded as XIcon} from '#/components/icons/Times' 132 131 import {LazyQuoteEmbed} from '#/components/Post/Embed/LazyQuoteEmbed' 133 132 import * as Prompt from '#/components/Prompt' ··· 1174 1173 canRemoveQuote: boolean 1175 1174 isActivePost: boolean 1176 1175 }) { 1177 - const theme = useTheme() 1178 1176 const video = embed.media?.type === 'video' ? embed.media.video : null 1179 1177 return ( 1180 1178 <>
+1 -2
src/view/com/composer/state/composer.ts
··· 32 32 suggestLinkCardUri, 33 33 } from '#/view/com/composer/text-input/text-input-util' 34 34 import { 35 - createVideoState, 36 35 createRedraftVideoState, 37 - type RedraftState, 36 + createVideoState, 38 37 type VideoAction, 39 38 videoReducer, 40 39 type VideoState,
+1 -2
src/view/com/composer/videos/VideoEmbedRedraft.tsx
··· 1 - import React from 'react' 2 1 import {Platform, View} from 'react-native' 3 2 import {type BlobRef} from '@atproto/api' 4 3 import {BlueskyVideoView} from '@haileyok/bluesky-video' 5 4 6 5 import {atoms as a} from '#/alf' 7 - import {ExternalEmbedRemoveBtn} from '../ExternalEmbedRemoveBtn' 8 6 import {VideoEmbedInnerWeb} from '#/components/Post/Embed/VideoEmbed/VideoEmbedInner/VideoEmbedInnerWeb' 7 + import {ExternalEmbedRemoveBtn} from '../ExternalEmbedRemoveBtn' 9 8 10 9 interface Props { 11 10 blobRef: BlobRef
+2 -2
src/view/com/notifications/NotificationFeed.tsx
··· 7 7 } from 'react-native' 8 8 import {msg} from '@lingui/macro' 9 9 import {useLingui} from '@lingui/react' 10 - import {useTheme} from '#/alf' 11 10 12 11 import {useInitialNumToRender} from '#/lib/hooks/useInitialNumToRender' 13 12 import {cleanError} from '#/lib/strings/errors' ··· 20 19 import {List, type ListProps, type ListRef} from '#/view/com/util/List' 21 20 import {NotificationFeedLoadingPlaceholder} from '#/view/com/util/LoadingPlaceholder' 22 21 import {LoadMoreRetryBtn} from '#/view/com/util/LoadMoreRetryBtn' 22 + import {useTheme} from '#/alf' 23 23 import {Bell_Stroke2_Corner0_Rounded as BellIcon} from '#/components/icons/Bell' 24 24 import {NotificationFeedItem} from './NotificationFeedItem' 25 25 ··· 159 159 ) : ( 160 160 <View /> 161 161 ), 162 - [isFetchingNextPage], 162 + [isFetchingNextPage, t.palette.primary_500], 163 163 ) 164 164 165 165 return (