@hcrosse/opencode-pr-tracker 0.4.4 → 0.5.1
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.
- package/README.md +1 -1
- package/dist/server.js +2 -2
- package/dist/server.js.map +2 -2
- package/dist/tui.js +57 -8
- package/dist/tui.js.map +4 -4
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -35,7 +35,7 @@ In a session, run `/pr-attach` followed by a pull request URL, with or without `
|
|
|
35
35
|
/pr-attach 123
|
|
36
36
|
```
|
|
37
37
|
|
|
38
|
-
Without an argument, `/pr-attach` asks for one. Attaching any member of a GitHub Stack attaches the whole Stack, bottom first. If GitHub returns only part of the Stack, nothing is attached. A session can track up to
|
|
38
|
+
Without an argument, `/pr-attach` asks for one. Attaching any member of a GitHub Stack attaches the whole Stack, bottom first. If GitHub returns only part of the Stack, nothing is attached. A session can track up to 40 pull requests.
|
|
39
39
|
|
|
40
40
|
| Command | What it does |
|
|
41
41
|
| ------------ | --------------------------------------------------------------- |
|
package/dist/server.js
CHANGED
|
@@ -591,7 +591,7 @@ import { Array as Arr5, Effect as Effect5, Layer as Layer4, Option as Option8, R
|
|
|
591
591
|
|
|
592
592
|
// src/domain/Tracking.ts
|
|
593
593
|
import { Array as Arr4, Option as Option7, Result as Result5, Schema as Schema8 } from "effect";
|
|
594
|
-
var maximumAttachments =
|
|
594
|
+
var maximumAttachments = 40;
|
|
595
595
|
|
|
596
596
|
class Attachment extends Schema8.Class("Attachment")({
|
|
597
597
|
attachedAt: Schema8.Int,
|
|
@@ -1409,4 +1409,4 @@ export {
|
|
|
1409
1409
|
server_default as default
|
|
1410
1410
|
};
|
|
1411
1411
|
|
|
1412
|
-
//# debugId=
|
|
1412
|
+
//# debugId=7BCFB634853590CB64756E2164756E21
|
package/dist/server.js.map
CHANGED
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
"import { Array as Arr, Option, Order } from \"effect\"\n\nimport type { Ci } from \"./Snapshot.ts\"\n\nexport type CheckOutcome = \"passed\" | \"pending\" | \"failed\" | \"ignored\"\n\n/**\n * One check run or status context. Checks with the same `identity` are runs of one check;\n * only those with the greatest `generation` count. A generation is compared element by element,\n * for example `[runNumber, runAttempt]` or `[createdAtSeconds, createdAtNanoseconds]`.\n */\nexport interface Check {\n readonly identity: string\n readonly generation: readonly number[]\n readonly outcome: CheckOutcome\n}\n\nconst generationOrder = Arr.makeOrder(Order.Number)\n\ninterface Latest {\n readonly generation: readonly number[]\n readonly outcomes: readonly CheckOutcome[]\n}\n\n/** The newest runs of one check after seeing `check`: a newer run replaces them, a tie joins them. */\nfunction withRun(current: Option.Option<Latest>, check: Check): Latest {\n const replacement: Latest = { generation: check.generation, outcomes: [check.outcome] }\n\n return Option.match(current, {\n onNone: () => replacement,\n onSome: (existing: Latest): Latest => {\n const comparison = generationOrder(check.generation, existing.generation)\n\n if (comparison > 0) return replacement\n\n if (comparison < 0) return existing\n\n return { generation: existing.generation, outcomes: [...existing.outcomes, check.outcome] }\n },\n })\n}\n\nfunction latestOutcomes(checks: readonly Check[]): Set<CheckOutcome> {\n const latest = new Map<string, Latest>()\n\n for (const check of checks) {\n latest.set(check.identity, withRun(Option.fromNullishOr(latest.get(check.identity)), check))\n }\n\n return new Set([...latest.values()].flatMap((entry: Latest) => entry.outcomes))\n}\n\n/** Failed beats pending beats passed. Superseded runs are ignored; so are skipped or neutral runs. */\nexport function classifyCi(checks: readonly Check[]): Ci {\n const outcomes = latestOutcomes(checks)\n\n if (outcomes.has(\"failed\")) return \"failed\"\n\n if (outcomes.has(\"pending\")) return \"pending\"\n\n if (outcomes.has(\"passed\")) return \"passed\"\n\n return \"none\"\n}\n",
|
|
15
15
|
"import { Config, Context, Effect, Layer, Option, Redacted, Ref } from \"effect\"\n\nimport { GitHubFailure } from \"../../ports/GitHub.ts\"\nimport { CommandRunner } from \"../Command.ts\"\n\nexport interface TokenApi {\n /** The GitHub token, from `GH_TOKEN`, `GITHUB_TOKEN`, or `gh auth token`, cached after first use. */\n readonly get: Effect.Effect<Redacted.Redacted, GitHubFailure>\n /** Forgets the cached token, so the next `get` reads it again. */\n readonly invalidate: Effect.Effect<void>\n}\n\nexport class Token extends Context.Service<Token, TokenApi>()(\"opencode-pr-tracker/Token\") {}\n\n/** `GH_TOKEN`, then `GITHUB_TOKEN`, as `gh` itself reads them. Empty values count as unset. */\nconst variable = (name: string): Config.Config<Option.Option<Redacted.Redacted>> =>\n Config.option(Config.redacted(name)).pipe(\n Config.map(Option.filter((token) => Redacted.value(token).trim() !== \"\")),\n )\n\nconst environmentToken = Config.all([variable(\"GH_TOKEN\"), variable(\"GITHUB_TOKEN\")]).pipe(\n Config.map(\n ([ghToken, githubToken]: readonly [\n Option.Option<Redacted.Redacted>,\n Option.Option<Redacted.Redacted>,\n ]) => Option.orElse(ghToken, () => githubToken),\n ),\n)\n\nexport const layer = Layer.effect(\n Token,\n Effect.gen(function* () {\n const runner = yield* CommandRunner\n const cached = yield* Ref.make(Option.none<Redacted.Redacted>())\n\n const fromGh = runner.run(\"gh\", [\"auth\", \"token\"], process.cwd()).pipe(\n Effect.map((output) => output.trim()),\n Effect.filterOrFail(\n (token) => token !== \"\",\n () => new GitHubFailure({ diagnostic: \"AuthenticationRequired\" }),\n ),\n Effect.catchTags({\n CommandFailed: () =>\n Effect.fail(new GitHubFailure({ diagnostic: \"AuthenticationRequired\" })),\n CommandMissing: () => Effect.fail(new GitHubFailure({ diagnostic: \"GitHubCliMissing\" })),\n }),\n )\n\n // Read once: the environment does not change while the plugin runs.\n const fromEnvironment = yield* environmentToken.pipe(\n Effect.orElseSucceed(() => Option.none<Redacted.Redacted>()),\n )\n\n const load = Option.match(fromEnvironment, {\n onNone: () => Effect.map(fromGh, Redacted.make),\n onSome: Effect.succeed,\n }).pipe(Effect.tap((token) => Ref.set(cached, Option.some(token))))\n\n return Token.of({\n get: Ref.get(cached).pipe(\n Effect.flatMap(Option.match({ onNone: () => load, onSome: Effect.succeed })),\n ),\n invalidate: Ref.set(cached, Option.none()),\n })\n }),\n)\n",
|
|
16
16
|
"import type { StorageDomain } from \"@opencode/plugin/effect/storage\"\nimport { Array as Arr, Effect, Layer, Option, Result, Schema } from \"effect\"\n\nimport { parsePullRequestUrl } from \"../domain/PullRequest.ts\"\nimport { Attachment, maximumAttachments, type Tracking } from \"../domain/Tracking.ts\"\nimport { StoredStateInvalid, TrackingRepository } from \"../ports/TrackingRepository.ts\"\n\n/** The stored form of a session's attachments. Bump `version` for incompatible changes. */\nconst Stored = Schema.Struct({\n pullRequests: Schema.Array(Schema.Struct({ attachedAt: Schema.Int, url: Schema.String })).check(\n Schema.isMaxLength(maximumAttachments),\n ),\n version: Schema.Literal(1),\n})\n\ntype Stored = typeof Stored.Type\n\nconst keyOf = (sessionID: string): string => `session/${sessionID}`\n\nfunction toTracking(stored: Stored): Option.Option<Tracking> {\n const attachments = stored.pullRequests.map((entry) =>\n Result.map(\n parsePullRequestUrl(entry.url),\n (ref) => new Attachment({ attachedAt: entry.attachedAt, ref }),\n ),\n )\n\n const valid = attachments.flatMap((attachment) => Option.toArray(Result.getSuccess(attachment)))\n const unique = Arr.dedupeWith(valid, (left, right) => left.ref.url === right.ref.url)\n\n return unique.length === stored.pullRequests.length ? Option.some(unique) : Option.none()\n}\n\nfunction toStored(tracking: Tracking): Stored {\n return {\n pullRequests: tracking.map((attachment) => ({\n attachedAt: attachment.attachedAt,\n url: attachment.ref.url,\n })),\n version: 1,\n }\n}\n\n/** Attachments kept in plugin storage, one key per session. */\nexport function layer(storage: StorageDomain): Layer.Layer<TrackingRepository> {\n return Layer.succeed(\n TrackingRepository,\n TrackingRepository.of({\n load: (sessionID) =>\n storage.get(keyOf(sessionID)).pipe(\n Effect.flatMap((value) =>\n Option.match(Option.fromNullishOr(value), {\n onNone: () => Effect.succeed<Tracking>([]),\n onSome: (json) =>\n Schema.decodeUnknownOption(Stored)(json).pipe(\n Option.flatMap(toTracking),\n Option.match({\n onNone: () => Effect.fail(new StoredStateInvalid({ sessionID })),\n onSome: (tracking) => Effect.succeed(tracking),\n }),\n ),\n }),\n ),\n ),\n remove: (sessionID) => storage.remove(keyOf(sessionID)),\n save: (sessionID, tracking) => storage.set(keyOf(sessionID), toStored(tracking)),\n }),\n )\n}\n",
|
|
17
|
-
"import { Array as Arr, Option, Result, Schema } from \"effect\"\n\nimport { PullRequestRef, samePullRequest } from \"./PullRequest.ts\"\n\nexport const maximumAttachments =
|
|
17
|
+
"import { Array as Arr, Option, Result, Schema } from \"effect\"\n\nimport { PullRequestRef, samePullRequest } from \"./PullRequest.ts\"\n\nexport const maximumAttachments = 40\n\nexport class Attachment extends Schema.Class<Attachment>(\"Attachment\")({\n attachedAt: Schema.Int,\n ref: PullRequestRef,\n}) {}\n\n/** The pull requests attached to one session, in display order. */\nexport type Tracking = readonly Attachment[]\n\nexport class AttachmentLimitReached extends Schema.TaggedError<AttachmentLimitReached>()(\n \"AttachmentLimitReached\",\n { limit: Schema.Int, requested: Schema.Int },\n) {}\n\nexport class AmbiguousPullRequestNumber extends Schema.TaggedError<AmbiguousPullRequestNumber>()(\n \"AmbiguousPullRequestNumber\",\n { matches: Schema.Array(PullRequestRef), number: Schema.Int },\n) {}\n\nexport interface Change {\n readonly tracking: Tracking\n readonly changed: boolean\n}\n\nexport interface Removal {\n readonly tracking: Tracking\n readonly removed: Option.Option<PullRequestRef>\n}\n\nfunction isMember(stack: readonly PullRequestRef[], attachment: Attachment): boolean {\n return stack.some((ref) => samePullRequest(ref, attachment.ref))\n}\n\n// Attachments are reused as they are, so any change shows as a different element.\nconst differs = (before: Tracking, after: Tracking): boolean =>\n after.length !== before.length || after.some((attachment, index) => attachment !== before[index])\n\nfunction groupOne(tracking: Tracking, stack: readonly PullRequestRef[]): Tracking {\n const members = Arr.dedupeWith(stack, samePullRequest)\n // Every attachment before the earliest member is not a member, so this is also its place among the others.\n const insertAt = tracking.findIndex((attachment) => isMember(members, attachment))\n\n if (insertAt === -1) return tracking\n\n const others = tracking.filter((attachment) => !isMember(members, attachment))\n\n const placed = members.flatMap((ref) =>\n Option.toArray(Arr.findFirst(tracking, (attachment) => samePullRequest(attachment.ref, ref))),\n )\n\n return [...others.slice(0, insertAt), ...placed, ...others.slice(insertAt)]\n}\n\n/**\n * Brings each stack's attached members together, bottom to top, where the earliest of them is\n * attached. Other attachments keep their order. Nothing is attached or detached. A stack sharing a\n * member with an earlier one is skipped, since both cannot hold together; this keeps grouping\n * idempotent.\n */\nexport function group(tracking: Tracking, stacks: readonly (readonly PullRequestRef[])[]): Change {\n const grouped = new Set<string>()\n let next = tracking\n\n for (const stack of stacks) {\n if (stack.some((ref) => grouped.has(ref.url))) continue\n\n for (const ref of stack) grouped.add(ref.url)\n\n next = groupOne(next, stack)\n }\n\n return { changed: differs(tracking, next), tracking: next }\n}\n\n/**\n * Attaches every member of a stack, bottom to top. A single pull request is a stack of one.\n * Members are placed together where the earliest of them was already attached, or at the end.\n */\nexport function attach(\n tracking: Tracking,\n stack: Arr.NonEmptyReadonlyArray<PullRequestRef>,\n now: number,\n): Result.Result<Change, AttachmentLimitReached> {\n const members = Arr.dedupeWith(stack, samePullRequest)\n\n const missing = members.filter(\n (ref) => !tracking.some((attachment) => samePullRequest(attachment.ref, ref)),\n )\n\n const requested = tracking.length + missing.length\n\n if (requested > maximumAttachments) {\n return Result.fail(new AttachmentLimitReached({ limit: maximumAttachments, requested }))\n }\n\n const appended = [...tracking, ...missing.map((ref) => new Attachment({ attachedAt: now, ref }))]\n const next = group(appended, [members]).tracking\n\n return Result.succeed({ changed: differs(tracking, next), tracking: next })\n}\n\nexport function detach(tracking: Tracking, ref: PullRequestRef): Removal {\n const next = tracking.filter((attachment) => !samePullRequest(attachment.ref, ref))\n const removed = next.length === tracking.length ? Option.none() : Option.some(ref)\n\n return { removed, tracking: next }\n}\n\n/** Detaches the only attachment with `number`. Several matches are ambiguous. */\nexport function detachNumber(\n tracking: Tracking,\n number: number,\n): Result.Result<Removal, AmbiguousPullRequestNumber> {\n const matches = tracking.filter((attachment) => attachment.ref.number === number)\n\n if (matches.length > 1) {\n const refs = matches.map((attachment) => attachment.ref)\n\n return Result.fail(new AmbiguousPullRequestNumber({ matches: refs, number }))\n }\n\n return Result.succeed(\n Option.match(Arr.head(matches), {\n onNone: () => ({ removed: Option.none(), tracking }),\n onSome: (attachment) => detach(tracking, attachment.ref),\n }),\n )\n}\n",
|
|
18
18
|
"import { Context, Schema, type Effect } from \"effect\"\n\nimport type { Tracking } from \"../domain/Tracking.ts\"\n\n/** A session's stored attachments could not be read. They are kept as they are, not discarded. */\nexport class StoredStateInvalid extends Schema.TaggedError<StoredStateInvalid>()(\n \"StoredStateInvalid\",\n {\n sessionID: Schema.String,\n },\n) {}\n\nexport interface TrackingRepositoryApi {\n /** The session's attachments; empty when nothing is stored. */\n readonly load: (sessionID: string) => Effect.Effect<Tracking, StoredStateInvalid>\n readonly save: (sessionID: string, tracking: Tracking) => Effect.Effect<void>\n readonly remove: (sessionID: string) => Effect.Effect<void>\n}\n\nexport class TrackingRepository extends Context.Service<\n TrackingRepository,\n TrackingRepositoryApi\n>()(\"opencode-pr-tracker/TrackingRepository\") {}\n",
|
|
19
19
|
"import { Context, Effect, Layer, Option, PubSub, Ref, Result, Stream } from \"effect\"\n\nimport type { PullRequestRef } from \"../domain/PullRequest.ts\"\nimport type { Status } from \"../domain/Snapshot.ts\"\nimport { agreedStacks, type Membership } from \"../domain/StackLayout.ts\"\nimport { group, type Attachment, type Tracking } from \"../domain/Tracking.ts\"\nimport { GitHub, type GitHubApi, type ItemResult, type Report } from \"../ports/GitHub.ts\"\nimport type { StoredStateInvalid } from \"../ports/TrackingRepository.ts\"\nimport { FetchQueue } from \"./FetchQueue.ts\"\nimport { isDue, recorded, unknown, withoutUnattached, type Known } from \"./Known.ts\"\nimport { currentMillis } from \"./Time.ts\"\nimport { Tracker, type TrackerApi } from \"./Tracker.ts\"\n\nexport interface Entry {\n readonly ref: PullRequestRef\n readonly attachedAt: number\n readonly status: Status\n readonly membership: Option.Option<Membership>\n}\n\nexport interface SessionView {\n readonly sessionID: string\n readonly entries: readonly Entry[]\n}\n\nexport interface MonitorApi {\n /** The session's pull requests with their latest known status. Marks the session as in use. */\n readonly view: (sessionID: string) => Effect.Effect<SessionView, StoredStateInvalid>\n /** Refreshes the session's pull requests now, except merged ones, and returns the result. */\n readonly refresh: (sessionID: string) => Effect.Effect<SessionView, StoredStateInvalid>\n /**\n * Shows a session after `ref` was attached: records what GitHub reported for `ref` so it is not\n * fetched again, then continues as `show`.\n */\n readonly attached: (\n sessionID: string,\n ref: PullRequestRef,\n report: Report,\n ) => Effect.Effect<SessionView, StoredStateInvalid>\n /**\n * Fetches the session's pull requests whose status is not yet known, publishes its view, and\n * returns it. Marks the session as in use. Use after its attachments change.\n */\n readonly show: (sessionID: string) => Effect.Effect<SessionView, StoredStateInvalid>\n /** Stops watching a session. Safe to repeat. */\n readonly forget: (sessionID: string) => Effect.Effect<void>\n /** Refreshes every due pull request of the sessions in use. Run it repeatedly. */\n readonly poll: Effect.Effect<void>\n /** A session's view after each refresh of it, including refreshes that `poll` runs. */\n readonly changes: Stream.Stream<SessionView>\n}\n\nexport class Monitor extends Context.Service<Monitor, MonitorApi>()(\n \"opencode-pr-tracker/Monitor\",\n) {}\n\nfunction entryOf(known: ReadonlyMap<string, Known>, attachment: Attachment): Entry {\n const current = known.get(attachment.ref.url) ?? unknown\n\n return {\n attachedAt: attachment.attachedAt,\n membership: current.membership,\n ref: attachment.ref,\n status: current.status,\n }\n}\n\nconst urlsOf = (tracking: Tracking): string[] => tracking.map((attachment) => attachment.ref.url)\n\ninterface Cache {\n readonly github: GitHubApi\n readonly known: Ref.Ref<ReadonlyMap<string, Known>>\n}\n\ninterface State extends Cache {\n readonly tracker: TrackerApi\n readonly working: Ref.Ref<ReadonlySet<string>>\n readonly published: PubSub.PubSub<SessionView>\n /** Fetches pull requests and records the results; see `FetchQueue`. */\n readonly fetch: (refs: readonly PullRequestRef[]) => Effect.Effect<void>\n}\n\n/** Records GitHub's results for pull requests as of now. */\nfunction remember(cache: Cache, results: ReadonlyMap<string, ItemResult>): Effect.Effect<void> {\n return Effect.gen(function* () {\n const now = yield* currentMillis\n\n yield* Ref.update(cache.known, (current: ReadonlyMap<string, Known>) =>\n recorded(current, results, now),\n )\n })\n}\n\n/** Fetches `refs` and records what GitHub said; a failed request counts against each of them. */\nfunction update(cache: Cache, refs: readonly PullRequestRef[]): Effect.Effect<void> {\n return Effect.gen(function* () {\n const outcome = yield* Effect.result(cache.github.fetch(refs))\n\n const results: ReadonlyMap<string, ItemResult> = Result.isSuccess(outcome)\n ? outcome.success\n : new Map(\n refs.map(\n (ref) => [ref.url, { _tag: \"Failed\", diagnostic: outcome.failure.diagnostic }] as const,\n ),\n )\n\n yield* remember(cache, results)\n })\n}\n\n/** The session's view. Agreed Stacks whose attached members sit apart are regrouped first. */\nfunction viewOf(state: State, sessionID: string): Effect.Effect<SessionView, StoredStateInvalid> {\n return Effect.gen(function* () {\n const stored = yield* state.tracker.list(sessionID)\n const current = yield* Ref.get(state.known)\n const entries = stored.map((attachment) => entryOf(current, attachment))\n const stacks = agreedStacks(entries).map((stack) => stack.members)\n\n if (!group(stored, stacks).changed) return { entries, sessionID }\n // A failed regroup leaves the stored order as it was.\n const regrouped = Effect.orElseSucceed(state.tracker.regroup(sessionID, stacks), () => stored)\n const tracking = yield* regrouped\n\n return { entries: tracking.map((attachment) => entryOf(current, attachment)), sessionID }\n })\n}\n\nfunction publish(state: State, sessionID: string): Effect.Effect<void> {\n return viewOf(state, sessionID).pipe(\n Effect.flatMap((view: SessionView) => PubSub.publish(state.published, view)),\n Effect.ignore,\n )\n}\n\nconst use = (state: State, sessionID: string): Effect.Effect<void> =>\n Ref.update(state.working, (sessions: ReadonlySet<string>) => new Set(sessions).add(sessionID))\n\nfunction poll(state: State): Effect.Effect<void> {\n return Effect.gen(function* () {\n const sessions = [...(yield* Ref.get(state.working))]\n // Taken before listing attachments: statuses recorded after this belong to newer attachments.\n const known = yield* Ref.get(state.known)\n\n const trackings = yield* Effect.forEach(sessions, (sessionID: string) =>\n state.tracker.list(sessionID).pipe(Effect.orElseSucceed((): Tracking => [])),\n )\n\n const attached = new Map(\n trackings.flat().map((attachment) => [attachment.ref.url, attachment.ref]),\n )\n\n const now = yield* currentMillis\n // Choose from the cache as it is now: an attach may have recorded a report while listing.\n const current = yield* Ref.get(state.known)\n const due = [...attached.values()].filter((ref: PullRequestRef) => isDue(current, now, ref))\n\n yield* Ref.update(state.known, (entries: ReadonlyMap<string, Known>) =>\n withoutUnattached(entries, known, attached),\n )\n\n if (due.length === 0) return\n\n yield* state.fetch(due)\n\n const dueUrls = new Set(due.map((ref) => ref.url))\n\n const affected = sessions.filter((_, index) =>\n urlsOf(trackings[index] ?? []).some((url) => dueUrls.has(url)),\n )\n\n yield* Effect.forEach(affected, (sessionID: string) => publish(state, sessionID), {\n discard: true,\n })\n })\n}\n\n/** Fetches the session's pull requests that `select` picks, then publishes and returns its view. */\nfunction fetchAndShow(\n state: State,\n sessionID: string,\n select: (known: Option.Option<Known>) => boolean,\n): Effect.Effect<SessionView, StoredStateInvalid> {\n return Effect.gen(function* () {\n yield* use(state, sessionID)\n\n const tracking = yield* state.tracker.list(sessionID)\n const known = yield* Ref.get(state.known)\n\n yield* state.fetch(\n tracking\n .map((attachment) => attachment.ref)\n .filter((ref) => select(Option.fromNullishOr(known.get(ref.url)))),\n )\n const view = yield* viewOf(state, sessionID)\n\n yield* PubSub.publish(state.published, view)\n\n return view\n })\n}\n\nconst refreshable = (known: Option.Option<Known>): boolean =>\n Option.isSome(Option.getOrElse(known, () => unknown).dueAt)\n\nconst notYetKnown = (known: Option.Option<Known>): boolean => Option.isNone(known)\n\nexport const layer = Layer.effect(\n Monitor,\n Effect.gen(function* () {\n const cache: Cache = {\n github: yield* GitHub,\n known: yield* Ref.make<ReadonlyMap<string, Known>>(new Map()),\n }\n\n const queue = new FetchQueue((refs) => update(cache, refs), yield* Effect.scope)\n\n const state: State = {\n fetch: (refs) => queue.fetch(refs),\n github: cache.github,\n known: cache.known,\n published: yield* PubSub.unbounded<SessionView>(),\n tracker: yield* Tracker,\n working: yield* Ref.make<ReadonlySet<string>>(new Set()),\n }\n\n return Monitor.of({\n changes: Stream.fromPubSub(state.published),\n forget: (sessionID) =>\n Ref.update(\n state.working,\n (sessions: ReadonlySet<string>) =>\n new Set([...sessions].filter((id) => id !== sessionID)),\n ),\n poll: poll(state),\n attached: (sessionID, ref, report) =>\n Effect.andThen(\n remember(cache, new Map([[ref.url, { _tag: \"Reported\", report }]])),\n fetchAndShow(state, sessionID, notYetKnown),\n ),\n refresh: (sessionID) => fetchAndShow(state, sessionID, refreshable),\n show: (sessionID) => fetchAndShow(state, sessionID, notYetKnown),\n view: (sessionID) => Effect.andThen(use(state, sessionID), viewOf(state, sessionID)),\n })\n }),\n)\n",
|
|
20
20
|
"import { Array as Arr, Option, Schema } from \"effect\"\n\nimport { PullRequestRef } from \"./PullRequest.ts\"\n\n/** GitHub Stack membership. Members are listed bottom to top. */\nexport const Membership = Schema.Union([\n Schema.TaggedStruct(\"Standalone\", {}),\n Schema.TaggedStruct(\"Stack\", {\n id: Schema.String,\n members: Schema.NonEmptyArray(PullRequestRef),\n }),\n])\n\nexport type Membership = typeof Membership.Type\n\nexport type StackMembership = Extract<Membership, { readonly _tag: \"Stack\" }>\n\nexport interface Entry {\n readonly ref: PullRequestRef\n readonly membership: Option.Option<Membership>\n}\n\n/** `first`, `middle` and `last` draw a Stack's boundary; `bullet` is an ordinary pull request. */\nexport type Marker = \"bullet\" | \"first\" | \"middle\" | \"last\"\n\n/** How the line under a row continues: to the next attached member, to unattached members, or not. */\nexport type Connector = \"continues\" | \"open\" | \"none\"\n\nexport type Row<E extends Entry> =\n | {\n readonly _tag: \"PullRequest\"\n readonly entry: E\n readonly marker: Marker\n readonly connector: Connector\n }\n | { readonly _tag: \"Gap\"; readonly count: number }\n\ninterface Placed {\n readonly index: number\n readonly position: number\n readonly size: number\n}\n\n/** Where one entry sits within its Stack's attached members. */\ninterface Place {\n readonly current: Placed\n readonly previous: Option.Option<Placed>\n readonly first: boolean\n readonly last: boolean\n readonly attached: number\n}\n\ninterface Reported {\n readonly index: number\n readonly url: string\n readonly stack: StackMembership\n}\n\nconst stackOf = (entry: Entry): Option.Option<StackMembership> =>\n Option.filter(entry.membership, (membership) => membership._tag === \"Stack\")\n\nconst urlsOf = (stack: StackMembership): string[] => stack.members.map((member) => member.url)\n\nfunction reportsById(entries: readonly Entry[]): Map<string, Reported[]> {\n const byId = new Map<string, Reported[]>()\n\n for (const [index, entry] of entries.entries()) {\n for (const stack of Option.toArray(stackOf(entry))) {\n byId.set(stack.id, [...(byId.get(stack.id) ?? []), { index, stack, url: entry.ref.url }])\n }\n }\n\n return byId\n}\n\n/** Every Stack ID that lists each pull request, across all reported memberships. */\nfunction claims(byId: ReadonlyMap<string, readonly Reported[]>): Map<string, Set<string>> {\n const claimed = new Map<string, Set<string>>()\n\n for (const [id, reports] of byId) {\n for (const url of reports.flatMap((report) => urlsOf(report.stack))) {\n claimed.set(url, new Set([...(claimed.get(url) ?? []), id]))\n }\n }\n\n return claimed\n}\n\nfunction agrees(\n reports: readonly Reported[],\n entries: readonly Entry[],\n claimed: ReadonlyMap<string, ReadonlySet<string>>,\n): boolean {\n const members = Option.match(Arr.head(reports), {\n onNone: (): string[] => [],\n onSome: (report) => urlsOf(report.stack),\n })\n\n const listed = new Set(members)\n const attachedMembers = entries.filter((entry) => listed.has(entry.ref.url))\n\n return (\n listed.size === members.length &&\n reports.every((report) => urlsOf(report.stack).join(\"\\n\") === members.join(\"\\n\")) &&\n members.every((url) => (claimed.get(url) ?? new Set()).size === 1) &&\n reports.every((report) => listed.has(report.url)) &&\n attachedMembers.length === reports.length\n )\n}\n\nfunction placements(reports: readonly Reported[]): Option.Option<Placed[]> {\n const placed = reports.map((report) => ({\n index: report.index,\n position: urlsOf(report.stack).indexOf(report.url),\n size: report.stack.members.length,\n }))\n\n const adjacent = Arr.zipWith(\n placed,\n placed.slice(1),\n (before: Placed, after: Placed) =>\n after.index === before.index + 1 && after.position > before.position,\n )\n\n const ordered = placed.every((member: Placed) => member.position >= 0) && adjacent.every(Boolean)\n\n return ordered ? Option.some(placed) : Option.none()\n}\n\n/** The reports of each Stack whose attached members all agree on it, and no other Stack claims. */\nfunction agreedReports(entries: readonly Entry[]): (readonly Reported[])[] {\n const byId = reportsById(entries)\n const claimed = claims(byId)\n\n return [...byId.values()].filter((reports: readonly Reported[]) =>\n agrees(reports, entries, claimed),\n )\n}\n\n/** Stacks the entries report consistently: the ones `layout` can draw once their members sit together. */\nexport function agreedStacks(entries: readonly Entry[]): StackMembership[] {\n return agreedReports(entries).flatMap((reports: readonly Reported[]) =>\n Option.toArray(Option.map(Arr.head(reports), (report) => report.stack)),\n )\n}\n\n/** Each entry that belongs to a consistent Stack, with its place among the attached members. */\nfunction consistentStacks(entries: readonly Entry[]): Map<number, Place> {\n const places = new Map<number, Place>()\n\n for (const reports of agreedReports(entries)) {\n const placed = placements(reports)\n\n for (const group of Option.toArray(placed)) {\n for (const [step, current] of group.entries()) {\n places.set(current.index, {\n attached: group.length,\n current,\n first: step === 0,\n last: step === group.length - 1,\n previous: Arr.get(group, step - 1),\n })\n }\n }\n }\n\n return places\n}\n\nfunction marker(place: Place): Marker {\n const { current } = place\n\n if (place.attached === 1 && current.size > 1) return \"middle\"\n\n if (place.first && current.position === 0) return \"first\"\n\n if (place.last && current.position === current.size - 1) return \"last\"\n\n return \"middle\"\n}\n\nfunction connector(place: Place): Connector {\n if (!place.last) return \"continues\"\n\n return place.current.position < place.current.size - 1 ? \"open\" : \"none\"\n}\n\nfunction stackRows<E extends Entry>(entry: E, place: Place): Row<E>[] {\n const skipped = Option.match(place.previous, {\n onNone: () => 0,\n onSome: (before) => place.current.position - before.position - 1,\n })\n\n const row: Row<E> = {\n _tag: \"PullRequest\",\n connector: connector(place),\n entry,\n marker: marker(place),\n }\n\n return skipped > 0 ? [{ _tag: \"Gap\", count: skipped }, row] : [row]\n}\n\n/** Sidebar rows in attachment order, with Stack markers and gaps where membership is consistent. */\nexport function layout<E extends Entry>(entries: readonly E[]): Row<E>[] {\n const places = consistentStacks(entries)\n\n return entries.flatMap((entry, index) =>\n Option.match(Option.fromNullishOr(places.get(index)), {\n onNone: (): Row<E>[] => [{ _tag: \"PullRequest\", connector: \"none\", entry, marker: \"bullet\" }],\n onSome: (place) => stackRows(entry, place),\n }),\n )\n}\n",
|
|
@@ -32,6 +32,6 @@
|
|
|
32
32
|
"import { Match } from \"effect\"\n\nimport type { Diagnostic, PullRequestState, Status } from \"./Snapshot.ts\"\n\nexport type Tone = \"green\" | \"yellow\" | \"red\" | \"purple\" | \"gray\"\n\nexport interface Appearance {\n readonly tone: Tone\n readonly label: string\n readonly strikethrough: boolean\n readonly stale: boolean\n}\n\ntype Open = Extract<PullRequestState, { readonly _tag: \"Open\" }>\n\nconst diagnosticLabels: Record<Diagnostic, string> = {\n AuthenticationRequired: \"authenticate\",\n GitHubCliMissing: \"install gh\",\n GitHubUnavailable: \"GitHub unavailable\",\n InvalidResponse: \"invalid response\",\n NotFound: \"inaccessible\",\n}\n\nconst shown = (tone: Tone, label: string, strikethrough = false): Appearance => ({\n label,\n stale: false,\n strikethrough,\n tone,\n})\n\n/** Precedence: conflict, failed CI, draft, pending CI, behind, then passed or no checks. */\nfunction openAppearance(open: Open): Appearance {\n if (open.mergeability === \"conflicting\") return shown(\"red\", \"conflict\")\n\n if (open.ci === \"failed\") return shown(\"red\", \"failed\")\n\n if (open.draft) return shown(\"gray\", \"draft\")\n\n if (open.ci === \"pending\") return shown(\"yellow\", \"pending\")\n\n if (open.behind) return shown(\"yellow\", \"behind\")\n\n return open.ci === \"passed\" ? shown(\"green\", \"passed\") : shown(\"gray\", \"no checks\")\n}\n\nfunction stateAppearance(state: PullRequestState): Appearance {\n return Match.valueTags(state, {\n Closed: () => shown(\"red\", \"closed\", true),\n Merged: () => shown(\"purple\", \"merged\", true),\n Open: openAppearance,\n })\n}\n\nfunction markStale(fresh: Appearance): Appearance {\n return { label: fresh.label, stale: true, strikethrough: fresh.strikethrough, tone: fresh.tone }\n}\n\nexport function appearance(status: Status): Appearance {\n return Match.valueTags(status, {\n Fresh: ({ snapshot }) => stateAppearance(snapshot.state),\n Pending: () => shown(\"gray\", \"unavailable\"),\n Stale: ({ snapshot }) => markStale(stateAppearance(snapshot.state)),\n Unavailable: ({ diagnostic }) => shown(\"gray\", diagnosticLabels[diagnostic]),\n })\n}\n"
|
|
33
33
|
],
|
|
34
34
|
"mappings": "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",
|
|
35
|
-
"debugId": "
|
|
35
|
+
"debugId": "7BCFB634853590CB64756E2164756E21",
|
|
36
36
|
"names": []
|
|
37
37
|
}
|
package/dist/tui.js
CHANGED
|
@@ -573,18 +573,67 @@ import { createEffect, createSignal as createSignal2, on, onCleanup } from "soli
|
|
|
573
573
|
|
|
574
574
|
// src/ui/Palette.ts
|
|
575
575
|
import { RGBA } from "@opentui/core";
|
|
576
|
-
var
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
576
|
+
var toLinear = (value) => value <= 0.04045 ? value / 12.92 : ((value + 0.055) / 1.055) ** 2.4;
|
|
577
|
+
var fromLinear = (value) => Math.min(1, Math.max(0, value <= 0.0031308 ? value * 12.92 : 1.055 * value ** (1 / 2.4) - 0.055));
|
|
578
|
+
function oklchOf(color) {
|
|
579
|
+
const [red, green, blue] = [toLinear(color.r), toLinear(color.g), toLinear(color.b)];
|
|
580
|
+
const l = Math.cbrt(0.4122214708 * red + 0.5363325363 * green + 0.0514459929 * blue);
|
|
581
|
+
const m = Math.cbrt(0.2119034982 * red + 0.6806995451 * green + 0.1073969566 * blue);
|
|
582
|
+
const s = Math.cbrt(0.0883024619 * red + 0.2817188376 * green + 0.6299787005 * blue);
|
|
583
|
+
const a = 1.9779984951 * l - 2.428592205 * m + 0.4505937099 * s;
|
|
584
|
+
const b = 0.0259040371 * l + 0.7827717662 * m - 0.808675766 * s;
|
|
585
|
+
return {
|
|
586
|
+
c: Math.hypot(a, b),
|
|
587
|
+
h: Math.atan2(b, a),
|
|
588
|
+
l: 0.2104542553 * l + 0.793617785 * m - 0.0040720468 * s
|
|
589
|
+
};
|
|
590
|
+
}
|
|
591
|
+
function linearOf({ c, h, l }) {
|
|
592
|
+
const a = c * Math.cos(h);
|
|
593
|
+
const b = c * Math.sin(h);
|
|
594
|
+
const long = (l + 0.3963377774 * a + 0.2158037573 * b) ** 3;
|
|
595
|
+
const medium = (l - 0.1055613458 * a - 0.0638541728 * b) ** 3;
|
|
596
|
+
const short = (l - 0.0894841775 * a - 1.291485548 * b) ** 3;
|
|
597
|
+
return {
|
|
598
|
+
blue: -0.0041960863 * long - 0.7034186147 * medium + 1.707614701 * short,
|
|
599
|
+
green: -1.2684380046 * long + 2.6097574011 * medium - 0.3413193965 * short,
|
|
600
|
+
red: 4.0767416621 * long - 3.3077115913 * medium + 0.2309699292 * short
|
|
601
|
+
};
|
|
602
|
+
}
|
|
603
|
+
var inGamut = ({ blue, green, red }) => [red, green, blue].every((channel) => channel >= -0.000001 && channel <= 1 + 0.000001);
|
|
604
|
+
function rgbaOf({ c, h, l }) {
|
|
605
|
+
let fits = 0;
|
|
606
|
+
let fails = c;
|
|
607
|
+
if (inGamut(linearOf({ c, h, l })))
|
|
608
|
+
fits = c;
|
|
609
|
+
for (let step = 0;step < 20 && fits < fails; step += 1) {
|
|
610
|
+
const chroma = (fits + fails) / 2;
|
|
611
|
+
if (inGamut(linearOf({ c: chroma, h, l })))
|
|
612
|
+
fits = chroma;
|
|
613
|
+
else
|
|
614
|
+
fails = chroma;
|
|
615
|
+
}
|
|
616
|
+
const { blue, green, red } = linearOf({ c: fits, h, l });
|
|
617
|
+
return RGBA.fromValues(fromLinear(red), fromLinear(green), fromLinear(blue));
|
|
618
|
+
}
|
|
619
|
+
var mergedHue = oklchOf(RGBA.fromHex("#8250df")).h;
|
|
620
|
+
function mergedOf(theme) {
|
|
621
|
+
const error = oklchOf(theme.text.feedback.error.base);
|
|
622
|
+
const success = oklchOf(theme.text.feedback.success.base);
|
|
623
|
+
return rgbaOf({
|
|
624
|
+
c: (error.c + success.c) / 2,
|
|
625
|
+
h: mergedHue,
|
|
626
|
+
l: (error.l + success.l) / 2
|
|
627
|
+
});
|
|
628
|
+
}
|
|
629
|
+
function paletteOf(theme) {
|
|
581
630
|
return {
|
|
582
631
|
muted: theme.text.muted,
|
|
583
632
|
text: theme.text.base,
|
|
584
633
|
tones: {
|
|
585
634
|
gray: theme.text.muted,
|
|
586
635
|
green: theme.text.feedback.success.base,
|
|
587
|
-
purple:
|
|
636
|
+
purple: mergedOf(theme),
|
|
588
637
|
red: theme.text.feedback.error.base,
|
|
589
638
|
yellow: theme.text.feedback.warning.base
|
|
590
639
|
}
|
|
@@ -1105,7 +1154,7 @@ function SessionSidebar(props) {
|
|
|
1105
1154
|
props.collapsed.toggle(props.sessionID);
|
|
1106
1155
|
},
|
|
1107
1156
|
get palette() {
|
|
1108
|
-
return paletteOf(context.theme
|
|
1157
|
+
return paletteOf(context.theme);
|
|
1109
1158
|
},
|
|
1110
1159
|
get state() {
|
|
1111
1160
|
return state();
|
|
@@ -1220,4 +1269,4 @@ export {
|
|
|
1220
1269
|
tui_default as default
|
|
1221
1270
|
};
|
|
1222
1271
|
|
|
1223
|
-
//# debugId=
|
|
1272
|
+
//# debugId=B855376DCF54FB4D64756E2164756E21
|
package/dist/tui.js.map
CHANGED
|
@@ -13,14 +13,14 @@
|
|
|
13
13
|
"import { Effect, Option, Schema } from \"effect\"\n\nimport { CommandRunner } from \"../adapters/Command.ts\"\n\nexport class OpenFailed extends Schema.TaggedError<OpenFailed>()(\"OpenFailed\", {\n message: Schema.String,\n}) {}\n\nconst openers: Readonly<Partial<Record<NodeJS.Platform, string>>> = {\n darwin: \"open\",\n linux: \"xdg-open\",\n}\n\n/** Opens `url` in the default browser. */\nexport function openUrl(\n url: string,\n platform: NodeJS.Platform,\n): Effect.Effect<void, OpenFailed, CommandRunner> {\n return Option.match(Option.fromNullishOr(openers[platform]), {\n onNone: () =>\n Effect.fail(\n new OpenFailed({ message: `Opening pull requests is not supported on ${platform}.` }),\n ),\n onSome: (opener) =>\n CommandRunner.use((runner) => runner.run(opener, [url], \".\")).pipe(\n Effect.asVoid,\n Effect.mapError(\n () => new OpenFailed({ message: `Could not open ${url} with \\`${opener}\\`.` }),\n ),\n ),\n })\n}\n",
|
|
14
14
|
"/** The terminal's view of the tracker: RPC calls routed to each session's location, decoded on arrival. */\nimport { Effect, Option, Schema } from \"effect\"\n\nimport { Changed, View, type ViewData } from \"../rpc.ts\"\n\nexport class RequestFailed extends Schema.TaggedError<RequestFailed>()(\"RequestFailed\", {\n message: Schema.String,\n}) {}\n\nexport interface TrackerClientApi {\n readonly list: (sessionID: string) => Effect.Effect<View, RequestFailed>\n readonly refresh: (sessionID: string) => Effect.Effect<View, RequestFailed>\n readonly attach: (sessionID: string, target: string) => Effect.Effect<Changed, RequestFailed>\n readonly detach: (sessionID: string, target: string) => Effect.Effect<Changed, RequestFailed>\n /** Calls `handler` with each view the server publishes. Returns a function that stops the calls. */\n readonly onUpdate: (handler: (view: View) => void) => () => void\n}\n\n/** Where a session runs; RPC calls go to the plugin instance for that location. */\nexport interface Location {\n readonly directory: string\n readonly workspaceID?: string\n}\n\ninterface CallOptions {\n readonly location?: Location\n}\n\ninterface Session {\n readonly sessionID: string\n}\n\ninterface Target extends Session {\n readonly target: string\n}\n\ntype ChangedData = typeof Changed.Encoded\n\n/** The parts of the plugin's RPC client the terminal uses. */\nexport interface TrackerRpc {\n readonly list: (input: Session, options: CallOptions) => Promise<ViewData>\n readonly refresh: (input: Session, options: CallOptions) => Promise<ViewData>\n readonly attach: (input: Target, options: CallOptions) => Promise<ChangedData>\n readonly detach: (input: Target, options: CallOptions) => Promise<ChangedData>\n readonly events: {\n readonly on: (\n name: \"updated\",\n handler: (event: { readonly data: ViewData }) => void,\n ) => () => void\n }\n}\n\n/** What the client needs from the terminal: the RPC client and where each session runs. */\nexport interface Host {\n readonly rpc: TrackerRpc\n readonly locationOf: (sessionID: string) => Option.Option<Location>\n}\n\n/** What the RPC client throws: a failure the server declared, or one from OpenCode itself. */\nconst Thrown = Schema.Union([\n Schema.Struct({\n data: Schema.Struct({ message: Schema.String }),\n type: Schema.Literal(\"rejected\"),\n }),\n Schema.Struct({ message: Schema.String, type: Schema.String }),\n])\n\ntype Thrown = typeof Thrown.Type\n\nfunction failureOf(thrown: Option.Option<Thrown>): RequestFailed {\n const message = Option.match(thrown, {\n onNone: () => \"The pull request tracker failed.\",\n onSome: (failure) => {\n if (\"data\" in failure) return failure.data.message\n\n return failure.type === \"rpc.unavailable\"\n ? \"The pull request tracker is not running for this session's directory.\"\n : `The pull request tracker failed: ${failure.message}`\n },\n })\n\n return new RequestFailed({ message })\n}\n\nconst unreadable = new RequestFailed({\n message: \"The pull request tracker sent a response the terminal could not read.\",\n})\n\nfunction decoded<S extends Schema.Decoder<unknown>>(\n schema: S,\n call: () => Promise<S[\"Encoded\"]>,\n): Effect.Effect<S[\"Type\"], RequestFailed> {\n return Effect.tryPromise({\n catch: (error) => failureOf(Schema.decodeUnknownOption(Thrown)(error)),\n try: call,\n }).pipe(\n Effect.flatMap((output) =>\n Schema.decodeEffect(schema)(output).pipe(Effect.mapError(() => unreadable)),\n ),\n )\n}\n\nexport function makeClient(host: Host): TrackerClientApi {\n const { rpc } = host\n\n const options = (sessionID: string): CallOptions =>\n Option.match(host.locationOf(sessionID), {\n onNone: () => ({}),\n onSome: (location) => ({ location }),\n })\n\n return {\n attach: (sessionID, target) =>\n decoded(Changed, async () => {\n const output = await rpc.attach({ sessionID, target }, options(sessionID))\n\n return output\n }),\n detach: (sessionID, target) =>\n decoded(Changed, async () => {\n const output = await rpc.detach({ sessionID, target }, options(sessionID))\n\n return output\n }),\n list: (sessionID) =>\n decoded(View, async () => {\n const output = await rpc.list({ sessionID }, options(sessionID))\n\n return output\n }),\n onUpdate: (handler) =>\n rpc.events.on(\"updated\", ({ data }) => {\n Option.map(Schema.decodeUnknownOption(View)(data), handler)\n }),\n refresh: (sessionID) =>\n decoded(View, async () => {\n const output = await rpc.refresh({ sessionID }, options(sessionID))\n\n return output\n }),\n }\n}\n",
|
|
15
15
|
"/** @jsxImportSource @opentui/solid */\nimport { usePlugin } from \"@opencode/plugin/tui\";\nimport { Option } from \"effect\";\nconst definitions = actions => [{\n act: actions.attach,\n name: \"attach\",\n takesInput: true,\n title: \"Attach pull request\"\n}, {\n act: () => actions.open,\n name: \"open\",\n takesInput: false,\n title: \"Open pull request\"\n}, {\n act: () => actions.detach,\n name: \"detach\",\n takesInput: false,\n title: \"Detach pull request\"\n}, {\n act: () => actions.sync,\n name: \"sync\",\n takesInput: false,\n title: \"Sync pull request status\"\n}];\nfunction command(definition, run) {\n const slash = definition.takesInput ? {\n arguments: true,\n name: `pr-${definition.name}`\n } : {\n name: `pr-${definition.name}`\n };\n return {\n group: \"Pull requests\",\n id: `pr.${definition.name}`,\n palette: true,\n run: input => {\n run(definition.act(Option.fromNullishOr(input)));\n },\n slash,\n title: definition.title\n };\n}\n\n/** Registers the slash commands; OpenCode requires this from a rendered component. */\nexport function Commands(props) {\n const context = usePlugin();\n const commands = definitions(props.actions).map(definition => command(definition, props.run));\n context.keymap.layer(() => ({\n commands,\n mode: \"global\"\n }));\n return null;\n}",
|
|
16
|
-
"import { createComponent as _$createComponent } from \"@opentui/solid\";\n/** @jsxImportSource @opentui/solid */\nimport { usePlugin } from \"@opencode/plugin/tui\";\nimport { Effect } from \"effect\";\nimport { createEffect, createSignal, on, onCleanup } from \"solid-js\";\nimport { paletteOf } from \"../ui/Palette.ts\";\nimport { Sidebar } from \"../ui/Sidebar.tsx\";\n\n/** Which sessions' lists are collapsed, kept for the plugin's lifetime so it survives remounts. */\n\n/** Numbers requests; each listing and each published update supersedes the listings before it. */\n\nfunction newestFirst() {\n let latest = 0;\n return {\n isLatest: request => request === latest,\n next: () => {\n latest += 1;\n return latest;\n }\n };\n}\n\n/**\n * The session's view, owned by the server: listed when the sidebar is shown or switches session,\n * then replaced by each published update. Answers to superseded listings are ignored.\n */\nexport function sessionView(sessionID, tracker, run) {\n const [state, setState] = createSignal({\n _tag: \"Loading\"\n });\n const requests = newestFirst();\n onCleanup(tracker.onUpdate(view => {\n if (view.sessionID !== sessionID()) return;\n requests.next();\n setState({\n _tag: \"Ready\",\n view\n });\n }));\n createEffect(on(sessionID, current => {\n const request = requests.next();\n setState({\n _tag: \"Loading\"\n });\n run(Effect.map(Effect.result(tracker.list(current)), result => {\n if (!requests.isLatest(request)) return;\n setState(result._tag === \"Failure\" ? {\n _tag: \"Failed\",\n message: result.failure.message\n } : {\n _tag: \"Ready\",\n view: result.success\n });\n }));\n }));\n return state;\n}\nexport function SessionSidebar(props) {\n const context = usePlugin();\n const state = sessionView(() => props.sessionID, props.tracker, props.run);\n return _$createComponent(Sidebar, {\n get collapsed() {\n return props.collapsed.has(props.sessionID);\n },\n get onOpen() {\n return props.onOpen;\n },\n onToggle: () => {\n props.collapsed.toggle(props.sessionID);\n },\n get palette() {\n return paletteOf(context.theme
|
|
17
|
-
"import
|
|
16
|
+
"import { createComponent as _$createComponent } from \"@opentui/solid\";\n/** @jsxImportSource @opentui/solid */\nimport { usePlugin } from \"@opencode/plugin/tui\";\nimport { Effect } from \"effect\";\nimport { createEffect, createSignal, on, onCleanup } from \"solid-js\";\nimport { paletteOf } from \"../ui/Palette.ts\";\nimport { Sidebar } from \"../ui/Sidebar.tsx\";\n\n/** Which sessions' lists are collapsed, kept for the plugin's lifetime so it survives remounts. */\n\n/** Numbers requests; each listing and each published update supersedes the listings before it. */\n\nfunction newestFirst() {\n let latest = 0;\n return {\n isLatest: request => request === latest,\n next: () => {\n latest += 1;\n return latest;\n }\n };\n}\n\n/**\n * The session's view, owned by the server: listed when the sidebar is shown or switches session,\n * then replaced by each published update. Answers to superseded listings are ignored.\n */\nexport function sessionView(sessionID, tracker, run) {\n const [state, setState] = createSignal({\n _tag: \"Loading\"\n });\n const requests = newestFirst();\n onCleanup(tracker.onUpdate(view => {\n if (view.sessionID !== sessionID()) return;\n requests.next();\n setState({\n _tag: \"Ready\",\n view\n });\n }));\n createEffect(on(sessionID, current => {\n const request = requests.next();\n setState({\n _tag: \"Loading\"\n });\n run(Effect.map(Effect.result(tracker.list(current)), result => {\n if (!requests.isLatest(request)) return;\n setState(result._tag === \"Failure\" ? {\n _tag: \"Failed\",\n message: result.failure.message\n } : {\n _tag: \"Ready\",\n view: result.success\n });\n }));\n }));\n return state;\n}\nexport function SessionSidebar(props) {\n const context = usePlugin();\n const state = sessionView(() => props.sessionID, props.tracker, props.run);\n return _$createComponent(Sidebar, {\n get collapsed() {\n return props.collapsed.has(props.sessionID);\n },\n get onOpen() {\n return props.onOpen;\n },\n onToggle: () => {\n props.collapsed.toggle(props.sessionID);\n },\n get palette() {\n return paletteOf(context.theme);\n },\n get state() {\n return state();\n }\n });\n}",
|
|
17
|
+
"import { RGBA } from \"@opentui/core\"\n\nimport type { Tone } from \"../domain/Appearance.ts\"\n\n/** The colors the sidebar uses, taken from the host theme. */\nexport interface Palette {\n readonly text: RGBA\n readonly muted: RGBA\n readonly tones: Readonly<Record<Tone, RGBA>>\n}\n\n/** The host theme colors the palette reads. OpenCode's `ResolvedTheme` provides them. */\nexport interface ThemeColors {\n readonly text: {\n readonly base: RGBA\n readonly muted: RGBA\n readonly feedback: {\n readonly error: { readonly base: RGBA }\n readonly success: { readonly base: RGBA }\n readonly warning: { readonly base: RGBA }\n }\n }\n}\n\ninterface Oklch {\n readonly l: number\n readonly c: number\n readonly h: number\n}\n\ninterface Linear {\n readonly red: number\n readonly green: number\n readonly blue: number\n}\n\nconst toLinear = (value: number): number =>\n value <= 0.04045 ? value / 12.92 : ((value + 0.055) / 1.055) ** 2.4\n\nconst fromLinear = (value: number): number =>\n Math.min(1, Math.max(0, value <= 0.0031308 ? value * 12.92 : 1.055 * value ** (1 / 2.4) - 0.055))\n\nfunction oklchOf(color: RGBA): Oklch {\n const [red, green, blue] = [toLinear(color.r), toLinear(color.g), toLinear(color.b)]\n\n const l = Math.cbrt(0.4122214708 * red + 0.5363325363 * green + 0.0514459929 * blue)\n const m = Math.cbrt(0.2119034982 * red + 0.6806995451 * green + 0.1073969566 * blue)\n const s = Math.cbrt(0.0883024619 * red + 0.2817188376 * green + 0.6299787005 * blue)\n\n const a = 1.9779984951 * l - 2.428592205 * m + 0.4505937099 * s\n const b = 0.0259040371 * l + 0.7827717662 * m - 0.808675766 * s\n\n return {\n c: Math.hypot(a, b),\n h: Math.atan2(b, a),\n l: 0.2104542553 * l + 0.793617785 * m - 0.0040720468 * s,\n }\n}\n\n/** Linear sRGB channels, which fall outside [0, 1] when the color is out of gamut. */\nfunction linearOf({ c, h, l }: Oklch): Linear {\n const a = c * Math.cos(h)\n const b = c * Math.sin(h)\n\n const long = (l + 0.3963377774 * a + 0.2158037573 * b) ** 3\n const medium = (l - 0.1055613458 * a - 0.0638541728 * b) ** 3\n const short = (l - 0.0894841775 * a - 1.291485548 * b) ** 3\n\n return {\n blue: -0.0041960863 * long - 0.7034186147 * medium + 1.707614701 * short,\n green: -1.2684380046 * long + 2.6097574011 * medium - 0.3413193965 * short,\n red: 4.0767416621 * long - 3.3077115913 * medium + 0.2309699292 * short,\n }\n}\n\nconst inGamut = ({ blue, green, red }: Linear): boolean =>\n [red, green, blue].every((channel) => channel >= -1e-6 && channel <= 1 + 1e-6)\n\n/** The color, with the largest chroma up to the requested one that fits sRGB. Gray always fits. */\nfunction rgbaOf({ c, h, l }: Oklch): RGBA {\n let fits = 0\n let fails = c\n\n if (inGamut(linearOf({ c, h, l }))) fits = c\n\n for (let step = 0; step < 20 && fits < fails; step += 1) {\n const chroma = (fits + fails) / 2\n\n if (inGamut(linearOf({ c: chroma, h, l }))) fits = chroma\n else fails = chroma\n }\n\n const { blue, green, red } = linearOf({ c: fits, h, l })\n\n return RGBA.fromValues(fromLinear(red), fromLinear(green), fromLinear(blue))\n}\n\n/** The hue of GitHub's merged purple, `#8250df`. */\nconst mergedHue = oklchOf(RGBA.fromHex(\"#8250df\")).h\n\n/**\n * The color for merged pull requests. Themes have no dependable purple: the V1 `secondary` color\n * becomes muted text in V2, and the purple V2 infers can be another hue, such as Catppuccin's pink\n * accent. Merged keeps GitHub's hue with the lightness and chroma of the theme's error and success\n * colors, so it sits among the theme's other status colors.\n */\nfunction mergedOf(theme: ThemeColors): RGBA {\n const error = oklchOf(theme.text.feedback.error.base)\n const success = oklchOf(theme.text.feedback.success.base)\n\n return rgbaOf({\n c: (error.c + success.c) / 2,\n h: mergedHue,\n l: (error.l + success.l) / 2,\n })\n}\n\nexport function paletteOf(theme: ThemeColors): Palette {\n return {\n muted: theme.text.muted,\n text: theme.text.base,\n tones: {\n gray: theme.text.muted,\n green: theme.text.feedback.success.base,\n purple: mergedOf(theme),\n red: theme.text.feedback.error.base,\n yellow: theme.text.feedback.warning.base,\n },\n }\n}\n",
|
|
18
18
|
"import { createTextNode as _$createTextNode } from \"@opentui/solid\";\nimport { insertNode as _$insertNode } from \"@opentui/solid\";\nimport { createComponent as _$createComponent } from \"@opentui/solid\";\nimport { effect as _$effect } from \"@opentui/solid\";\nimport { insert as _$insert } from \"@opentui/solid\";\nimport { memo as _$memo } from \"@opentui/solid\";\nimport { setProp as _$setProp } from \"@opentui/solid\";\nimport { createElement as _$createElement } from \"@opentui/solid\";\n/** @jsxImportSource @opentui/solid */\n\nimport { Match, Option } from \"effect\";\nimport { For, Show } from \"solid-js\";\nimport { layout } from \"../domain/StackLayout.ts\";\nimport { SidebarRow } from \"./Row.tsx\";\n\n/** What the sidebar knows about its session. */\n\n/** Lists longer than this can be collapsed from the heading. */\nconst collapsibleAbove = 2;\nconst entriesOf = view => view.entries.map(entry => ({\n membership: Option.fromNullishOr(entry.membership),\n ref: entry.ref,\n status: entry.status\n}));\nfunction Heading(props) {\n return (() => {\n var _el$ = _$createElement(\"box\"),\n _el$3 = _$createElement(\"text\"),\n _el$4 = _$createElement(\"b\");\n _$insertNode(_el$, _el$3);\n _$setProp(_el$, \"flexDirection\", \"row\");\n _$setProp(_el$, \"gap\", 1);\n _$setProp(_el$, \"onMouseDown\", () => {\n if (props.collapsible) props.onToggle();\n });\n _$insert(_el$, _$createComponent(Show, {\n get when() {\n return props.collapsible;\n },\n get children() {\n var _el$2 = _$createElement(\"text\");\n _$insert(_el$2, () => props.collapsed ? \"▶\" : \"▼\");\n _$effect(_$p => _$setProp(_el$2, \"fg\", props.palette.text, _$p));\n return _el$2;\n }\n }), _el$3);\n _$insertNode(_el$3, _el$4);\n _$insertNode(_el$4, _$createTextNode(`Pull requests`));\n _$effect(_$p => _$setProp(_el$3, \"fg\", props.palette.text, _$p));\n return _el$;\n })();\n}\nfunction Rows(props) {\n return _$createComponent(Show, {\n get fallback() {\n return (() => {\n var _el$7 = _$createElement(\"text\");\n _$insertNode(_el$7, _$createTextNode(`No pull requests attached`));\n _$effect(_$p => _$setProp(_el$7, \"fg\", props.palette.muted, _$p));\n return _el$7;\n })();\n },\n get when() {\n return props.view.entries.length > 0;\n },\n get children() {\n var _el$6 = _$createElement(\"box\");\n _$setProp(_el$6, \"flexDirection\", \"column\");\n _$insert(_el$6, _$createComponent(For, {\n get each() {\n return layout(entriesOf(props.view));\n },\n children: row => _$createComponent(SidebarRow, {\n get compact() {\n return props.view.layout === \"compact\";\n },\n get onOpen() {\n return props.onOpen;\n },\n get palette() {\n return props.palette;\n },\n row: row\n })\n }));\n return _el$6;\n }\n });\n}\nexport function Sidebar(props) {\n const collapsible = () => props.state._tag === \"Ready\" && props.state.view.entries.length > collapsibleAbove;\n const body = () => Match.valueTags(props.state, {\n Failed: ({\n message\n }) => (() => {\n var _el$9 = _$createElement(\"text\");\n _$insert(_el$9, message);\n _$effect(_$p => _$setProp(_el$9, \"fg\", props.palette.tones.red, _$p));\n return _el$9;\n })(),\n Loading: () => (() => {\n var _el$0 = _$createElement(\"text\");\n _$insertNode(_el$0, _$createTextNode(`Loading`));\n _$effect(_$p => _$setProp(_el$0, \"fg\", props.palette.muted, _$p));\n return _el$0;\n })(),\n Ready: ({\n view\n }) => _$createComponent(Rows, {\n get onOpen() {\n return props.onOpen;\n },\n get palette() {\n return props.palette;\n },\n view: view\n })\n });\n return (() => {\n var _el$10 = _$createElement(\"box\");\n _$setProp(_el$10, \"flexDirection\", \"column\");\n _$setProp(_el$10, \"gap\", 1);\n _$insert(_el$10, _$createComponent(Heading, {\n get collapsed() {\n return props.collapsed;\n },\n get collapsible() {\n return collapsible();\n },\n get onToggle() {\n return props.onToggle;\n },\n get palette() {\n return props.palette;\n }\n }), null);\n _$insert(_el$10, _$createComponent(Show, {\n get when() {\n return !collapsible() || !props.collapsed;\n },\n get children() {\n return body();\n }\n }), null);\n return _el$10;\n })();\n}",
|
|
19
19
|
"import { createTextNode as _$createTextNode } from \"@opentui/solid\";\nimport { use as _$use } from \"@opentui/solid\";\nimport { createComponent as _$createComponent } from \"@opentui/solid\";\nimport { setProp as _$setProp } from \"@opentui/solid\";\nimport { effect as _$effect } from \"@opentui/solid\";\nimport { insertNode as _$insertNode } from \"@opentui/solid\";\nimport { insert as _$insert } from \"@opentui/solid\";\nimport { createElement as _$createElement } from \"@opentui/solid\";\n/** @jsxImportSource @opentui/solid */\n\nimport { Match, Option } from \"effect\";\nimport { createSignal, For, Show } from \"solid-js\";\nimport { appearance } from \"../domain/Appearance.ts\";\n\n/** A glyph drawn in the marker column: the Stack line in muted color, the status tick in `color`. */\n\nconst markers = {\n bullet: {\n line: \"\",\n tick: \"•\"\n },\n first: {\n line: \"┌\",\n tick: \"─\"\n },\n last: {\n line: \"└\",\n tick: \"─\"\n },\n middle: {\n line: \"├\",\n tick: \"─\"\n }\n};\n\n/** What continues the marker column under a row: the Stack line, a gap to unattached members, or space. */\nconst continuations = {\n continues: {\n line: \"│\",\n tick: \"\"\n },\n none: {\n line: \"\",\n tick: \"\"\n },\n open: {\n line: \"┊\",\n tick: \"\"\n }\n};\nconst markerWidth = 3;\n\n/** What `Marked` reads from its text renderable: how many lines the text wraps to. */\n\nfunction MarkerGlyph(props) {\n const padding = () => \" \".repeat(markerWidth - props.glyph.line.length - props.glyph.tick.length);\n return (() => {\n var _el$ = _$createElement(\"text\"),\n _el$2 = _$createElement(\"span\"),\n _el$3 = _$createElement(\"span\");\n _$insertNode(_el$, _el$2);\n _$insertNode(_el$, _el$3);\n _$insert(_el$2, () => props.glyph.line);\n _$insert(_el$3, () => props.glyph.tick);\n _$insert(_el$, padding, null);\n _$effect(_p$ => {\n var _v$ = {\n fg: props.palette.muted\n },\n _v$2 = {\n fg: props.color\n };\n _v$ !== _p$.e && (_p$.e = _$setProp(_el$2, \"style\", _v$, _p$.e));\n _v$2 !== _p$.t && (_p$.t = _$setProp(_el$3, \"style\", _v$2, _p$.t));\n return _p$;\n }, {\n e: undefined,\n t: undefined\n });\n return _el$;\n })();\n}\n\n/** Text beside a marker column. Wrapped lines repeat `rest` so Stack lines stay unbroken. */\nfunction Marked(props) {\n const [lines, setLines] = createSignal(1);\n let content = Option.none();\n const measure = () => {\n const count = Option.match(content, {\n onNone: () => 1,\n onSome: text => text.virtualLineCount\n });\n setLines(Math.max(1, count));\n };\n return (() => {\n var _el$4 = _$createElement(\"box\"),\n _el$5 = _$createElement(\"box\"),\n _el$6 = _$createElement(\"text\");\n _$insertNode(_el$4, _el$5);\n _$insertNode(_el$4, _el$6);\n _$setProp(_el$4, \"flexDirection\", \"row\");\n _$setProp(_el$4, \"width\", \"100%\");\n _$setProp(_el$5, \"flexDirection\", \"column\");\n _$setProp(_el$5, \"width\", 3);\n _$insert(_el$5, _$createComponent(MarkerGlyph, {\n get color() {\n return props.color;\n },\n get glyph() {\n return props.first;\n },\n get palette() {\n return props.palette;\n }\n }), null);\n _$insert(_el$5, _$createComponent(For, {\n get each() {\n return Array.from({\n length: lines() - 1\n });\n },\n children: () => _$createComponent(MarkerGlyph, {\n get color() {\n return props.color;\n },\n get glyph() {\n return props.rest;\n },\n get palette() {\n return props.palette;\n }\n })\n }), null);\n _$use(text => {\n content = Option.some(text);\n measure();\n }, _el$6);\n _$setProp(_el$6, \"flexGrow\", 1);\n _$setProp(_el$6, \"on:line-info-change\", measure);\n _$insert(_el$6, () => props.children);\n return _el$4;\n })();\n}\nconst titleOf = status => Match.valueTags(status, {\n Fresh: ({\n snapshot\n }) => snapshot.title,\n Pending: () => \"Title unavailable\",\n Stale: ({\n snapshot\n }) => snapshot.title,\n Unavailable: () => \"Title unavailable\"\n});\nexport function PullRequestRow(props) {\n const shown = () => appearance(props.entry.status);\n const color = () => props.palette.tones[shown().tone];\n const below = () => continuations[props.connector];\n return (() => {\n var _el$7 = _$createElement(\"box\");\n _$setProp(_el$7, \"flexDirection\", \"column\");\n _$setProp(_el$7, \"onMouseUp\", () => {\n props.onOpen(props.entry.ref);\n });\n _$insert(_el$7, _$createComponent(Marked, {\n get color() {\n return color();\n },\n get first() {\n return markers[props.marker];\n },\n get palette() {\n return props.palette;\n },\n get rest() {\n return below();\n },\n get children() {\n return [(() => {\n var _el$8 = _$createElement(\"span\");\n _$insert(_el$8, () => props.entry.ref.label);\n _$effect(_$p => _$setProp(_el$8, \"style\", {\n bold: true,\n fg: color(),\n strikethrough: shown().strikethrough\n }, _$p));\n return _el$8;\n })(), (() => {\n var _el$9 = _$createElement(\"span\");\n _$insert(_el$9, () => ` ${shown().label}`);\n _$effect(_$p => _$setProp(_el$9, \"style\", {\n fg: color()\n }, _$p));\n return _el$9;\n })(), _$createComponent(Show, {\n get when() {\n return shown().stale;\n },\n get children() {\n var _el$0 = _$createElement(\"span\");\n _$insertNode(_el$0, _$createTextNode(` · stale`));\n _$effect(_$p => _$setProp(_el$0, \"style\", {\n fg: props.palette.muted,\n italic: true\n }, _$p));\n return _el$0;\n }\n })];\n }\n }), null);\n _$insert(_el$7, _$createComponent(Show, {\n get when() {\n return !props.compact;\n },\n get children() {\n return _$createComponent(Marked, {\n get color() {\n return color();\n },\n get first() {\n return below();\n },\n get palette() {\n return props.palette;\n },\n get rest() {\n return below();\n },\n get children() {\n var _el$10 = _$createElement(\"span\");\n _$insert(_el$10, () => titleOf(props.entry.status));\n _$effect(_$p => _$setProp(_el$10, \"style\", {\n fg: props.palette.muted,\n strikethrough: shown().strikethrough\n }, _$p));\n return _el$10;\n }\n });\n }\n }), null);\n return _el$7;\n })();\n}\nexport function GapRow(props) {\n const label = () => `${String(props.count)} ${props.count === 1 ? \"PR\" : \"PRs\"} not attached`;\n return (() => {\n var _el$11 = _$createElement(\"text\");\n _$insert(_el$11, () => `├┄ ${label()}`);\n _$effect(_$p => _$setProp(_el$11, \"fg\", props.palette.muted, _$p));\n return _el$11;\n })();\n}\nexport function SidebarRow(props) {\n return Match.valueTags(props.row, {\n Gap: ({\n count\n }) => _$createComponent(GapRow, {\n count: count,\n get palette() {\n return props.palette;\n }\n }),\n PullRequest: ({\n connector,\n entry,\n marker\n }) => _$createComponent(PullRequestRow, {\n get compact() {\n return props.compact;\n },\n connector: connector,\n entry: entry,\n marker: marker,\n get onOpen() {\n return props.onOpen;\n },\n get palette() {\n return props.palette;\n }\n })\n });\n}",
|
|
20
20
|
"import { Match } from \"effect\"\n\nimport type { Diagnostic, PullRequestState, Status } from \"./Snapshot.ts\"\n\nexport type Tone = \"green\" | \"yellow\" | \"red\" | \"purple\" | \"gray\"\n\nexport interface Appearance {\n readonly tone: Tone\n readonly label: string\n readonly strikethrough: boolean\n readonly stale: boolean\n}\n\ntype Open = Extract<PullRequestState, { readonly _tag: \"Open\" }>\n\nconst diagnosticLabels: Record<Diagnostic, string> = {\n AuthenticationRequired: \"authenticate\",\n GitHubCliMissing: \"install gh\",\n GitHubUnavailable: \"GitHub unavailable\",\n InvalidResponse: \"invalid response\",\n NotFound: \"inaccessible\",\n}\n\nconst shown = (tone: Tone, label: string, strikethrough = false): Appearance => ({\n label,\n stale: false,\n strikethrough,\n tone,\n})\n\n/** Precedence: conflict, failed CI, draft, pending CI, behind, then passed or no checks. */\nfunction openAppearance(open: Open): Appearance {\n if (open.mergeability === \"conflicting\") return shown(\"red\", \"conflict\")\n\n if (open.ci === \"failed\") return shown(\"red\", \"failed\")\n\n if (open.draft) return shown(\"gray\", \"draft\")\n\n if (open.ci === \"pending\") return shown(\"yellow\", \"pending\")\n\n if (open.behind) return shown(\"yellow\", \"behind\")\n\n return open.ci === \"passed\" ? shown(\"green\", \"passed\") : shown(\"gray\", \"no checks\")\n}\n\nfunction stateAppearance(state: PullRequestState): Appearance {\n return Match.valueTags(state, {\n Closed: () => shown(\"red\", \"closed\", true),\n Merged: () => shown(\"purple\", \"merged\", true),\n Open: openAppearance,\n })\n}\n\nfunction markStale(fresh: Appearance): Appearance {\n return { label: fresh.label, stale: true, strikethrough: fresh.strikethrough, tone: fresh.tone }\n}\n\nexport function appearance(status: Status): Appearance {\n return Match.valueTags(status, {\n Fresh: ({ snapshot }) => stateAppearance(snapshot.state),\n Pending: () => shown(\"gray\", \"unavailable\"),\n Stale: ({ snapshot }) => markStale(stateAppearance(snapshot.state)),\n Unavailable: ({ diagnostic }) => shown(\"gray\", diagnosticLabels[diagnostic]),\n })\n}\n",
|
|
21
21
|
"import type { UI } from \"@opencode/plugin/tui/context\"\nimport { Effect, Option } from \"effect\"\n\nimport type { Terminal } from \"./Actions.ts\"\n\n/** A terminal backed by OpenCode's UI; `dismiss` closes a dialog it still has open. */\nexport interface HostTerminal {\n readonly terminal: Terminal\n readonly dismiss: () => void\n}\n\n/** The session on screen, if any. */\nfunction currentSession(ui: UI): Option.Option<string> {\n const route = ui.router.current()\n\n return route.type === \"session\" ? Option.some(route.sessionID) : Option.none()\n}\n\nexport function hostTerminal(ui: UI): HostTerminal {\n let open = false\n\n /** Shows a dialog, remembering it is open until it answers. */\n const dialog = <A>(show: () => Promise<A | undefined>): Effect.Effect<Option.Option<A>> =>\n Effect.acquireUseRelease(\n Effect.sync(() => {\n open = true\n }),\n () => Effect.promise(show).pipe(Effect.map(Option.fromNullishOr)),\n () =>\n Effect.sync(() => {\n open = false\n }),\n )\n\n return {\n dismiss: () => {\n if (open) ui.dialog.clear()\n },\n terminal: {\n choose: (title, choices) =>\n dialog(async () => {\n const chosen = await ui.dialog.select({ options: choices, title })\n\n return chosen\n }),\n notify: (variant, message) => {\n ui.toast.show({ message, title: \"Pull requests\", variant })\n },\n prompt: (title, placeholder) =>\n dialog(async () => {\n const answer = await ui.dialog.prompt({ placeholder, title })\n\n return answer\n }),\n session: () => currentSession(ui),\n },\n }\n}\n"
|
|
22
22
|
],
|
|
23
|
-
"mappings": ";;AAAA,4BAAS;AAET;AACA,mBAAS,mBAAQ;AACjB,yBAAS;;;ACJT;AAAA;AAEO,MAAM,uBAAuB,OAAO,YAA4B,EAAE,kBAAkB;AAAA,EACzF,SAAS,OAAO;AAClB,CAAC,EAAE;AAAC;AAAA;AAEG,MAAM,sBAAsB,OAAO,YAA2B,EAAE,iBAAiB;AAAA,EACtF,SAAS,OAAO;AAAA,EAChB,UAAU,OAAO;AAAA,EACjB,QAAQ,OAAO;AACjB,CAAC,EAAE;AAAC;AAAA;AAWG,MAAM,sBAAsB,QAAQ,QAAyC,EAClF,mCACF,EAAE;AAAC;AASH,IAAM,sBAAsB,OAAO,GAAG,OAAO,OAAO,EAAE,MAAM,OAAO,QAAQ,QAAQ,EAAE,CAAC,CAAC;AAEvF,SAAS,KAAK,CAAC,SAAiB,MAAyB,KAAoB;AAAA,EAC3E,MAAM,WAAU,IAAI,MAAM,CAAC,SAAS,GAAG,IAAI,GAAG;AAAA,IAC5C;AAAA,IACA,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,QAAQ;AAAA,EACV,CAAC;AAAA,EAED,OAAO;AAAA,IACL,WAAW,YAAY;AAAA,MACrB,MAAM,SAAS,MAAM,QAAQ,IAAI;AAAA,QAC/B,IAAI,SAAS,SAAQ,MAAM,EAAE,KAAK;AAAA,QAClC,IAAI,SAAS,SAAQ,MAAM,EAAE,KAAK;AAAA,QAClC,SAAQ;AAAA,MACV,CAAC;AAAA,MAED,OAAO;AAAA;AAAA,IAET,MAAM,MAAM;AAAA,MACV,SAAQ,KAAK;AAAA;AAAA,IAEf,SAAS,MAAM,SAAQ,aAAa;AAAA,EACtC;AAAA;AAIF,SAAS,KAAK,CACZ,SACA,MACA,KACmE;AAAA,EACnE,MAAM,UAAU,OAAO,IAAI;AAAA,IACzB,OAAO,CAAC,UACN,oBAAoB,KAAK,IACrB,IAAI,eAAe,EAAE,QAAQ,CAAC,IAC9B,IAAI,cAAc,EAAE,SAAS,UAAU,IAAI,QAAQ,OAAO,KAAK,EAAE,CAAC;AAAA,IACxE,KAAK,MAAM,MAAM,SAAS,MAAM,GAAG;AAAA,EACrC,CAAC;AAAA,EAED,OAAO,OAAO,eAAe,SAAS,CAAC,UACrC,OAAO,KAAK,MAAM;AAAA,IAChB,IAAI,MAAM,QAAQ;AAAA,MAAG,MAAM,KAAK;AAAA,GACjC,CACH;AAAA;AAGF,SAAS,MAAM,CAAC,SAAiB,OAAoD;AAAA,EACnF,OAAO,OAAO,IAAI,UAAU,GAAG;AAAA,IAC7B,OAAO,QAAQ,QAAQ,YAAY,OAAO,OAAO,QAAQ,MAAM,SAAS;AAAA,IAExE,IAAI,aAAa;AAAA,MAAG,OAAO;AAAA,IAE3B,OAAO,OAAO,IAAI,cAAc,EAAE,SAAS,UAAU,OAAO,CAAC;AAAA,GAC9D;AAAA;AAGI,IAAM,QAAQ,MAAM,QACzB,eACA,cAAc,GAAG;AAAA,EACf,KAAK,CAAC,SAAS,MAAM,QACnB,OAAO,OACL,OAAO,QAAQ,MAAM,SAAS,MAAM,GAAG,GAAG,CAAC,UAAiB,OAAO,SAAS,KAAK,CAAC,CACpF;AACJ,CAAC,CACH;;;AC9FA;AACA,mBAAS;;;ACLT,mCAAyB;AAEzB,IAAM,mBAAmB;AAEzB,IAAM,iBACJ;AAEF,IAAM,UAAU;AAGhB,IAAM,iBAAiB;AAEvB,IAAM,UAAU,QAAO,OAAO,MAAM,QAAO,UAAU,gBAAgB,CAAC;AAEtE,IAAM,oBAAoB,QAAO,IAAI,MACnC,QAAO,UAAU,EAAE,SAAS,OAAO,kBAAkB,SAAS,EAAE,CAAC,CACnE;AAAA;AAGO,MAAM,uBAAuB,QAAO,MAAsB,gBAAgB,EAAE;AAAA,EACjF,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,YAAY;AACd,CAAC,EAAE;AAAA,MACU,GAAG,GAAW;AAAA,IACvB,OAAO,sBAAsB,KAAK,SAAS,KAAK,mBAAmB,OAAO,KAAK,MAAM;AAAA;AAAA,MAG5E,KAAK,GAAW;AAAA,IACzB,OAAO,GAAG,KAAK,SAAS,KAAK,cAAc,OAAO,KAAK,MAAM;AAAA;AAEjE;AAAA;AAEO,MAAM,8BAA8B,QAAO,YAAmC,EACnF,yBACA,EAAE,OAAO,QAAO,OAAO,CACzB,EAAE;AAAC;AAAA;AAEI,MAAM,gCAAgC,QAAO,YAAqC,EACvF,2BACA,EAAE,OAAO,QAAO,OAAO,CACzB,EAAE;AAAC;AAOH,IAAM,YAAY,QAAO,oBAAoB,cAAc;AAE3D,IAAM,eAAe,QAAO,oBAAoB,iBAAiB;AAE1D,SAAS,eAAe,CAAC,MAAsB,OAAgC;AAAA,EACpF,OAAO,KAAK,QAAQ,MAAM;AAAA;AAGrB,SAAS,mBAAmB,CACjC,OACsD;AAAA,EACtD,MAAM,QAAQ,eAAe,KAAK,KAAK,IAAI,eAAe,KAAK,KAAK,IAAI;AAAA,EACxE,MAAM,SAAS,UAAU,OAAO,CAAC,IAAK,MAAM,UAAU,CAAC;AAAA,EAEvD,MAAM,YAAY;AAAA,IAChB,QAAQ,OAAO,OAAO,aAAa,OAAO,GAAG;AAAA,IAC7C,QAAQ,OAAO,YAAY,IAAI,YAAY;AAAA,IAC3C,aAAa,OAAO,iBAAiB,IAAI,YAAY;AAAA,EACvD;AAAA,EAEA,OAAO,OAAO,WAAW,UAAU,SAAS,GAAG,MAAM,IAAI,sBAAsB,EAAE,MAAM,CAAC,CAAC;AAAA;AAGpF,SAAS,qBAAqB,CACnC,OAC0D;AAAA,EAC1D,MAAM,YAAY,oBAAoB,KAAK;AAAA,EAE3C,IAAI,OAAO,UAAU,SAAS;AAAA,IAC5B,OAAO,OAAO,QAAQ,EAAE,MAAM,aAAa,KAAK,UAAU,QAAQ,CAAC;AAAA,EAErE,MAAM,SAAS,QAAQ,KAAK,KAAK,IAAI,aAAa,OAAO,KAAK,CAAC,IAAI,OAAO,KAAK;AAAA,EAE/E,OAAO,OAAO,WAAW,QAAQ,MAAM,IAAI,wBAAwB,EAAE,MAAM,CAAC,CAAC,EAAE,KAC7E,OAAO,IAAI,CAAC,WAAW,EAAE,MAAM,UAAU,QAAQ,MAAM,EAAE,CAC3D;AAAA;;;ACnFF,oCAA0B;AAInB,IAAM,KAAK,QAAO,SAAS,CAAC,UAAU,WAAW,UAAU,MAAM,CAAC;AAIlE,IAAM,eAAe,QAAO,SAAS,CAAC,aAAa,eAAe,SAAS,CAAC;AAI5E,IAAM,mBAAmB,QAAO,MAAM;AAAA,EAC3C,QAAO,aAAa,QAAQ;AAAA,IAC1B,QAAQ,QAAO;AAAA,IACf,IAAI;AAAA,IACJ,OAAO,QAAO;AAAA,IACd,cAAc;AAAA,EAChB,CAAC;AAAA,EACD,QAAO,aAAa,UAAU,CAAC,CAAC;AAAA,EAChC,QAAO,aAAa,UAAU,CAAC,CAAC;AAClC,CAAC;AAKM,IAAM,WAAW,QAAO,OAAO;AAAA,EACpC,KAAK;AAAA,EACL,OAAO;AAAA,EACP,OAAO,QAAO;AAChB,CAAC;AAKM,IAAM,aAAa,QAAO,SAAS;AAAA,EACxC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AAIM,IAAM,SAAS,QAAO,MAAM;AAAA,EACjC,QAAO,aAAa,WAAW,CAAC,CAAC;AAAA,EACjC,QAAO,aAAa,SAAS,EAAE,UAAU,SAAS,CAAC;AAAA,EACnD,QAAO,aAAa,SAAS;AAAA,IAC3B,YAAY;AAAA,IACZ,cAAc,QAAO;AAAA,IACrB,UAAU;AAAA,EACZ,CAAC;AAAA,EACD,QAAO,aAAa,eAAe,EAAE,YAAY,WAAW,CAAC;AAC/D,CAAC;AAKM,IAAM,aAAa,SAAS,QAAQ,CAAC;AAErC,IAAM,UAAkB,EAAE,MAAM,UAAU;AAE1C,SAAS,SAAS,CAAC,UAA4B;AAAA,EACpD,OAAO,EAAE,MAAM,SAAS,SAAS;AAAA;AAI5B,SAAS,MAAM,CAAC,QAAgB,YAAwB,KAAqB;AAAA,EAClF,OAAO,MAAM,UAAU,QAAQ;AAAA,IAC7B,OAAO,GAAG,gBAAwB,EAAE,MAAM,SAAS,YAAY,cAAc,KAAK,SAAS;AAAA,IAC3F,SAAS,OAAe,EAAE,MAAM,eAAe,WAAW;AAAA,IAC1D,OAAO,GAAG,cAAc,eACtB,MAAM,gBAAgB,SAAS,SAAS,UAAU,IAC9C,EAAE,MAAM,eAAe,WAAW,IAClC,EAAE,MAAM,SAAS,YAAY,cAAc,SAAS;AAAA,IAC1D,aAAa,OAAe,EAAE,MAAM,eAAe,WAAW;AAAA,EAChE,CAAC;AAAA;;;AC7EH,kBAAS,eAAc,mBAAQ;AAKxB,IAAM,aAAa,QAAO,MAAM;AAAA,EACrC,QAAO,aAAa,cAAc,CAAC,CAAC;AAAA,EACpC,QAAO,aAAa,SAAS;AAAA,IAC3B,IAAI,QAAO;AAAA,IACX,SAAS,QAAO,cAAc,cAAc;AAAA,EAC9C,CAAC;AACH,CAAC;AA+CD,IAAM,UAAU,CAAC,UACf,QAAO,OAAO,MAAM,YAAY,CAAC,eAAe,WAAW,SAAS,OAAO;AAE7E,IAAM,SAAS,CAAC,UAAqC,MAAM,QAAQ,IAAI,CAAC,WAAW,OAAO,GAAG;AAE7F,SAAS,WAAW,CAAC,SAAoD;AAAA,EACvE,MAAM,OAAO,IAAI;AAAA,EAEjB,YAAY,OAAO,UAAU,QAAQ,QAAQ,GAAG;AAAA,IAC9C,WAAW,SAAS,QAAO,QAAQ,QAAQ,KAAK,CAAC,GAAG;AAAA,MAClD,KAAK,IAAI,MAAM,IAAI,CAAC,GAAI,KAAK,IAAI,MAAM,EAAE,KAAK,CAAC,GAAI,EAAE,OAAO,OAAO,KAAK,MAAM,IAAI,IAAI,CAAC,CAAC;AAAA,IAC1F;AAAA,EACF;AAAA,EAEA,OAAO;AAAA;AAIT,SAAS,MAAM,CAAC,MAA0E;AAAA,EACxF,MAAM,UAAU,IAAI;AAAA,EAEpB,YAAY,IAAI,YAAY,MAAM;AAAA,IAChC,WAAW,OAAO,QAAQ,QAAQ,CAAC,WAAW,OAAO,OAAO,KAAK,CAAC,GAAG;AAAA,MACnE,QAAQ,IAAI,KAAK,IAAI,IAAI,CAAC,GAAI,QAAQ,IAAI,GAAG,KAAK,CAAC,GAAI,EAAE,CAAC,CAAC;AAAA,IAC7D;AAAA,EACF;AAAA,EAEA,OAAO;AAAA;AAGT,SAAS,MAAM,CACb,SACA,SACA,SACS;AAAA,EACT,MAAM,UAAU,QAAO,MAAM,IAAI,KAAK,OAAO,GAAG;AAAA,IAC9C,QAAQ,MAAgB,CAAC;AAAA,IACzB,QAAQ,CAAC,WAAW,OAAO,OAAO,KAAK;AAAA,EACzC,CAAC;AAAA,EAED,MAAM,SAAS,IAAI,IAAI,OAAO;AAAA,EAC9B,MAAM,kBAAkB,QAAQ,OAAO,CAAC,UAAU,OAAO,IAAI,MAAM,IAAI,GAAG,CAAC;AAAA,EAE3E,OACE,OAAO,SAAS,QAAQ,UACxB,QAAQ,MAAM,CAAC,WAAW,OAAO,OAAO,KAAK,EAAE,KAAK;AAAA,CAAI,MAAM,QAAQ,KAAK;AAAA,CAAI,CAAC,KAChF,QAAQ,MAAM,CAAC,SAAS,QAAQ,IAAI,GAAG,KAAK,IAAI,KAAO,SAAS,CAAC,KACjE,QAAQ,MAAM,CAAC,WAAW,OAAO,IAAI,OAAO,GAAG,CAAC,KAChD,gBAAgB,WAAW,QAAQ;AAAA;AAIvC,SAAS,UAAU,CAAC,SAAuD;AAAA,EACzE,MAAM,SAAS,QAAQ,IAAI,CAAC,YAAY;AAAA,IACtC,OAAO,OAAO;AAAA,IACd,UAAU,OAAO,OAAO,KAAK,EAAE,QAAQ,OAAO,GAAG;AAAA,IACjD,MAAM,OAAO,MAAM,QAAQ;AAAA,EAC7B,EAAE;AAAA,EAEF,MAAM,WAAW,IAAI,QACnB,QACA,OAAO,MAAM,CAAC,GACd,CAAC,QAAgB,UACf,MAAM,UAAU,OAAO,QAAQ,KAAK,MAAM,WAAW,OAAO,QAChE;AAAA,EAEA,MAAM,UAAU,OAAO,MAAM,CAAC,WAAmB,OAAO,YAAY,CAAC,KAAK,SAAS,MAAM,OAAO;AAAA,EAEhG,OAAO,UAAU,QAAO,KAAK,MAAM,IAAI,QAAO,KAAK;AAAA;AAIrD,SAAS,aAAa,CAAC,SAAoD;AAAA,EACzE,MAAM,OAAO,YAAY,OAAO;AAAA,EAChC,MAAM,UAAU,OAAO,IAAI;AAAA,EAE3B,OAAO,CAAC,GAAG,KAAK,OAAO,CAAC,EAAE,OAAO,CAAC,YAChC,OAAO,SAAS,SAAS,OAAO,CAClC;AAAA;AAIK,SAAS,YAAY,CAAC,SAA8C;AAAA,EACzE,OAAO,cAAc,OAAO,EAAE,QAAQ,CAAC,YACrC,QAAO,QAAQ,QAAO,IAAI,IAAI,KAAK,OAAO,GAAG,CAAC,WAAW,OAAO,KAAK,CAAC,CACxE;AAAA;AAIF,SAAS,gBAAgB,CAAC,SAA+C;AAAA,EACvE,MAAM,SAAS,IAAI;AAAA,EAEnB,WAAW,WAAW,cAAc,OAAO,GAAG;AAAA,IAC5C,MAAM,SAAS,WAAW,OAAO;AAAA,IAEjC,WAAW,SAAS,QAAO,QAAQ,MAAM,GAAG;AAAA,MAC1C,YAAY,MAAM,YAAY,MAAM,QAAQ,GAAG;AAAA,QAC7C,OAAO,IAAI,QAAQ,OAAO;AAAA,UACxB,UAAU,MAAM;AAAA,UAChB;AAAA,UACA,OAAO,SAAS;AAAA,UAChB,MAAM,SAAS,MAAM,SAAS;AAAA,UAC9B,UAAU,IAAI,IAAI,OAAO,OAAO,CAAC;AAAA,QACnC,CAAC;AAAA,MACH;AAAA,IACF;AAAA,EACF;AAAA,EAEA,OAAO;AAAA;AAGT,SAAS,MAAM,CAAC,OAAsB;AAAA,EACpC,QAAQ,YAAY;AAAA,EAEpB,IAAI,MAAM,aAAa,KAAK,QAAQ,OAAO;AAAA,IAAG,OAAO;AAAA,EAErD,IAAI,MAAM,SAAS,QAAQ,aAAa;AAAA,IAAG,OAAO;AAAA,EAElD,IAAI,MAAM,QAAQ,QAAQ,aAAa,QAAQ,OAAO;AAAA,IAAG,OAAO;AAAA,EAEhE,OAAO;AAAA;AAGT,SAAS,SAAS,CAAC,OAAyB;AAAA,EAC1C,IAAI,CAAC,MAAM;AAAA,IAAM,OAAO;AAAA,EAExB,OAAO,MAAM,QAAQ,WAAW,MAAM,QAAQ,OAAO,IAAI,SAAS;AAAA;AAGpE,SAAS,SAA0B,CAAC,OAAU,OAAwB;AAAA,EACpE,MAAM,UAAU,QAAO,MAAM,MAAM,UAAU;AAAA,IAC3C,QAAQ,MAAM;AAAA,IACd,QAAQ,CAAC,WAAW,MAAM,QAAQ,WAAW,OAAO,WAAW;AAAA,EACjE,CAAC;AAAA,EAED,MAAM,MAAc;AAAA,IAClB,MAAM;AAAA,IACN,WAAW,UAAU,KAAK;AAAA,IAC1B;AAAA,IACA,QAAQ,OAAO,KAAK;AAAA,EACtB;AAAA,EAEA,OAAO,UAAU,IAAI,CAAC,EAAE,MAAM,OAAO,OAAO,QAAQ,GAAG,GAAG,IAAI,CAAC,GAAG;AAAA;AAI7D,SAAS,MAAuB,CAAC,SAAiC;AAAA,EACvE,MAAM,SAAS,iBAAiB,OAAO;AAAA,EAEvC,OAAO,QAAQ,QAAQ,CAAC,OAAO,UAC7B,QAAO,MAAM,QAAO,cAAc,OAAO,IAAI,KAAK,CAAC,GAAG;AAAA,IACpD,QAAQ,MAAgB,CAAC,EAAE,MAAM,eAAe,WAAW,QAAQ,OAAO,QAAQ,SAAS,CAAC;AAAA,IAC5F,QAAQ,CAAC,UAAU,UAAU,OAAO,KAAK;AAAA,EAC3C,CAAC,CACH;AAAA;;;AHzMK,IAAM,SAAS,QAAO,SAAS,CAAC,WAAW,SAAS,CAAC;AAIrD,IAAM,YAAY,QAAO,OAAO;AAAA,EACrC,YAAY,QAAO;AAAA,EACnB,YAAY,QAAO,OAAO,UAAU;AAAA,EACpC,KAAK;AAAA,EACL,QAAQ;AACV,CAAC;AAKM,IAAM,OAAO,QAAO,OAAO;AAAA,EAChC,SAAS,QAAO,MAAM,SAAS;AAAA,EAC/B,QAAQ;AAAA,EACR,WAAW,QAAO;AACpB,CAAC;AAOD,IAAM,UAAU,QAAO,OAAO,EAAE,WAAW,QAAO,OAAO,CAAC;AAG1D,IAAM,SAAS,QAAO,OAAO,EAAE,WAAW,QAAO,QAAQ,QAAQ,QAAO,OAAO,CAAC;AAGzE,IAAM,UAAU,QAAO,OAAO,EAAE,SAAS,QAAO,QAAQ,MAAM,KAAK,CAAC;AAK3E,IAAM,WAAW,QAAO,OAAO,EAAE,SAAS,QAAO,OAAO,CAAC;AAOzD,SAAS,QAA8B,CACrC,QAC6D;AAAA,EAC7D,OAAO,EAAE,aAAa,QAAO,mBAAmB,QAAO,UAAU,MAAM,CAAC,EAAE,aAAa;AAAA;AAGlF,IAAM,qBAAqB,IAAI,OAAO;AAAA,EAC3C,QAAQ;AAAA,IACN,SAAS,EAAE,QAAQ,SAAS,IAAI,EAAE;AAAA,EACpC;AAAA,EACA,IAAI;AAAA,EACJ,SAAS;AAAA,IACP,QAAQ;AAAA,MACN,QAAQ,EAAE,UAAU,SAAS,QAAQ,EAAE;AAAA,MACvC,OAAO,SAAS,MAAM;AAAA,MACtB,QAAQ,SAAS,OAAO;AAAA,IAC1B;AAAA,IACA,QAAQ;AAAA,MACN,QAAQ,EAAE,UAAU,SAAS,QAAQ,EAAE;AAAA,MACvC,OAAO,SAAS,MAAM;AAAA,MACtB,QAAQ,SAAS,OAAO;AAAA,IAC1B;AAAA,IACA,MAAM;AAAA,MACJ,QAAQ,EAAE,UAAU,SAAS,QAAQ,EAAE;AAAA,MACvC,OAAO,SAAS,OAAO;AAAA,MACvB,QAAQ,SAAS,IAAI;AAAA,IACvB;AAAA,IACA,SAAS;AAAA,MACP,QAAQ,EAAE,UAAU,SAAS,QAAQ,EAAE;AAAA,MACvC,OAAO,SAAS,OAAO;AAAA,MACvB,QAAQ,SAAS,IAAI;AAAA,IACvB;AAAA,EACF;AACF,CAAC;;;AItFD,mBAAS,mBAAQ;AA2CjB,IAAM,cAAc;AAGpB,SAAS,SAAS,CAChB,UACA,MACqB;AAAA,EACrB,OAAO,QAAO,QAAQ,MACpB,QAAO,MAAM,SAAS,QAAQ,GAAG;AAAA,IAC/B,QAAQ,MACN,QAAO,KAAK,MAAM;AAAA,MAChB,SAAS,OAAO,WAAW,uBAAuB;AAAA,KACnD;AAAA,IACH,QAAQ;AAAA,EACV,CAAC,CACH;AAAA;AAIF,SAAS,MAAS,CAChB,UACA,QACA,QACqB;AAAA,EACrB,OAAO,QAAO,IAAI,QAAO,OAAO,MAAM,GAAG,CAAC,WAAW;AAAA,IACnD,IAAI,OAAO,SAAS,WAAW;AAAA,MAC7B,SAAS,OAAO,SAAS,OAAO,QAAQ,OAAO;AAAA,MAE/C;AAAA,IACF;AAAA,IAEA,YAAY,SAAS,YAAY,QAAO,QAAQ,OAAO,OAAO,OAAO,CAAC,GAAG;AAAA,MACvE,SAAS,OAAO,SAAS,OAAO;AAAA,IAClC;AAAA,GACD;AAAA;AAIH,SAAS,IAAI,GACT,UAAU,WACZ,WACA,OAC8C;AAAA,EAC9C,OAAO,QAAO,OAAO,QAAQ,KAAK,SAAS,CAAC,EAAE,KAC5C,QAAO,QAAQ,CAAC,WAAW;AAAA,IACzB,IAAI,OAAO,SAAS,WAAW;AAAA,MAC7B,SAAS,OAAO,SAAS,OAAO,QAAQ,OAAO;AAAA,MAE/C,OAAO,QAAO;AAAA,IAChB;AAAA,IAEA,QAAQ,YAAY,OAAO;AAAA,IAE3B,IAAI,QAAQ,WAAW,GAAG;AAAA,MACxB,SAAS,OAAO,QAAQ,gCAAgC;AAAA,MAExD,OAAO,QAAO;AAAA,IAChB;AAAA,IAEA,OAAO,SAAS,OACd,OACA,QAAQ,IAAI,CAAC,WAAW;AAAA,MACtB,OAAO,MAAM,IAAI;AAAA,MACjB,OAAO,MAAM;AAAA,IACf,EAAE,CACJ;AAAA,GACD,CACH;AAAA;AAGF,IAAM,UAAU,CAAC,YACf,QAAO,KAAK,CAAC,WAAW,QAAQ,OAAO,CAAC;AAE1C,SAAS,YAAY,CAAC,MAAmC;AAAA,EACvD,MAAM,QAAQ,KAAK,QAAQ;AAAA,EAE3B,MAAM,SAAS,KAAK,QAAQ,OAC1B,CAAC,UAAU,MAAM,OAAO,SAAS,WAAW,MAAM,OAAO,SAAS,aACpE,EAAE;AAAA,EAEF,IAAI,UAAU;AAAA,IAAG,OAAO,QAAO,KAAK,CAAC,QAAQ,gCAAgC,CAAC;AAAA,EAE9E,MAAM,SAAS,UAAU,OAAO,KAAK,KAAK,UAAU,IAAI,iBAAiB;AAAA,EAEzE,OAAO,QAAO,KACZ,WAAW,IACP,CAAC,WAAW,GAAG,SAAS,IACxB,CAAC,WAAW,GAAG,WAAW,OAAO,MAAM,2BAA2B,CACxE;AAAA;AAIF,IAAM,cAAc,CAAC,SACnB,QAAO,OAAO,QAAO,KAAK,KAAK,KAAK,CAAC,GAAG,CAAC,YAAY,YAAY,EAAE;AAErE,SAAS,MAAM,CAAC,UAAoB,OAAmD;AAAA,EACrF,QAAQ,UAAU,YAAY;AAAA,EAE9B,OAAO,UAAU,UAAU,CAAC,cAC1B,QAAO,MAAM,QAAO,QAAQ,OAAO,WAAW,GAAG;AAAA,IAC/C,QAAQ,MACN,QAAO,IACL,SAAS,OAAO,uBAAuB,WAAW,GAClD,QAAO,QAAQ,WAAW,CAC5B;AAAA,IACF,QAAQ,CAAC,SAAS,QAAO,YAAY,IAAI;AAAA,EAC3C,CAAC,EAAE,KACD,QAAO,QACL,QAAO,MAAM;AAAA,IACX,QAAQ,MAAM,QAAO;AAAA,IACrB,QAAQ,CAAC,WAAW,OAAO,UAAU,QAAQ,OAAO,WAAW,MAAM,GAAG,OAAO;AAAA,EACjF,CAAC,CACH,CACF,CACF;AAAA;AAaF,SAAS,UAAa,CAAC,UAAoB,QAA8C;AAAA,EACvF,OAAO,UAAU,SAAS,UAAU,CAAC,cACnC,KAAK,UAAU,WAAW,OAAO,KAAK,EAAE,KACtC,QAAO,QACL,QAAO,MAAM;AAAA,IACX,QAAQ,MAAM,QAAO;AAAA,IACrB,QAAQ,CAAC,QAAQ,OAAO,SAAS,UAAU,OAAO,IAAI,WAAW,GAAG,GAAG,OAAO,MAAM;AAAA,EACtF,CAAC,CACH,CACF,CACF;AAAA;AAGK,SAAS,OAAO,CAAC,UAA6B;AAAA,EACnD,QAAQ,UAAU,YAAY;AAAA,EAE9B,OAAO;AAAA,IACL,QAAQ,CAAC,UAAU,OAAO,UAAU,KAAK;AAAA,IACzC,QAAQ,WAAW,UAAU;AAAA,MAC3B,KAAK,CAAC,WAAW,QAAQ,QAAQ,OAAO,WAAW,IAAI,GAAG;AAAA,MAC1D,QAAQ;AAAA,MACR,OAAO;AAAA,IACT,CAAC;AAAA,IACD,MAAM,WAAW,UAAU;AAAA,MACzB,KAAK,CAAC,GAAG,QAAQ,SAAS,KAAK,IAAI,GAAG;AAAA,MACtC,QAAQ,QAAO;AAAA,MACf,OAAO;AAAA,IACT,CAAC;AAAA,IACD,iBAAiB,CAAC,QAAQ,OAAO,UAAU,SAAS,KAAK,IAAI,GAAG,GAAG,QAAO,IAAI;AAAA,IAC9E,MAAM,UAAU,UAAU,CAAC,cACzB,OAAO,UAAU,QAAQ,QAAQ,SAAS,GAAG,YAAY,CAC3D;AAAA,EACF;AAAA;;;AC3MF,mBAAS;AASF,SAAS,UAAU,GAAe;AAAA,EACvC,MAAM,UAAU,IAAI;AAAA,EAEpB,OAAO;AAAA,IACL,KAAK,CAAC,WAAW;AAAA,MACf,MAAM,QAAQ,QAAO,QAAQ,MAAM;AAAA,MAEnC,QAAQ,IAAI,KAAK;AAAA,MACjB,MAAM,YAAY,MAAM;AAAA,QACtB,QAAQ,OAAO,KAAK;AAAA,OACrB;AAAA;AAAA,IAEH,MAAM,YAAY;AAAA,MAChB,MAAM,QAAO,WAAW,MAAM,aAAa,OAAO,CAAC;AAAA;AAAA,EAEvD;AAAA;;;ACxBF,mBAAS,mBAAQ,mBAAQ;AAIlB,MAAM,mBAAmB,QAAO,YAAwB,EAAE,cAAc;AAAA,EAC7E,SAAS,QAAO;AAClB,CAAC,EAAE;AAAC;AAEJ,IAAM,UAA8D;AAAA,EAClE,QAAQ;AAAA,EACR,OAAO;AACT;AAGO,SAAS,OAAO,CACrB,KACA,UACgD;AAAA,EAChD,OAAO,QAAO,MAAM,QAAO,cAAc,QAAQ,SAAS,GAAG;AAAA,IAC3D,QAAQ,MACN,QAAO,KACL,IAAI,WAAW,EAAE,SAAS,6CAA6C,YAAY,CAAC,CACtF;AAAA,IACF,QAAQ,CAAC,WACP,cAAc,IAAI,CAAC,WAAW,OAAO,IAAI,QAAQ,CAAC,GAAG,GAAG,GAAG,CAAC,EAAE,KAC5D,QAAO,QACP,QAAO,SACL,MAAM,IAAI,WAAW,EAAE,SAAS,kBAAkB,cAAc,YAAY,CAAC,CAC/E,CACF;AAAA,EACJ,CAAC;AAAA;;;AC7BH,mBAAS,mBAAQ,mBAAQ;AAIlB,MAAM,sBAAsB,QAAO,YAA2B,EAAE,iBAAiB;AAAA,EACtF,SAAS,QAAO;AAClB,CAAC,EAAE;AAAC;AAoDJ,IAAM,SAAS,QAAO,MAAM;AAAA,EAC1B,QAAO,OAAO;AAAA,IACZ,MAAM,QAAO,OAAO,EAAE,SAAS,QAAO,OAAO,CAAC;AAAA,IAC9C,MAAM,QAAO,QAAQ,UAAU;AAAA,EACjC,CAAC;AAAA,EACD,QAAO,OAAO,EAAE,SAAS,QAAO,QAAQ,MAAM,QAAO,OAAO,CAAC;AAC/D,CAAC;AAID,SAAS,SAAS,CAAC,QAA8C;AAAA,EAC/D,MAAM,UAAU,QAAO,MAAM,QAAQ;AAAA,IACnC,QAAQ,MAAM;AAAA,IACd,QAAQ,CAAC,YAAY;AAAA,MACnB,IAAI,UAAU;AAAA,QAAS,OAAO,QAAQ,KAAK;AAAA,MAE3C,OAAO,QAAQ,SAAS,oBACpB,0EACA,oCAAoC,QAAQ;AAAA;AAAA,EAEpD,CAAC;AAAA,EAED,OAAO,IAAI,cAAc,EAAE,QAAQ,CAAC;AAAA;AAGtC,IAAM,aAAa,IAAI,cAAc;AAAA,EACnC,SAAS;AACX,CAAC;AAED,SAAS,OAA0C,CACjD,QACA,MACyC;AAAA,EACzC,OAAO,QAAO,WAAW;AAAA,IACvB,OAAO,CAAC,UAAU,UAAU,QAAO,oBAAoB,MAAM,EAAE,KAAK,CAAC;AAAA,IACrE,KAAK;AAAA,EACP,CAAC,EAAE,KACD,QAAO,QAAQ,CAAC,WACd,QAAO,aAAa,MAAM,EAAE,MAAM,EAAE,KAAK,QAAO,SAAS,MAAM,UAAU,CAAC,CAC5E,CACF;AAAA;AAGK,SAAS,UAAU,CAAC,MAA8B;AAAA,EACvD,QAAQ,QAAQ;AAAA,EAEhB,MAAM,UAAU,CAAC,cACf,QAAO,MAAM,KAAK,WAAW,SAAS,GAAG;AAAA,IACvC,QAAQ,OAAO,CAAC;AAAA,IAChB,QAAQ,CAAC,cAAc,EAAE,SAAS;AAAA,EACpC,CAAC;AAAA,EAEH,OAAO;AAAA,IACL,QAAQ,CAAC,WAAW,WAClB,QAAQ,SAAS,YAAY;AAAA,MAC3B,MAAM,SAAS,MAAM,IAAI,OAAO,EAAE,WAAW,OAAO,GAAG,QAAQ,SAAS,CAAC;AAAA,MAEzE,OAAO;AAAA,KACR;AAAA,IACH,QAAQ,CAAC,WAAW,WAClB,QAAQ,SAAS,YAAY;AAAA,MAC3B,MAAM,SAAS,MAAM,IAAI,OAAO,EAAE,WAAW,OAAO,GAAG,QAAQ,SAAS,CAAC;AAAA,MAEzE,OAAO;AAAA,KACR;AAAA,IACH,MAAM,CAAC,cACL,QAAQ,MAAM,YAAY;AAAA,MACxB,MAAM,SAAS,MAAM,IAAI,KAAK,EAAE,UAAU,GAAG,QAAQ,SAAS,CAAC;AAAA,MAE/D,OAAO;AAAA,KACR;AAAA,IACH,UAAU,CAAC,YACT,IAAI,OAAO,GAAG,WAAW,GAAG,WAAW;AAAA,MACrC,QAAO,IAAI,QAAO,oBAAoB,IAAI,EAAE,IAAI,GAAG,OAAO;AAAA,KAC3D;AAAA,IACH,SAAS,CAAC,cACR,QAAQ,MAAM,YAAY;AAAA,MACxB,MAAM,SAAS,MAAM,IAAI,QAAQ,EAAE,UAAU,GAAG,QAAQ,SAAS,CAAC;AAAA,MAElE,OAAO;AAAA,KACR;AAAA,EACL;AAAA;;;AC3IF;AACA,mBAAS;AACT,IAAM,cAAc,aAAW,CAAC;AAAA,EAC9B,KAAK,QAAQ;AAAA,EACb,MAAM;AAAA,EACN,YAAY;AAAA,EACZ,OAAO;AACT,GAAG;AAAA,EACD,KAAK,MAAM,QAAQ;AAAA,EACnB,MAAM;AAAA,EACN,YAAY;AAAA,EACZ,OAAO;AACT,GAAG;AAAA,EACD,KAAK,MAAM,QAAQ;AAAA,EACnB,MAAM;AAAA,EACN,YAAY;AAAA,EACZ,OAAO;AACT,GAAG;AAAA,EACD,KAAK,MAAM,QAAQ;AAAA,EACnB,MAAM;AAAA,EACN,YAAY;AAAA,EACZ,OAAO;AACT,CAAC;AACD,SAAS,OAAO,CAAC,YAAY,KAAK;AAAA,EAChC,MAAM,QAAQ,WAAW,aAAa;AAAA,IACpC,WAAW;AAAA,IACX,MAAM,MAAM,WAAW;AAAA,EACzB,IAAI;AAAA,IACF,MAAM,MAAM,WAAW;AAAA,EACzB;AAAA,EACA,OAAO;AAAA,IACL,OAAO;AAAA,IACP,IAAI,MAAM,WAAW;AAAA,IACrB,SAAS;AAAA,IACT,KAAK,WAAS;AAAA,MACZ,IAAI,WAAW,IAAI,QAAO,cAAc,KAAK,CAAC,CAAC;AAAA;AAAA,IAEjD;AAAA,IACA,OAAO,WAAW;AAAA,EACpB;AAAA;AAIK,SAAS,QAAQ,CAAC,OAAO;AAAA,EAC9B,MAAM,UAAU,UAAU;AAAA,EAC1B,MAAM,WAAW,YAAY,MAAM,OAAO,EAAE,IAAI,gBAAc,QAAQ,YAAY,MAAM,GAAG,CAAC;AAAA,EAC5F,QAAQ,OAAO,MAAM,OAAO;AAAA,IAC1B;AAAA,IACA,MAAM;AAAA,EACR,EAAE;AAAA,EACF,OAAO;AAAA;;;ACnDT,4BAAS;AAET,sBAAS;AACT,mBAAS;AACT,uCAAuB;;;ACHvB;AAeA,IAAM,SAAmD;AAAA,EACvD,MAAM,KAAK,QAAQ,SAAS;AAAA,EAC5B,OAAO,KAAK,QAAQ,SAAS;AAC/B;AAEO,SAAS,SAAS,CAAC,OAAsB,MAAiC;AAAA,EAC/E,OAAO;AAAA,IACL,OAAO,MAAM,KAAK;AAAA,IAClB,MAAM,MAAM,KAAK;AAAA,IACjB,OAAO;AAAA,MACL,MAAM,MAAM,KAAK;AAAA,MACjB,OAAO,MAAM,KAAK,SAAS,QAAQ;AAAA,MACnC,QAAQ,OAAO;AAAA,MACf,KAAK,MAAM,KAAK,SAAS,MAAM;AAAA,MAC/B,QAAQ,MAAM,KAAK,SAAS,QAAQ;AAAA,IACtC;AAAA,EACF;AAAA;;;AChCF,2BAAS;AACT,uBAAS;AACT,4BAAS;AACT,mBAAS;AACT,mBAAS;AACT,iBAAS;AACT,oBAAS;AACT,0BAAS;AAGT,kBAAS,kBAAO;AAChB,gBAAS,cAAK;;;ACXd,2BAAS;AACT,gBAAS;AACT,4BAAS;AACT,oBAAS;AACT,mBAAS;AACT,uBAAS;AACT,mBAAS;AACT,0BAAS;AAGT,kBAAS,kBAAO;AAChB;;;ACXA,kBAAS;AAeT,IAAM,mBAA+C;AAAA,EACnD,wBAAwB;AAAA,EACxB,kBAAkB;AAAA,EAClB,mBAAmB;AAAA,EACnB,iBAAiB;AAAA,EACjB,UAAU;AACZ;AAEA,IAAM,QAAQ,CAAC,MAAY,OAAe,gBAAgB,WAAuB;AAAA,EAC/E;AAAA,EACA,OAAO;AAAA,EACP;AAAA,EACA;AACF;AAGA,SAAS,cAAc,CAAC,MAAwB;AAAA,EAC9C,IAAI,KAAK,iBAAiB;AAAA,IAAe,OAAO,MAAM,OAAO,UAAU;AAAA,EAEvE,IAAI,KAAK,OAAO;AAAA,IAAU,OAAO,MAAM,OAAO,QAAQ;AAAA,EAEtD,IAAI,KAAK;AAAA,IAAO,OAAO,MAAM,QAAQ,OAAO;AAAA,EAE5C,IAAI,KAAK,OAAO;AAAA,IAAW,OAAO,MAAM,UAAU,SAAS;AAAA,EAE3D,IAAI,KAAK;AAAA,IAAQ,OAAO,MAAM,UAAU,QAAQ;AAAA,EAEhD,OAAO,KAAK,OAAO,WAAW,MAAM,SAAS,QAAQ,IAAI,MAAM,QAAQ,WAAW;AAAA;AAGpF,SAAS,eAAe,CAAC,OAAqC;AAAA,EAC5D,OAAO,OAAM,UAAU,OAAO;AAAA,IAC5B,QAAQ,MAAM,MAAM,OAAO,UAAU,IAAI;AAAA,IACzC,QAAQ,MAAM,MAAM,UAAU,UAAU,IAAI;AAAA,IAC5C,MAAM;AAAA,EACR,CAAC;AAAA;AAGH,SAAS,SAAS,CAAC,OAA+B;AAAA,EAChD,OAAO,EAAE,OAAO,MAAM,OAAO,OAAO,MAAM,eAAe,MAAM,eAAe,MAAM,MAAM,KAAK;AAAA;AAG1F,SAAS,UAAU,CAAC,QAA4B;AAAA,EACrD,OAAO,OAAM,UAAU,QAAQ;AAAA,IAC7B,OAAO,GAAG,eAAe,gBAAgB,SAAS,KAAK;AAAA,IACvD,SAAS,MAAM,MAAM,QAAQ,aAAa;AAAA,IAC1C,OAAO,GAAG,eAAe,UAAU,gBAAgB,SAAS,KAAK,CAAC;AAAA,IAClE,aAAa,GAAG,iBAAiB,MAAM,QAAQ,iBAAiB,WAAW;AAAA,EAC7E,CAAC;AAAA;;;AD/CH,IAAM,UAAU;AAAA,EACd,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACR;AAAA,EACA,OAAO;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,EACR;AAAA,EACA,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,MAAM;AAAA,EACR;AAAA,EACA,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACR;AACF;AAGA,IAAM,gBAAgB;AAAA,EACpB,WAAW;AAAA,IACT,MAAM;AAAA,IACN,MAAM;AAAA,EACR;AAAA,EACA,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,MAAM;AAAA,EACR;AAAA,EACA,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,MAAM;AAAA,EACR;AACF;AACA,IAAM,cAAc;AAIpB,SAAS,WAAW,CAAC,OAAO;AAAA,EAC1B,MAAM,UAAU,MAAM,IAAI,OAAO,cAAc,MAAM,MAAM,KAAK,SAAS,MAAM,MAAM,KAAK,MAAM;AAAA,EAChG,QAAQ,MAAM;AAAA,IACZ,IAAI,OAAO,gBAAgB,MAAM,GAC/B,QAAQ,gBAAgB,MAAM,GAC9B,QAAQ,gBAAgB,MAAM;AAAA,IAChC,aAAa,MAAM,KAAK;AAAA,IACxB,aAAa,MAAM,KAAK;AAAA,IACxB,SAAS,OAAO,MAAM,MAAM,MAAM,IAAI;AAAA,IACtC,SAAS,OAAO,MAAM,MAAM,MAAM,IAAI;AAAA,IACtC,SAAS,MAAM,SAAS,IAAI;AAAA,IAC5B,SAAS,SAAO;AAAA,MACd,IAAI,MAAM;AAAA,QACN,IAAI,MAAM,QAAQ;AAAA,MACpB,GACA,OAAO;AAAA,QACL,IAAI,MAAM;AAAA,MACZ;AAAA,MACF,QAAQ,IAAI,MAAM,IAAI,IAAI,UAAU,OAAO,SAAS,KAAK,IAAI,CAAC;AAAA,MAC9D,SAAS,IAAI,MAAM,IAAI,IAAI,UAAU,OAAO,SAAS,MAAM,IAAI,CAAC;AAAA,MAChE,OAAO;AAAA,OACN;AAAA,MACD,GAAG;AAAA,MACH,GAAG;AAAA,IACL,CAAC;AAAA,IACD,OAAO;AAAA,KACN;AAAA;AAIL,SAAS,MAAM,CAAC,OAAO;AAAA,EACrB,OAAO,OAAO,YAAY,aAAa,CAAC;AAAA,EACxC,IAAI,UAAU,QAAO,KAAK;AAAA,EAC1B,MAAM,UAAU,MAAM;AAAA,IACpB,MAAM,QAAQ,QAAO,MAAM,SAAS;AAAA,MAClC,QAAQ,MAAM;AAAA,MACd,QAAQ,UAAQ,KAAK;AAAA,IACvB,CAAC;AAAA,IACD,SAAS,KAAK,IAAI,GAAG,KAAK,CAAC;AAAA;AAAA,EAE7B,QAAQ,MAAM;AAAA,IACZ,IAAI,QAAQ,gBAAgB,KAAK,GAC/B,QAAQ,gBAAgB,KAAK,GAC7B,QAAQ,gBAAgB,MAAM;AAAA,IAChC,aAAa,OAAO,KAAK;AAAA,IACzB,aAAa,OAAO,KAAK;AAAA,IACzB,UAAU,OAAO,iBAAiB,KAAK;AAAA,IACvC,UAAU,OAAO,SAAS,MAAM;AAAA,IAChC,UAAU,OAAO,iBAAiB,QAAQ;AAAA,IAC1C,UAAU,OAAO,SAAS,CAAC;AAAA,IAC3B,SAAS,OAAO,kBAAkB,aAAa;AAAA,UACzC,KAAK,GAAG;AAAA,QACV,OAAO,MAAM;AAAA;AAAA,UAEX,KAAK,GAAG;AAAA,QACV,OAAO,MAAM;AAAA;AAAA,UAEX,OAAO,GAAG;AAAA,QACZ,OAAO,MAAM;AAAA;AAAA,IAEjB,CAAC,GAAG,IAAI;AAAA,IACR,SAAS,OAAO,kBAAkB,KAAK;AAAA,UACjC,IAAI,GAAG;AAAA,QACT,OAAO,MAAM,KAAK;AAAA,UAChB,QAAQ,MAAM,IAAI;AAAA,QACpB,CAAC;AAAA;AAAA,MAEH,UAAU,MAAM,kBAAkB,aAAa;AAAA,YACzC,KAAK,GAAG;AAAA,UACV,OAAO,MAAM;AAAA;AAAA,YAEX,KAAK,GAAG;AAAA,UACV,OAAO,MAAM;AAAA;AAAA,YAEX,OAAO,GAAG;AAAA,UACZ,OAAO,MAAM;AAAA;AAAA,MAEjB,CAAC;AAAA,IACH,CAAC,GAAG,IAAI;AAAA,IACR,MAAM,UAAQ;AAAA,MACZ,UAAU,QAAO,KAAK,IAAI;AAAA,MAC1B,QAAQ;AAAA,OACP,KAAK;AAAA,IACR,UAAU,OAAO,YAAY,CAAC;AAAA,IAC9B,UAAU,OAAO,uBAAuB,OAAO;AAAA,IAC/C,SAAS,OAAO,MAAM,MAAM,QAAQ;AAAA,IACpC,OAAO;AAAA,KACN;AAAA;AAEL,IAAM,UAAU,YAAU,OAAM,UAAU,QAAQ;AAAA,EAChD,OAAO;AAAA,IACL;AAAA,QACI,SAAS;AAAA,EACf,SAAS,MAAM;AAAA,EACf,OAAO;AAAA,IACL;AAAA,QACI,SAAS;AAAA,EACf,aAAa,MAAM;AACrB,CAAC;AACM,SAAS,cAAc,CAAC,OAAO;AAAA,EACpC,MAAM,QAAQ,MAAM,WAAW,MAAM,MAAM,MAAM;AAAA,EACjD,MAAM,QAAQ,MAAM,MAAM,QAAQ,MAAM,MAAM,EAAE;AAAA,EAChD,MAAM,QAAQ,MAAM,cAAc,MAAM;AAAA,EACxC,QAAQ,MAAM;AAAA,IACZ,IAAI,QAAQ,gBAAgB,KAAK;AAAA,IACjC,UAAU,OAAO,iBAAiB,QAAQ;AAAA,IAC1C,UAAU,OAAO,aAAa,MAAM;AAAA,MAClC,MAAM,OAAO,MAAM,MAAM,GAAG;AAAA,KAC7B;AAAA,IACD,SAAS,OAAO,kBAAkB,QAAQ;AAAA,UACpC,KAAK,GAAG;AAAA,QACV,OAAO,MAAM;AAAA;AAAA,UAEX,KAAK,GAAG;AAAA,QACV,OAAO,QAAQ,MAAM;AAAA;AAAA,UAEnB,OAAO,GAAG;AAAA,QACZ,OAAO,MAAM;AAAA;AAAA,UAEX,IAAI,GAAG;AAAA,QACT,OAAO,MAAM;AAAA;AAAA,UAEX,QAAQ,GAAG;AAAA,QACb,OAAO,EAAE,MAAM;AAAA,UACb,IAAI,QAAQ,gBAAgB,MAAM;AAAA,UAClC,SAAS,OAAO,MAAM,MAAM,MAAM,IAAI,KAAK;AAAA,UAC3C,SAAS,SAAO,UAAU,OAAO,SAAS;AAAA,YACxC,MAAM;AAAA,YACN,IAAI,MAAM;AAAA,YACV,eAAe,MAAM,EAAE;AAAA,UACzB,GAAG,GAAG,CAAC;AAAA,UACP,OAAO;AAAA,WACN,IAAI,MAAM;AAAA,UACX,IAAI,QAAQ,gBAAgB,MAAM;AAAA,UAClC,SAAS,OAAO,MAAM,IAAI,MAAM,EAAE,OAAO;AAAA,UACzC,SAAS,SAAO,UAAU,OAAO,SAAS;AAAA,YACxC,IAAI,MAAM;AAAA,UACZ,GAAG,GAAG,CAAC;AAAA,UACP,OAAO;AAAA,WACN,GAAG,kBAAkB,MAAM;AAAA,cACxB,IAAI,GAAG;AAAA,YACT,OAAO,MAAM,EAAE;AAAA;AAAA,cAEb,QAAQ,GAAG;AAAA,YACb,IAAI,QAAQ,gBAAgB,MAAM;AAAA,YAClC,aAAa,OAAO,iBAAiB,aAAU,CAAC;AAAA,YAChD,SAAS,SAAO,UAAU,OAAO,SAAS;AAAA,cACxC,IAAI,MAAM,QAAQ;AAAA,cAClB,QAAQ;AAAA,YACV,GAAG,GAAG,CAAC;AAAA,YACP,OAAO;AAAA;AAAA,QAEX,CAAC,CAAC;AAAA;AAAA,IAEN,CAAC,GAAG,IAAI;AAAA,IACR,SAAS,OAAO,kBAAkB,MAAM;AAAA,UAClC,IAAI,GAAG;AAAA,QACT,OAAO,CAAC,MAAM;AAAA;AAAA,UAEZ,QAAQ,GAAG;AAAA,QACb,OAAO,kBAAkB,QAAQ;AAAA,cAC3B,KAAK,GAAG;AAAA,YACV,OAAO,MAAM;AAAA;AAAA,cAEX,KAAK,GAAG;AAAA,YACV,OAAO,MAAM;AAAA;AAAA,cAEX,OAAO,GAAG;AAAA,YACZ,OAAO,MAAM;AAAA;AAAA,cAEX,IAAI,GAAG;AAAA,YACT,OAAO,MAAM;AAAA;AAAA,cAEX,QAAQ,GAAG;AAAA,YACb,IAAI,SAAS,gBAAgB,MAAM;AAAA,YACnC,SAAS,QAAQ,MAAM,QAAQ,MAAM,MAAM,MAAM,CAAC;AAAA,YAClD,SAAS,SAAO,UAAU,QAAQ,SAAS;AAAA,cACzC,IAAI,MAAM,QAAQ;AAAA,cAClB,eAAe,MAAM,EAAE;AAAA,YACzB,GAAG,GAAG,CAAC;AAAA,YACP,OAAO;AAAA;AAAA,QAEX,CAAC;AAAA;AAAA,IAEL,CAAC,GAAG,IAAI;AAAA,IACR,OAAO;AAAA,KACN;AAAA;AAEE,SAAS,MAAM,CAAC,OAAO;AAAA,EAC5B,MAAM,QAAQ,MAAM,GAAG,OAAO,MAAM,KAAK,KAAK,MAAM,UAAU,IAAI,OAAO;AAAA,EACzE,QAAQ,MAAM;AAAA,IACZ,IAAI,SAAS,gBAAgB,MAAM;AAAA,IACnC,SAAS,QAAQ,MAAM,gBAAM,MAAM,GAAG;AAAA,IACtC,SAAS,SAAO,UAAU,QAAQ,MAAM,MAAM,QAAQ,OAAO,GAAG,CAAC;AAAA,IACjE,OAAO;AAAA,KACN;AAAA;AAEE,SAAS,UAAU,CAAC,OAAO;AAAA,EAChC,OAAO,OAAM,UAAU,MAAM,KAAK;AAAA,IAChC,KAAK;AAAA,MACH;AAAA,UACI,kBAAkB,QAAQ;AAAA,MAC9B;AAAA,UACI,OAAO,GAAG;AAAA,QACZ,OAAO,MAAM;AAAA;AAAA,IAEjB,CAAC;AAAA,IACD,aAAa;AAAA,MACX;AAAA,MACA;AAAA,MACA;AAAA,UACI,kBAAkB,gBAAgB;AAAA,UAClC,OAAO,GAAG;AAAA,QACZ,OAAO,MAAM;AAAA;AAAA,MAEf;AAAA,MACA;AAAA,MACA;AAAA,UACI,MAAM,GAAG;AAAA,QACX,OAAO,MAAM;AAAA;AAAA,UAEX,OAAO,GAAG;AAAA,QACZ,OAAO,MAAM;AAAA;AAAA,IAEjB,CAAC;AAAA,EACH,CAAC;AAAA;;;ADrQH,IAAM,mBAAmB;AACzB,IAAM,YAAY,UAAQ,KAAK,QAAQ,IAAI,YAAU;AAAA,EACnD,YAAY,QAAO,cAAc,MAAM,UAAU;AAAA,EACjD,KAAK,MAAM;AAAA,EACX,QAAQ,MAAM;AAChB,EAAE;AACF,SAAS,OAAO,CAAC,OAAO;AAAA,EACtB,QAAQ,MAAM;AAAA,IACZ,IAAI,OAAO,iBAAgB,KAAK,GAC9B,QAAQ,iBAAgB,MAAM,GAC9B,QAAQ,iBAAgB,GAAG;AAAA,IAC7B,cAAa,MAAM,KAAK;AAAA,IACxB,WAAU,MAAM,iBAAiB,KAAK;AAAA,IACtC,WAAU,MAAM,OAAO,CAAC;AAAA,IACxB,WAAU,MAAM,eAAe,MAAM;AAAA,MACnC,IAAI,MAAM;AAAA,QAAa,MAAM,SAAS;AAAA,KACvC;AAAA,IACD,UAAS,MAAM,mBAAkB,OAAM;AAAA,UACjC,IAAI,GAAG;AAAA,QACT,OAAO,MAAM;AAAA;AAAA,UAEX,QAAQ,GAAG;AAAA,QACb,IAAI,QAAQ,iBAAgB,MAAM;AAAA,QAClC,UAAS,OAAO,MAAM,MAAM,YAAY,WAAM,QAAG;AAAA,QACjD,UAAS,SAAO,WAAU,OAAO,MAAM,MAAM,QAAQ,MAAM,GAAG,CAAC;AAAA,QAC/D,OAAO;AAAA;AAAA,IAEX,CAAC,GAAG,KAAK;AAAA,IACT,cAAa,OAAO,KAAK;AAAA,IACzB,cAAa,OAAO,kBAAiB,eAAe,CAAC;AAAA,IACrD,UAAS,SAAO,WAAU,OAAO,MAAM,MAAM,QAAQ,MAAM,GAAG,CAAC;AAAA,IAC/D,OAAO;AAAA,KACN;AAAA;AAEL,SAAS,IAAI,CAAC,OAAO;AAAA,EACnB,OAAO,mBAAkB,OAAM;AAAA,QACzB,QAAQ,GAAG;AAAA,MACb,QAAQ,MAAM;AAAA,QACZ,IAAI,QAAQ,iBAAgB,MAAM;AAAA,QAClC,cAAa,OAAO,kBAAiB,2BAA2B,CAAC;AAAA,QACjE,UAAS,SAAO,WAAU,OAAO,MAAM,MAAM,QAAQ,OAAO,GAAG,CAAC;AAAA,QAChE,OAAO;AAAA,SACN;AAAA;AAAA,QAED,IAAI,GAAG;AAAA,MACT,OAAO,MAAM,KAAK,QAAQ,SAAS;AAAA;AAAA,QAEjC,QAAQ,GAAG;AAAA,MACb,IAAI,QAAQ,iBAAgB,KAAK;AAAA,MACjC,WAAU,OAAO,iBAAiB,QAAQ;AAAA,MAC1C,UAAS,OAAO,mBAAkB,MAAK;AAAA,YACjC,IAAI,GAAG;AAAA,UACT,OAAO,OAAO,UAAU,MAAM,IAAI,CAAC;AAAA;AAAA,QAErC,UAAU,SAAO,mBAAkB,YAAY;AAAA,cACzC,OAAO,GAAG;AAAA,YACZ,OAAO,MAAM,KAAK,WAAW;AAAA;AAAA,cAE3B,MAAM,GAAG;AAAA,YACX,OAAO,MAAM;AAAA;AAAA,cAEX,OAAO,GAAG;AAAA,YACZ,OAAO,MAAM;AAAA;AAAA,UAEf;AAAA,QACF,CAAC;AAAA,MACH,CAAC,CAAC;AAAA,MACF,OAAO;AAAA;AAAA,EAEX,CAAC;AAAA;AAEI,SAAS,OAAO,CAAC,OAAO;AAAA,EAC7B,MAAM,cAAc,MAAM,MAAM,MAAM,SAAS,WAAW,MAAM,MAAM,KAAK,QAAQ,SAAS;AAAA,EAC5F,MAAM,OAAO,MAAM,OAAM,UAAU,MAAM,OAAO;AAAA,IAC9C,QAAQ;AAAA,MACN;AAAA,WACK,MAAM;AAAA,MACX,IAAI,QAAQ,iBAAgB,MAAM;AAAA,MAClC,UAAS,OAAO,OAAO;AAAA,MACvB,UAAS,SAAO,WAAU,OAAO,MAAM,MAAM,QAAQ,MAAM,KAAK,GAAG,CAAC;AAAA,MACpE,OAAO;AAAA,OACN;AAAA,IACH,SAAS,OAAO,MAAM;AAAA,MACpB,IAAI,QAAQ,iBAAgB,MAAM;AAAA,MAClC,cAAa,OAAO,kBAAiB,SAAS,CAAC;AAAA,MAC/C,UAAS,SAAO,WAAU,OAAO,MAAM,MAAM,QAAQ,OAAO,GAAG,CAAC;AAAA,MAChE,OAAO;AAAA,OACN;AAAA,IACH,OAAO;AAAA,MACL;AAAA,UACI,mBAAkB,MAAM;AAAA,UACxB,MAAM,GAAG;AAAA,QACX,OAAO,MAAM;AAAA;AAAA,UAEX,OAAO,GAAG;AAAA,QACZ,OAAO,MAAM;AAAA;AAAA,MAEf;AAAA,IACF,CAAC;AAAA,EACH,CAAC;AAAA,EACD,QAAQ,MAAM;AAAA,IACZ,IAAI,SAAS,iBAAgB,KAAK;AAAA,IAClC,WAAU,QAAQ,iBAAiB,QAAQ;AAAA,IAC3C,WAAU,QAAQ,OAAO,CAAC;AAAA,IAC1B,UAAS,QAAQ,mBAAkB,SAAS;AAAA,UACtC,SAAS,GAAG;AAAA,QACd,OAAO,MAAM;AAAA;AAAA,UAEX,WAAW,GAAG;AAAA,QAChB,OAAO,YAAY;AAAA;AAAA,UAEjB,QAAQ,GAAG;AAAA,QACb,OAAO,MAAM;AAAA;AAAA,UAEX,OAAO,GAAG;AAAA,QACZ,OAAO,MAAM;AAAA;AAAA,IAEjB,CAAC,GAAG,IAAI;AAAA,IACR,UAAS,QAAQ,mBAAkB,OAAM;AAAA,UACnC,IAAI,GAAG;AAAA,QACT,OAAO,CAAC,YAAY,KAAK,CAAC,MAAM;AAAA;AAAA,UAE9B,QAAQ,GAAG;AAAA,QACb,OAAO,KAAK;AAAA;AAAA,IAEhB,CAAC,GAAG,IAAI;AAAA,IACR,OAAO;AAAA,KACN;AAAA;;;AFrIL,SAAS,WAAW,GAAG;AAAA,EACrB,IAAI,SAAS;AAAA,EACb,OAAO;AAAA,IACL,UAAU,aAAW,YAAY;AAAA,IACjC,MAAM,MAAM;AAAA,MACV,UAAU;AAAA,MACV,OAAO;AAAA;AAAA,EAEX;AAAA;AAOK,SAAS,WAAW,CAAC,WAAW,SAAS,KAAK;AAAA,EACnD,OAAO,OAAO,YAAY,cAAa;AAAA,IACrC,MAAM;AAAA,EACR,CAAC;AAAA,EACD,MAAM,WAAW,YAAY;AAAA,EAC7B,UAAU,QAAQ,SAAS,UAAQ;AAAA,IACjC,IAAI,KAAK,cAAc,UAAU;AAAA,MAAG;AAAA,IACpC,SAAS,KAAK;AAAA,IACd,SAAS;AAAA,MACP,MAAM;AAAA,MACN;AAAA,IACF,CAAC;AAAA,GACF,CAAC;AAAA,EACF,aAAa,GAAG,WAAW,aAAW;AAAA,IACpC,MAAM,UAAU,SAAS,KAAK;AAAA,IAC9B,SAAS;AAAA,MACP,MAAM;AAAA,IACR,CAAC;AAAA,IACD,IAAI,QAAO,IAAI,QAAO,OAAO,QAAQ,KAAK,OAAO,CAAC,GAAG,YAAU;AAAA,MAC7D,IAAI,CAAC,SAAS,SAAS,OAAO;AAAA,QAAG;AAAA,MACjC,SAAS,OAAO,SAAS,YAAY;AAAA,QACnC,MAAM;AAAA,QACN,SAAS,OAAO,QAAQ;AAAA,MAC1B,IAAI;AAAA,QACF,MAAM;AAAA,QACN,MAAM,OAAO;AAAA,MACf,CAAC;AAAA,KACF,CAAC;AAAA,GACH,CAAC;AAAA,EACF,OAAO;AAAA;AAEF,SAAS,cAAc,CAAC,OAAO;AAAA,EACpC,MAAM,UAAU,WAAU;AAAA,EAC1B,MAAM,QAAQ,YAAY,MAAM,MAAM,WAAW,MAAM,SAAS,MAAM,GAAG;AAAA,EACzE,OAAO,mBAAkB,SAAS;AAAA,QAC5B,SAAS,GAAG;AAAA,MACd,OAAO,MAAM,UAAU,IAAI,MAAM,SAAS;AAAA;AAAA,QAExC,MAAM,GAAG;AAAA,MACX,OAAO,MAAM;AAAA;AAAA,IAEf,UAAU,MAAM;AAAA,MACd,MAAM,UAAU,OAAO,MAAM,SAAS;AAAA;AAAA,QAEpC,OAAO,GAAG;AAAA,MACZ,OAAO,UAAU,QAAQ,OAAO,QAAQ,SAAS;AAAA;AAAA,QAE/C,KAAK,GAAG;AAAA,MACV,OAAO,MAAM;AAAA;AAAA,EAEjB,CAAC;AAAA;;;AK5EH,mBAAS,mBAAQ;AAWjB,SAAS,cAAc,CAAC,IAA+B;AAAA,EACrD,MAAM,QAAQ,GAAG,OAAO,QAAQ;AAAA,EAEhC,OAAO,MAAM,SAAS,YAAY,QAAO,KAAK,MAAM,SAAS,IAAI,QAAO,KAAK;AAAA;AAGxE,SAAS,YAAY,CAAC,IAAsB;AAAA,EACjD,IAAI,OAAO;AAAA,EAGX,MAAM,SAAS,CAAI,SACjB,QAAO,kBACL,QAAO,KAAK,MAAM;AAAA,IAChB,OAAO;AAAA,GACR,GACD,MAAM,QAAO,QAAQ,IAAI,EAAE,KAAK,QAAO,IAAI,QAAO,aAAa,CAAC,GAChE,MACE,QAAO,KAAK,MAAM;AAAA,IAChB,OAAO;AAAA,GACR,CACL;AAAA,EAEF,OAAO;AAAA,IACL,SAAS,MAAM;AAAA,MACb,IAAI;AAAA,QAAM,GAAG,OAAO,MAAM;AAAA;AAAA,IAE5B,UAAU;AAAA,MACR,QAAQ,CAAC,OAAO,YACd,OAAO,YAAY;AAAA,QACjB,MAAM,SAAS,MAAM,GAAG,OAAO,OAAO,EAAE,SAAS,SAAS,MAAM,CAAC;AAAA,QAEjE,OAAO;AAAA,OACR;AAAA,MACH,QAAQ,CAAC,SAAS,YAAY;AAAA,QAC5B,GAAG,MAAM,KAAK,EAAE,SAAS,OAAO,iBAAiB,QAAQ,CAAC;AAAA;AAAA,MAE5D,QAAQ,CAAC,OAAO,gBACd,OAAO,YAAY;AAAA,QACjB,MAAM,SAAS,MAAM,GAAG,OAAO,OAAO,EAAE,aAAa,MAAM,CAAC;AAAA,QAE5D,OAAO;AAAA,OACR;AAAA,MACH,SAAS,MAAM,eAAe,EAAE;AAAA,IAClC;AAAA,EACF;AAAA;;;AhB1CF,IAAM,OAAO,SAAO,QAAQ,KAAK,QAAQ,QAAQ,EAAE,KAAK,QAAO,QAAQ,KAAY,CAAC;AACpF,IAAM,oBAAoB,aAAW,SAAO,cAAc,QAAQ,QAAQ;AAC1E,SAAS,iBAAiB,GAAG;AAAA,EAC3B,OAAO,WAAW,gBAAgB,cAAa,IAAI,GAAK;AAAA,EACxD,OAAO;AAAA,IACL,KAAK,eAAa,UAAU,EAAE,IAAI,SAAS;AAAA,IAC3C,QAAQ,eAAa;AAAA,MACnB,MAAM,OAAO,IAAI,IAAI,UAAU,CAAC;AAAA,MAChC,IAAI,CAAC,KAAK,OAAO,SAAS;AAAA,QAAG,KAAK,IAAI,SAAS;AAAA,MAC/C,aAAa,IAAI;AAAA;AAAA,EAErB;AAAA;AAIF,SAAS,UAAU,CAAC,SAAS;AAAA,EAC3B,OAAO,WAAW;AAAA,IAChB,YAAY,eAAa,SAAO,cAAc,QAAQ,KAAK,QAAQ,IAAI,SAAS,CAAC,EAAE,KAAK,SAAO,QAAQ,iBAAiB,GAAG,SAAO,OAAO,MAAM,SAAO,cAAc,QAAQ,QAAQ,CAAC,CAAC;AAAA,IACtL,KAAK,QAAQ,OAAO,IAAI,kBAAkB;AAAA,EAC5C,CAAC;AAAA;AAEH,IAAe,qBAAO,OAAO;AAAA,EAC3B,IAAI;AAAA,EACJ,KAAK,CAAC,SAAS;AAAA,IACb,MAAM,UAAU,WAAW,OAAO;AAAA,IAClC;AAAA,MACE;AAAA,MACA;AAAA,QACE,aAAa,QAAQ,EAAE;AAAA,IAC3B,MAAM,WAAW,QAAQ;AAAA,MACvB;AAAA,MACA;AAAA,MACA;AAAA,IACF,CAAC;AAAA,IACD,MAAM,YAAY,kBAAkB;AAAA,IACpC,MAAM,QAAQ,WAAW;AAAA,IACzB,MAAM,YAAY,CAAC,QAAQ,GAAG,KAAK;AAAA,MACjC,QAAQ;AAAA,MACR,QAAQ,MAAM,mBAAkB,UAAU;AAAA,QACxC,SAAS;AAAA,YACL,GAAG,GAAG;AAAA,UACR,OAAO,MAAM;AAAA;AAAA,MAEjB,CAAC;AAAA,IACH,CAAC,GAAG,QAAQ,GAAG,KAAK;AAAA,MAClB,QAAQ;AAAA,MACR,QAAQ;AAAA,QACN;AAAA,YACI,mBAAkB,gBAAgB;AAAA,QACtC;AAAA,QACA,QAAQ,SAAO;AAAA,UACb,MAAM,IAAI,SAAS,gBAAgB,GAAG,CAAC;AAAA;AAAA,YAErC,GAAG,GAAG;AAAA,UACR,OAAO,MAAM;AAAA;AAAA,QAEf;AAAA,QACA;AAAA,MACF,CAAC;AAAA,IACH,CAAC,CAAC;AAAA,IACF,OAAO,YAAY;AAAA,MACjB,WAAW,WAAW;AAAA,QAAW,QAAQ;AAAA,MACzC,QAAQ;AAAA,MACR,MAAM,MAAM,KAAK;AAAA;AAAA;AAGvB,CAAC;",
|
|
24
|
-
"debugId": "
|
|
23
|
+
"mappings": "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",
|
|
24
|
+
"debugId": "B855376DCF54FB4D64756E2164756E21",
|
|
25
25
|
"names": []
|
|
26
26
|
}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json.schemastore.org/package.json",
|
|
3
3
|
"name": "@hcrosse/opencode-pr-tracker",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.5.1",
|
|
5
5
|
"description": "Track GitHub pull requests in the OpenCode sidebar.",
|
|
6
6
|
"homepage": "https://github.com/hcrosse/opencode-pr-tracker#readme",
|
|
7
7
|
"bugs": {
|