feat(plugins/settings.plugins): show repo description + add Copy URL option

This commit is contained in:
PalmDevs 2026-07-29 21:41:38 +07:00
parent 0c9cd9f8e3
commit 89ae4d910c
No known key found for this signature in database
GPG key ID: 6FAE8F8677ACA8BA

View file

@ -4,6 +4,7 @@ import { styles } from '@revenge-mod/components/_'
import Page from '@revenge-mod/components/Page'
import TableRowAssetIcon from '@revenge-mod/components/TableRowAssetIcon'
import { Design } from '@revenge-mod/discord/design'
import { Clipboard } from '@revenge-mod/externals/react-native-clipboard'
import { callNativeMethod } from '@revenge-mod/modules/native'
import { resyncPluginSources } from '@revenge-mod/plugins/_'
import {
@ -46,9 +47,10 @@ const DownIconComponent = lookupGeneratedIconComponent('ArrowSmallDownIcon')!
const TrashIconComponent = lookupGeneratedIconComponent('TrashIcon')!
function repoSubLabel(repo: Repo, state?: RepoStateEvent['state']) {
if (state === 'refreshing') return `${repo.url} (refreshing...)`
if (state === 'error') return `${repo.url} (refresh failed)`
return repo.url
const start = repo.description || repo.url
if (state === 'refreshing') return `${start} (refreshing...)`
if (state === 'error') return `${start} (refresh failed)`
return start
}
interface UserRepoRowProps {
@ -88,6 +90,13 @@ function UserRepoRow({
showErrorToast(messageOf(e))
}),
},
{
label: 'Copy URL',
IconComponent: lookupGeneratedIconComponent('CopyIcon')!,
action: () => {
Clipboard.setString(repo.url)
},
},
{
label: 'Delete',
IconComponent: TrashIconComponent,