mirror of
https://github.com/rowboatlabs/rowboat.git
synced 2026-07-12 21:02:17 +02:00
feat(apps): star-ranked catalog, star from Rowboat, delete local apps
- catalog is ranked by GitHub star count (per-repo lookup with a 10-min cache; unauthenticated works, the publish token is used when present) - star button on each catalog card stars/unstars the app's repo as the signed-in user (public_repo scope covers it), optimistic with revert and a sign-in hint when signed out - the info panel now offers Delete for local apps (apps:delete already existed and cleans up app-owned agents; only installed apps had a removal button before)
This commit is contained in:
parent
26e2fde0a8
commit
fd91f4ea22
5 changed files with 165 additions and 3 deletions
|
|
@ -1272,6 +1272,18 @@ const ipcSchemas = {
|
|||
req: z.object({ query: z.string() }),
|
||||
res: z.object({ records: z.array(RegistryRecordSchema) }),
|
||||
},
|
||||
// GitHub star counts (catalog ranking) + the signed-in user's starred set.
|
||||
'apps:catalogStars': {
|
||||
req: z.object({ repos: z.array(z.string()) }),
|
||||
res: z.object({
|
||||
stars: z.record(z.string(), z.number()),
|
||||
starred: z.record(z.string(), z.boolean()),
|
||||
}),
|
||||
},
|
||||
'apps:star': {
|
||||
req: z.object({ repo: z.string(), star: z.boolean() }),
|
||||
res: z.object({ starred: z.boolean() }),
|
||||
},
|
||||
'apps:catalogDetail': {
|
||||
req: z.object({ name: z.string() }),
|
||||
res: z.object({
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue