@oscbacon/tungsten 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/README.md +11 -10
  2. package/package.json +1 -1
  3. package/src/app.tsx +13 -0
package/README.md CHANGED
@@ -55,16 +55,17 @@ their PRs, newest first, and each row names its repo next to the author.
55
55
 
56
56
  ## Keys
57
57
 
58
- | Key | Action |
59
- |----------|--------------------|
60
- | ↑↓ / j k | move |
61
- | t | collapse bucket |
62
- | enter | open PR in browser |
63
- | / | search |
64
- | c | check out PR |
65
- | w | open PR worktree |
66
- | r | refresh |
67
- | q | quit |
58
+ | Key | Action |
59
+ |-----------|------------------------|
60
+ | ↑↓ / j k | move |
61
+ | PgUp/PgDn | previous / next bucket |
62
+ | t | collapse bucket |
63
+ | enter | open PR in browser |
64
+ | / | search |
65
+ | c | check out PR |
66
+ | w | open PR worktree |
67
+ | r | refresh |
68
+ | q | quit |
68
69
 
69
70
  ## Search
70
71
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@oscbacon/tungsten",
3
3
  "type": "module",
4
- "version": "0.1.0",
4
+ "version": "0.2.0",
5
5
  "description": "A terminal inbox for a GitHub repo's pull requests",
6
6
  "keywords": [
7
7
  "github",
package/src/app.tsx CHANGED
@@ -144,6 +144,13 @@ export function App({ repos, load, actions }: { repos: Repo[]; load: (search?: s
144
144
  if (next) setCursorId(next.id)
145
145
  }
146
146
 
147
+ // PgUp/PgDn jump between bucket headers, from anywhere inside a bucket.
148
+ const jumpBucket = (delta: number) => {
149
+ if (!current) return
150
+ const target = Math.min(buckets.length - 1, Math.max(0, current.bucket + delta))
151
+ setCursorId(bucketId(target))
152
+ }
153
+
147
154
  const toggle = (bucket: number) => {
148
155
  const name = buckets[bucket]!.name
149
156
  setCollapsed(prev => {
@@ -186,6 +193,12 @@ export function App({ repos, load, actions }: { repos: Repo[]; load: (search?: s
186
193
  case "j":
187
194
  move(1)
188
195
  break
196
+ case "pageup":
197
+ jumpBucket(-1)
198
+ break
199
+ case "pagedown":
200
+ jumpBucket(1)
201
+ break
189
202
  case "t":
190
203
  if (current) toggle(current.bucket)
191
204
  break