@chances-ai/tui 23.0.2 → 24.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api-key-prompt.js +1 -1
- package/dist/api-key-prompt.js.map +1 -1
- package/dist/app.js +1 -1
- package/dist/app.js.map +1 -1
- package/dist/help-view.js +1 -1
- package/dist/help-view.js.map +1 -1
- package/dist/ink-ext/index.d.ts +19 -0
- package/dist/ink-ext/index.d.ts.map +1 -0
- package/dist/ink-ext/index.js +6 -0
- package/dist/ink-ext/index.js.map +1 -0
- package/dist/ink-ext/keys.d.ts +34 -0
- package/dist/ink-ext/keys.d.ts.map +1 -0
- package/dist/ink-ext/keys.js +115 -0
- package/dist/ink-ext/keys.js.map +1 -0
- package/dist/ink-ext/provider.d.ts +43 -0
- package/dist/ink-ext/provider.d.ts.map +1 -0
- package/dist/ink-ext/provider.js +102 -0
- package/dist/ink-ext/provider.js.map +1 -0
- package/dist/ink-ext/registry.d.ts +58 -0
- package/dist/ink-ext/registry.d.ts.map +1 -0
- package/dist/ink-ext/registry.js +110 -0
- package/dist/ink-ext/registry.js.map +1 -0
- package/dist/ink-ext/resolver.d.ts +45 -0
- package/dist/ink-ext/resolver.d.ts.map +1 -0
- package/dist/ink-ext/resolver.js +77 -0
- package/dist/ink-ext/resolver.js.map +1 -0
- package/dist/ink-ext/types.d.ts +89 -0
- package/dist/ink-ext/types.d.ts.map +1 -0
- package/dist/ink-ext/types.js +18 -0
- package/dist/ink-ext/types.js.map +1 -0
- package/dist/modal.d.ts +1 -1
- package/dist/modal.d.ts.map +1 -1
- package/dist/select-multi.js +1 -1
- package/dist/select-multi.js.map +1 -1
- package/dist/select.js +1 -1
- package/dist/select.js.map +1 -1
- package/dist/slash-typeahead.js +1 -1
- package/dist/slash-typeahead.js.map +1 -1
- package/dist/theme.d.ts +11 -1
- package/dist/theme.d.ts.map +1 -1
- package/dist/theme.js +21 -2
- package/dist/theme.js.map +1 -1
- package/dist/user-question.d.ts +1 -1
- package/dist/user-question.d.ts.map +1 -1
- package/dist/user-question.js +1 -1
- package/dist/user-question.js.map +1 -1
- package/package.json +4 -6
package/dist/api-key-prompt.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { Box, Text } from "ink";
|
|
3
3
|
import { useState } from "react";
|
|
4
|
-
import { useKeybinding, useKeybindingContext, useTextInput } from "
|
|
4
|
+
import { useKeybinding, useKeybindingContext, useTextInput } from "./ink-ext/index.js";
|
|
5
5
|
import { useTheme } from "./theme-context.js";
|
|
6
6
|
/**
|
|
7
7
|
* (5.10 A4) Single-line masked credential input — now on the input bus rather
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-key-prompt.js","sourceRoot":"","sources":["../src/api-key-prompt.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAY,MAAM,OAAO,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"api-key-prompt.js","sourceRoot":"","sources":["../src/api-key-prompt.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAY,MAAM,OAAO,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvF,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE9C;;;;;;;;;;GAUG;AACH,MAAM,UAAU,YAAY,CAAC,EAC3B,QAAQ,EACR,QAAQ,GAIT;IACC,MAAM,EAAE,KAAK,EAAE,GAAG,QAAQ,EAAE,CAAC;IAC7B,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IAEvC,oBAAoB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACpC,aAAa,CAAC,cAAc,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;IAC1E,aAAa,CAAC,cAAc,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;IACrG,YAAY,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;QAClC,IAAI,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,MAAM;YAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;aAC5D,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI;YAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IACrE,CAAC,CAAC,CAAC;IAEH,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,WAAW,EAAC,OAAO,EAAC,WAAW,EAAE,KAAK,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAC,aACrF,MAAC,IAAI,IAAC,KAAK,EAAE,KAAK,CAAC,OAAO,6BAAe,QAAQ,0CAAgC,EACjF,MAAC,GAAG,IAAC,SAAS,EAAE,CAAC,aACf,KAAC,IAAI,0BAAU,EACf,KAAC,IAAI,IAAC,KAAK,EAAE,KAAK,CAAC,OAAO,YAAG,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAQ,IACzD,EACN,KAAC,IAAI,IAAC,QAAQ,2GAEP,IACH,CACP,CAAC;AACJ,CAAC"}
|
package/dist/app.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { Box, Static, Text, useApp } from "ink";
|
|
3
3
|
import { useEffect, useState, useSyncExternalStore } from "react";
|
|
4
|
-
import { KeybindingProvider, useKeybinding, useKeybindingContext, usePasteInput, useTextInput, } from "
|
|
4
|
+
import { KeybindingProvider, useKeybinding, useKeybindingContext, usePasteInput, useTextInput, } from "./ink-ext/index.js";
|
|
5
5
|
import { SlashTypeahead } from "./slash-typeahead.js";
|
|
6
6
|
// Re-exported for backward compat: `suggestSlashCommands`/`SlashSuggestion` moved
|
|
7
7
|
// to slash-typeahead.tsx (5.10 A3) but several call sites + tests import them here.
|
package/dist/app.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.tsx"],"names":[],"mappings":"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"}
|
package/dist/help-view.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { Box, Text } from "ink";
|
|
3
3
|
import { useState } from "react";
|
|
4
|
-
import { useKeybinding, useKeybindingContext } from "
|
|
4
|
+
import { useKeybinding, useKeybindingContext } from "./ink-ext/index.js";
|
|
5
5
|
import { Select } from "./select.js";
|
|
6
6
|
import { useTheme } from "./theme-context.js";
|
|
7
7
|
const TABS = ["general", "commands", "shortcuts"];
|
package/dist/help-view.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"help-view.js","sourceRoot":"","sources":["../src/help-view.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAY,MAAM,OAAO,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"help-view.js","sourceRoot":"","sources":["../src/help-view.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `@chances-ai/ink-ext` — the consistency layer for the TUI (5.10 A1).
|
|
3
|
+
*
|
|
4
|
+
* A central, ordered, interruptible input dispatcher on top of stock Ink 7: one
|
|
5
|
+
* root `useInput` feeds every keystroke into a context-priority resolver so a
|
|
6
|
+
* physical key fires exactly one action and outer contexts get nothing. This is
|
|
7
|
+
* the one capability stock Ink does not provide (and the one slice of
|
|
8
|
+
* claude-code's forked event system we rebuild).
|
|
9
|
+
*
|
|
10
|
+
* Pure core (zero Ink/React deps, exhaustively unit-tested) is exported now; the
|
|
11
|
+
* React provider + hooks land in the same major's wiring step.
|
|
12
|
+
*/
|
|
13
|
+
export type { Action, BindingMap, ContextName, ContextSpec, ContextSpecs, DispatchResult, KeyMeta, } from "./types.js";
|
|
14
|
+
export { FORCE_EXIT_TOKEN } from "./types.js";
|
|
15
|
+
export { keyToken, CONTEXT_SPECS, DEFAULT_BINDINGS } from "./keys.js";
|
|
16
|
+
export { dispatch, effectiveContexts, resolveAction, resolveTextSink } from "./resolver.js";
|
|
17
|
+
export { createKeybindingRegistry, type Handler, type KeybindingRegistry, type RegistryOptions, type TextHandler, } from "./registry.js";
|
|
18
|
+
export { KeybindingProvider, type KeybindingProviderProps, useKeybinding, useKeybindingContext, useTextInput, usePasteInput, useKeyboardHint, } from "./provider.js";
|
|
19
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ink-ext/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,YAAY,EACV,MAAM,EACN,UAAU,EACV,WAAW,EACX,WAAW,EACX,YAAY,EACZ,cAAc,EACd,OAAO,GACR,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAC5F,OAAO,EACL,wBAAwB,EACxB,KAAK,OAAO,EACZ,KAAK,kBAAkB,EACvB,KAAK,eAAe,EACpB,KAAK,WAAW,GACjB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,kBAAkB,EAClB,KAAK,uBAAuB,EAC5B,aAAa,EACb,oBAAoB,EACpB,YAAY,EACZ,aAAa,EACb,eAAe,GAChB,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export { FORCE_EXIT_TOKEN } from "./types.js";
|
|
2
|
+
export { keyToken, CONTEXT_SPECS, DEFAULT_BINDINGS } from "./keys.js";
|
|
3
|
+
export { dispatch, effectiveContexts, resolveAction, resolveTextSink } from "./resolver.js";
|
|
4
|
+
export { createKeybindingRegistry, } from "./registry.js";
|
|
5
|
+
export { KeybindingProvider, useKeybinding, useKeybindingContext, useTextInput, usePasteInput, useKeyboardHint, } from "./provider.js";
|
|
6
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ink-ext/index.ts"],"names":[],"mappings":"AAqBA,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAC5F,OAAO,EACL,wBAAwB,GAKzB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,kBAAkB,EAElB,aAAa,EACb,oBAAoB,EACpB,YAAY,EACZ,aAAa,EACb,eAAe,GAChB,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import type { BindingMap, ContextSpecs, KeyMeta } from "./types.js";
|
|
2
|
+
/**
|
|
3
|
+
* (5.10 A1) Normalize Ink's `(input, key)` pair into ONE canonical token. The
|
|
4
|
+
* resolver matches these tokens against the binding maps; anything that maps to
|
|
5
|
+
* a printable character (or the empty string) is left as-is and falls through to
|
|
6
|
+
* a text sink.
|
|
7
|
+
*
|
|
8
|
+
* Order matters: control/navigation keys are checked before the printable
|
|
9
|
+
* fallback. `ctrl+c` is special-cased first so it can never be shadowed by a
|
|
10
|
+
* context that happens to bind the literal `c` (force-exit is non-stoppable —
|
|
11
|
+
* codex R1 MUST-FIX #1). Pure function of its inputs; no Ink import.
|
|
12
|
+
*/
|
|
13
|
+
export declare function keyToken(input: string, key: KeyMeta): string;
|
|
14
|
+
/**
|
|
15
|
+
* Which contexts mask everything below them while active. The three overlays
|
|
16
|
+
* that fully own the screen (`Select`/`Confirmation`/`Modal`) are modal;
|
|
17
|
+
* `Autocomplete` is intentionally non-modal so the user keeps typing into Chat
|
|
18
|
+
* to filter, and `Chat`/`Global` are the base layers.
|
|
19
|
+
*/
|
|
20
|
+
export declare const CONTEXT_SPECS: ContextSpecs;
|
|
21
|
+
/**
|
|
22
|
+
* Default key→action bindings per context. Producers register handlers for
|
|
23
|
+
* these action names via `useKeybinding`. Free-text editing (printable chars,
|
|
24
|
+
* backspace) is NOT bound here — it flows to a context's text sink instead, so
|
|
25
|
+
* e.g. `space` is `select:toggle` in a chooser but a literal space in Chat
|
|
26
|
+
* (Chat simply doesn't bind it).
|
|
27
|
+
*
|
|
28
|
+
* Note `Autocomplete.return → autocomplete:execute`: this is how submit-gating
|
|
29
|
+
* works. While the typeahead is active (non-modal, so Chat still receives typed
|
|
30
|
+
* chars), `return` resolves to the typeahead's execute action BEFORE Chat's
|
|
31
|
+
* `chat:submit` — the menu must be acted on or dismissed first.
|
|
32
|
+
*/
|
|
33
|
+
export declare const DEFAULT_BINDINGS: BindingMap;
|
|
34
|
+
//# sourceMappingURL=keys.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../src/ink-ext/keys.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAEpE;;;;;;;;;;GAUG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,MAAM,CAkB5D;AAED;;;;;GAKG;AACH,eAAO,MAAM,aAAa,EAAE,YAO3B,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,gBAAgB,EAAE,UA4C9B,CAAC"}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* (5.10 A1) Normalize Ink's `(input, key)` pair into ONE canonical token. The
|
|
3
|
+
* resolver matches these tokens against the binding maps; anything that maps to
|
|
4
|
+
* a printable character (or the empty string) is left as-is and falls through to
|
|
5
|
+
* a text sink.
|
|
6
|
+
*
|
|
7
|
+
* Order matters: control/navigation keys are checked before the printable
|
|
8
|
+
* fallback. `ctrl+c` is special-cased first so it can never be shadowed by a
|
|
9
|
+
* context that happens to bind the literal `c` (force-exit is non-stoppable —
|
|
10
|
+
* codex R1 MUST-FIX #1). Pure function of its inputs; no Ink import.
|
|
11
|
+
*/
|
|
12
|
+
export function keyToken(input, key) {
|
|
13
|
+
// Force exit first — `` is the raw ETX some terminals send for Ctrl-C.
|
|
14
|
+
if (key.ctrl && (input === "c" || input === ""))
|
|
15
|
+
return "ctrl+c";
|
|
16
|
+
if (key.return)
|
|
17
|
+
return "return";
|
|
18
|
+
if (key.escape)
|
|
19
|
+
return "escape";
|
|
20
|
+
if (key.upArrow)
|
|
21
|
+
return "up";
|
|
22
|
+
if (key.downArrow)
|
|
23
|
+
return "down";
|
|
24
|
+
if (key.leftArrow)
|
|
25
|
+
return "left";
|
|
26
|
+
if (key.rightArrow)
|
|
27
|
+
return "right";
|
|
28
|
+
if (key.pageUp)
|
|
29
|
+
return "pageup";
|
|
30
|
+
if (key.pageDown)
|
|
31
|
+
return "pagedown";
|
|
32
|
+
if (key.tab)
|
|
33
|
+
return key.shift ? "shift+tab" : "tab";
|
|
34
|
+
if (key.backspace)
|
|
35
|
+
return "backspace";
|
|
36
|
+
if (key.delete)
|
|
37
|
+
return "delete";
|
|
38
|
+
if (input === " ")
|
|
39
|
+
return "space";
|
|
40
|
+
// Printable char (or "" for unmapped keys) — the resolver won't match it, so
|
|
41
|
+
// it falls through to the active text sink.
|
|
42
|
+
return input;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Which contexts mask everything below them while active. The three overlays
|
|
46
|
+
* that fully own the screen (`Select`/`Confirmation`/`Modal`) are modal;
|
|
47
|
+
* `Autocomplete` is intentionally non-modal so the user keeps typing into Chat
|
|
48
|
+
* to filter, and `Chat`/`Global` are the base layers.
|
|
49
|
+
*/
|
|
50
|
+
export const CONTEXT_SPECS = {
|
|
51
|
+
Global: { modal: false },
|
|
52
|
+
Chat: { modal: false },
|
|
53
|
+
Autocomplete: { modal: false },
|
|
54
|
+
Select: { modal: true },
|
|
55
|
+
Confirmation: { modal: true },
|
|
56
|
+
Modal: { modal: true },
|
|
57
|
+
};
|
|
58
|
+
/**
|
|
59
|
+
* Default key→action bindings per context. Producers register handlers for
|
|
60
|
+
* these action names via `useKeybinding`. Free-text editing (printable chars,
|
|
61
|
+
* backspace) is NOT bound here — it flows to a context's text sink instead, so
|
|
62
|
+
* e.g. `space` is `select:toggle` in a chooser but a literal space in Chat
|
|
63
|
+
* (Chat simply doesn't bind it).
|
|
64
|
+
*
|
|
65
|
+
* Note `Autocomplete.return → autocomplete:execute`: this is how submit-gating
|
|
66
|
+
* works. While the typeahead is active (non-modal, so Chat still receives typed
|
|
67
|
+
* chars), `return` resolves to the typeahead's execute action BEFORE Chat's
|
|
68
|
+
* `chat:submit` — the menu must be acted on or dismissed first.
|
|
69
|
+
*/
|
|
70
|
+
export const DEFAULT_BINDINGS = {
|
|
71
|
+
Chat: {
|
|
72
|
+
return: "chat:submit",
|
|
73
|
+
"shift+tab": "chat:cycleApprovalMode",
|
|
74
|
+
// (v22) Esc interrupts the streaming turn. The handler is gated to `busy`,
|
|
75
|
+
// and a non-busy Esc is a harmless no-op. When the slash typeahead is active
|
|
76
|
+
// the (higher-priority, non-modal) `Autocomplete` context owns `escape`
|
|
77
|
+
// (dismiss), so this only fires for a bare streaming Chat.
|
|
78
|
+
escape: "chat:cancel",
|
|
79
|
+
},
|
|
80
|
+
Autocomplete: {
|
|
81
|
+
up: "autocomplete:previous",
|
|
82
|
+
down: "autocomplete:next",
|
|
83
|
+
tab: "autocomplete:accept",
|
|
84
|
+
return: "autocomplete:execute",
|
|
85
|
+
escape: "autocomplete:dismiss",
|
|
86
|
+
},
|
|
87
|
+
Select: {
|
|
88
|
+
up: "select:previous",
|
|
89
|
+
down: "select:next",
|
|
90
|
+
// (5.10b) Left/Right move between QuestionView tabs. Other Select consumers
|
|
91
|
+
// (model/session pickers) simply don't register these actions, so the
|
|
92
|
+
// resolver finds no handler and the arrow falls through harmlessly.
|
|
93
|
+
left: "select:prevTab",
|
|
94
|
+
right: "select:nextTab",
|
|
95
|
+
pageup: "select:pageUp",
|
|
96
|
+
pagedown: "select:pageDown",
|
|
97
|
+
return: "select:accept",
|
|
98
|
+
escape: "select:cancel",
|
|
99
|
+
space: "select:toggle",
|
|
100
|
+
},
|
|
101
|
+
Confirmation: {
|
|
102
|
+
up: "confirm:previous",
|
|
103
|
+
down: "confirm:next",
|
|
104
|
+
return: "confirm:accept",
|
|
105
|
+
escape: "confirm:cancel",
|
|
106
|
+
space: "confirm:toggle",
|
|
107
|
+
},
|
|
108
|
+
// Generic modal (e.g. the masked API-key prompt): a free-text body with
|
|
109
|
+
// accept/cancel actions; printable editing flows to its text sink.
|
|
110
|
+
Modal: {
|
|
111
|
+
return: "modal:accept",
|
|
112
|
+
escape: "modal:cancel",
|
|
113
|
+
},
|
|
114
|
+
};
|
|
115
|
+
//# sourceMappingURL=keys.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keys.js","sourceRoot":"","sources":["../../src/ink-ext/keys.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;GAUG;AACH,MAAM,UAAU,QAAQ,CAAC,KAAa,EAAE,GAAY;IAClD,wEAAwE;IACxE,IAAI,GAAG,CAAC,IAAI,IAAI,CAAC,KAAK,KAAK,GAAG,IAAI,KAAK,KAAK,GAAG,CAAC;QAAE,OAAO,QAAQ,CAAC;IAClE,IAAI,GAAG,CAAC,MAAM;QAAE,OAAO,QAAQ,CAAC;IAChC,IAAI,GAAG,CAAC,MAAM;QAAE,OAAO,QAAQ,CAAC;IAChC,IAAI,GAAG,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAC7B,IAAI,GAAG,CAAC,SAAS;QAAE,OAAO,MAAM,CAAC;IACjC,IAAI,GAAG,CAAC,SAAS;QAAE,OAAO,MAAM,CAAC;IACjC,IAAI,GAAG,CAAC,UAAU;QAAE,OAAO,OAAO,CAAC;IACnC,IAAI,GAAG,CAAC,MAAM;QAAE,OAAO,QAAQ,CAAC;IAChC,IAAI,GAAG,CAAC,QAAQ;QAAE,OAAO,UAAU,CAAC;IACpC,IAAI,GAAG,CAAC,GAAG;QAAE,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC;IACpD,IAAI,GAAG,CAAC,SAAS;QAAE,OAAO,WAAW,CAAC;IACtC,IAAI,GAAG,CAAC,MAAM;QAAE,OAAO,QAAQ,CAAC;IAChC,IAAI,KAAK,KAAK,GAAG;QAAE,OAAO,OAAO,CAAC;IAClC,6EAA6E;IAC7E,4CAA4C;IAC5C,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,MAAM,aAAa,GAAiB;IACzC,MAAM,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE;IACxB,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE;IACtB,YAAY,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE;IAC9B,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IACvB,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IAC7B,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;CACvB,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAe;IAC1C,IAAI,EAAE;QACJ,MAAM,EAAE,aAAa;QACrB,WAAW,EAAE,wBAAwB;QACrC,2EAA2E;QAC3E,6EAA6E;QAC7E,wEAAwE;QACxE,2DAA2D;QAC3D,MAAM,EAAE,aAAa;KACtB;IACD,YAAY,EAAE;QACZ,EAAE,EAAE,uBAAuB;QAC3B,IAAI,EAAE,mBAAmB;QACzB,GAAG,EAAE,qBAAqB;QAC1B,MAAM,EAAE,sBAAsB;QAC9B,MAAM,EAAE,sBAAsB;KAC/B;IACD,MAAM,EAAE;QACN,EAAE,EAAE,iBAAiB;QACrB,IAAI,EAAE,aAAa;QACnB,4EAA4E;QAC5E,sEAAsE;QACtE,oEAAoE;QACpE,IAAI,EAAE,gBAAgB;QACtB,KAAK,EAAE,gBAAgB;QACvB,MAAM,EAAE,eAAe;QACvB,QAAQ,EAAE,iBAAiB;QAC3B,MAAM,EAAE,eAAe;QACvB,MAAM,EAAE,eAAe;QACvB,KAAK,EAAE,eAAe;KACvB;IACD,YAAY,EAAE;QACZ,EAAE,EAAE,kBAAkB;QACtB,IAAI,EAAE,cAAc;QACpB,MAAM,EAAE,gBAAgB;QACxB,MAAM,EAAE,gBAAgB;QACxB,KAAK,EAAE,gBAAgB;KACxB;IACD,wEAAwE;IACxE,mEAAmE;IACnE,KAAK,EAAE;QACL,MAAM,EAAE,cAAc;QACtB,MAAM,EAAE,cAAc;KACvB;CACF,CAAC"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { type JSX, type ReactNode } from "react";
|
|
2
|
+
import { type Handler, type PasteHandler, type RegistryOptions, type TextHandler } from "./registry.js";
|
|
3
|
+
import type { Action, ContextName } from "./types.js";
|
|
4
|
+
export interface KeybindingProviderProps extends RegistryOptions {
|
|
5
|
+
children: ReactNode;
|
|
6
|
+
/** Whether the single root `useInput` is active (default true). Set false to
|
|
7
|
+
* hand raw input to a suspended sub-UI (e.g. the `/terminal` passthrough). */
|
|
8
|
+
active?: boolean;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* (5.10 A1) The ONE Ink input consumer in the tree. Every keystroke flows
|
|
12
|
+
* through a single `useInput` into the framework-free {@link createKeybindingRegistry},
|
|
13
|
+
* which resolves it to exactly one action / text-sink / force-exit by context
|
|
14
|
+
* priority — giving stock Ink the ordered, interruptible dispatch it lacks.
|
|
15
|
+
* Components below register via the hooks; none of them call `useInput`.
|
|
16
|
+
*/
|
|
17
|
+
export declare function KeybindingProvider({ children, active, onForceExit, ...options }: KeybindingProviderProps): JSX.Element;
|
|
18
|
+
/**
|
|
19
|
+
* Register an action handler scoped to a context. The handler closure may change
|
|
20
|
+
* every render (we read it via a ref), so the registration only churns when
|
|
21
|
+
* `context`/`action`/`active` change — keeping dispatch stable.
|
|
22
|
+
*/
|
|
23
|
+
export declare function useKeybinding(action: Action, handler: Handler, opts: {
|
|
24
|
+
context: ContextName;
|
|
25
|
+
active?: boolean;
|
|
26
|
+
}): void;
|
|
27
|
+
/** Push a context onto the active stack while mounted/active (most-recent = top). */
|
|
28
|
+
export declare function useKeybindingContext(context: ContextName, active?: boolean): void;
|
|
29
|
+
/** Register the free-text sink for a context (typed chars / backspace that no
|
|
30
|
+
* action binding claimed). Same stable-wrapper pattern as {@link useKeybinding}. */
|
|
31
|
+
export declare function useTextInput(context: ContextName, onText: TextHandler, opts?: {
|
|
32
|
+
active?: boolean;
|
|
33
|
+
}): void;
|
|
34
|
+
/** Register the paste sink for a context (the full bracketed-paste payload, with
|
|
35
|
+
* newlines). Without one, a context's paste falls back to its text sink with
|
|
36
|
+
* newlines stripped. Same stable-wrapper pattern as {@link useTextInput}. */
|
|
37
|
+
export declare function usePasteInput(context: ContextName, onPaste: PasteHandler, opts?: {
|
|
38
|
+
active?: boolean;
|
|
39
|
+
}): void;
|
|
40
|
+
/** The key token currently bound to an action in a context — for on-screen hints
|
|
41
|
+
* that must always match the live keymap (returns e.g. `"return"`, `"escape"`). */
|
|
42
|
+
export declare function useKeyboardHint(context: ContextName, action: Action): string | undefined;
|
|
43
|
+
//# sourceMappingURL=provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/ink-ext/provider.tsx"],"names":[],"mappings":"AACA,OAAO,EAML,KAAK,GAAG,EACR,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AACf,OAAO,EAEL,KAAK,OAAO,EAEZ,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,WAAW,EACjB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAUtD,MAAM,WAAW,uBAAwB,SAAQ,eAAe;IAC9D,QAAQ,EAAE,SAAS,CAAC;IACpB;mFAC+E;IAC/E,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,EACjC,QAAQ,EACR,MAAa,EACb,WAAW,EACX,GAAG,OAAO,EACX,EAAE,uBAAuB,GAAG,GAAG,CAAC,OAAO,CA0BvC;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE;IAAE,OAAO,EAAE,WAAW,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,GAC/C,IAAI,CAUN;AAED,qFAAqF;AACrF,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,UAAO,GAAG,IAAI,CAO9E;AAED;qFACqF;AACrF,wBAAgB,YAAY,CAC1B,OAAO,EAAE,WAAW,EACpB,MAAM,EAAE,WAAW,EACnB,IAAI,GAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAA;CAAO,GAC9B,IAAI,CASN;AAED;;8EAE8E;AAC9E,wBAAgB,aAAa,CAC3B,OAAO,EAAE,WAAW,EACpB,OAAO,EAAE,YAAY,EACrB,IAAI,GAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAA;CAAO,GAC9B,IAAI,CASN;AAED;oFACoF;AACpF,wBAAgB,eAAe,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAExF"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useInput, usePaste } from "ink";
|
|
3
|
+
import { createContext, useCallback, useContext, useEffect, useRef, } from "react";
|
|
4
|
+
import { createKeybindingRegistry, } from "./registry.js";
|
|
5
|
+
const KbContext = createContext(null);
|
|
6
|
+
function useRegistry() {
|
|
7
|
+
const reg = useContext(KbContext);
|
|
8
|
+
if (!reg)
|
|
9
|
+
throw new Error("ink-ext hooks must be used inside a <KeybindingProvider>");
|
|
10
|
+
return reg;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* (5.10 A1) The ONE Ink input consumer in the tree. Every keystroke flows
|
|
14
|
+
* through a single `useInput` into the framework-free {@link createKeybindingRegistry},
|
|
15
|
+
* which resolves it to exactly one action / text-sink / force-exit by context
|
|
16
|
+
* priority — giving stock Ink the ordered, interruptible dispatch it lacks.
|
|
17
|
+
* Components below register via the hooks; none of them call `useInput`.
|
|
18
|
+
*/
|
|
19
|
+
export function KeybindingProvider({ children, active = true, onForceExit, ...options }) {
|
|
20
|
+
// The registry is created ONCE and lives for the provider's lifetime (its
|
|
21
|
+
// stack/handler maps must persist across renders). `base`/`bindings`/`specs`
|
|
22
|
+
// are therefore mount-time only — conventionally static. `onForceExit`,
|
|
23
|
+
// however, is a callback that may change identity each render, so route it
|
|
24
|
+
// through a ref (codex R2 SHOULD-FIX): the registry holds a stable wrapper
|
|
25
|
+
// that always calls the LATEST handler, never a stale first-render closure.
|
|
26
|
+
const onForceExitRef = useRef(onForceExit);
|
|
27
|
+
onForceExitRef.current = onForceExit;
|
|
28
|
+
const registryRef = useRef(null);
|
|
29
|
+
registryRef.current ??= createKeybindingRegistry({
|
|
30
|
+
...options,
|
|
31
|
+
onForceExit: () => onForceExitRef.current?.(),
|
|
32
|
+
});
|
|
33
|
+
const onInput = useCallback((input, key) => {
|
|
34
|
+
registryRef.current?.handleKey(input, key);
|
|
35
|
+
}, []);
|
|
36
|
+
useInput(onInput, { isActive: active });
|
|
37
|
+
// (5.10b) A SEPARATE native channel: Ink's `usePaste` enables bracketed-paste
|
|
38
|
+
// and delivers the whole pasted string here (newlines intact) WITHOUT routing
|
|
39
|
+
// it through `useInput` — so a multi-line paste no longer trips chat-submit.
|
|
40
|
+
usePaste((text) => registryRef.current?.handlePaste(text), { isActive: active });
|
|
41
|
+
return _jsx(KbContext.Provider, { value: registryRef.current, children: children });
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Register an action handler scoped to a context. The handler closure may change
|
|
45
|
+
* every render (we read it via a ref), so the registration only churns when
|
|
46
|
+
* `context`/`action`/`active` change — keeping dispatch stable.
|
|
47
|
+
*/
|
|
48
|
+
export function useKeybinding(action, handler, opts) {
|
|
49
|
+
const reg = useRegistry();
|
|
50
|
+
const handlerRef = useRef(handler);
|
|
51
|
+
handlerRef.current = handler;
|
|
52
|
+
const active = opts.active ?? true;
|
|
53
|
+
const { context } = opts;
|
|
54
|
+
useEffect(() => {
|
|
55
|
+
if (!active)
|
|
56
|
+
return;
|
|
57
|
+
return reg.registerHandler(context, action, () => handlerRef.current());
|
|
58
|
+
}, [reg, context, action, active]);
|
|
59
|
+
}
|
|
60
|
+
/** Push a context onto the active stack while mounted/active (most-recent = top). */
|
|
61
|
+
export function useKeybindingContext(context, active = true) {
|
|
62
|
+
const reg = useRegistry();
|
|
63
|
+
useEffect(() => {
|
|
64
|
+
if (!active)
|
|
65
|
+
return;
|
|
66
|
+
reg.pushContext(context);
|
|
67
|
+
return () => reg.popContext(context);
|
|
68
|
+
}, [reg, context, active]);
|
|
69
|
+
}
|
|
70
|
+
/** Register the free-text sink for a context (typed chars / backspace that no
|
|
71
|
+
* action binding claimed). Same stable-wrapper pattern as {@link useKeybinding}. */
|
|
72
|
+
export function useTextInput(context, onText, opts = {}) {
|
|
73
|
+
const reg = useRegistry();
|
|
74
|
+
const handlerRef = useRef(onText);
|
|
75
|
+
handlerRef.current = onText;
|
|
76
|
+
const active = opts.active ?? true;
|
|
77
|
+
useEffect(() => {
|
|
78
|
+
if (!active)
|
|
79
|
+
return;
|
|
80
|
+
return reg.registerTextHandler(context, (input, key) => handlerRef.current(input, key));
|
|
81
|
+
}, [reg, context, active]);
|
|
82
|
+
}
|
|
83
|
+
/** Register the paste sink for a context (the full bracketed-paste payload, with
|
|
84
|
+
* newlines). Without one, a context's paste falls back to its text sink with
|
|
85
|
+
* newlines stripped. Same stable-wrapper pattern as {@link useTextInput}. */
|
|
86
|
+
export function usePasteInput(context, onPaste, opts = {}) {
|
|
87
|
+
const reg = useRegistry();
|
|
88
|
+
const handlerRef = useRef(onPaste);
|
|
89
|
+
handlerRef.current = onPaste;
|
|
90
|
+
const active = opts.active ?? true;
|
|
91
|
+
useEffect(() => {
|
|
92
|
+
if (!active)
|
|
93
|
+
return;
|
|
94
|
+
return reg.registerPasteHandler(context, (text) => handlerRef.current(text));
|
|
95
|
+
}, [reg, context, active]);
|
|
96
|
+
}
|
|
97
|
+
/** The key token currently bound to an action in a context — for on-screen hints
|
|
98
|
+
* that must always match the live keymap (returns e.g. `"return"`, `"escape"`). */
|
|
99
|
+
export function useKeyboardHint(context, action) {
|
|
100
|
+
return useRegistry().bindingForAction(context, action);
|
|
101
|
+
}
|
|
102
|
+
//# sourceMappingURL=provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/ink-ext/provider.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import type { Action, BindingMap, ContextName, ContextSpecs, DispatchResult, KeyMeta } from "./types.js";
|
|
2
|
+
/** A registered action handler. Takes no args — the producer closes over what it needs. */
|
|
3
|
+
export type Handler = () => void;
|
|
4
|
+
/** A text sink: receives the raw key when no action binding matched. */
|
|
5
|
+
export type TextHandler = (input: string, key: KeyMeta) => void;
|
|
6
|
+
/** A paste sink: receives a full bracketed-paste payload (may contain newlines). */
|
|
7
|
+
export type PasteHandler = (text: string) => void;
|
|
8
|
+
export interface KeybindingRegistry {
|
|
9
|
+
/** Push an overlay context onto the active stack (most-recent = top). */
|
|
10
|
+
pushContext(context: ContextName): void;
|
|
11
|
+
/** Remove the most-recent occurrence of a context from the stack. */
|
|
12
|
+
popContext(context: ContextName): void;
|
|
13
|
+
/** Current active stack (bottom→top); returns a copy. */
|
|
14
|
+
getStack(): ContextName[];
|
|
15
|
+
/** Register an action handler; returns an unregister fn. Last writer wins per
|
|
16
|
+
* `(context, action)` (a dev warning fires on an overwrite when `debug`). */
|
|
17
|
+
registerHandler(context: ContextName, action: Action, handler: Handler): () => void;
|
|
18
|
+
/** Register a text sink for a context; returns an unregister fn. */
|
|
19
|
+
registerTextHandler(context: ContextName, handler: TextHandler): () => void;
|
|
20
|
+
/** Register a paste sink for a context; returns an unregister fn. A context
|
|
21
|
+
* with no paste sink falls back to its text sink with newlines stripped. */
|
|
22
|
+
registerPasteHandler(context: ContextName, handler: PasteHandler): () => void;
|
|
23
|
+
/** Route a bracketed-paste payload to the topmost active paste sink, else the
|
|
24
|
+
* topmost text sink (newlines stripped so a single-line sink stays single). */
|
|
25
|
+
handlePaste(text: string): {
|
|
26
|
+
kind: "paste";
|
|
27
|
+
context: ContextName;
|
|
28
|
+
} | {
|
|
29
|
+
kind: "unhandled";
|
|
30
|
+
};
|
|
31
|
+
/** Tokenize + dispatch + invoke the matching handler/text-sink/force-exit.
|
|
32
|
+
* Returns the decision so wiring can be asserted without spying. */
|
|
33
|
+
handleKey(input: string, key: KeyMeta): DispatchResult;
|
|
34
|
+
/** Reverse lookup: which key token is bound to `action` in `context` (for
|
|
35
|
+
* on-screen hints that must always match the live keymap). */
|
|
36
|
+
bindingForAction(context: ContextName, action: Action): string | undefined;
|
|
37
|
+
}
|
|
38
|
+
export interface RegistryOptions {
|
|
39
|
+
/** Base context that sits at the bottom of the stack (default `"Chat"`). */
|
|
40
|
+
base?: ContextName;
|
|
41
|
+
/** Override the key→action maps (default {@link DEFAULT_BINDINGS}). */
|
|
42
|
+
bindings?: BindingMap;
|
|
43
|
+
/** Override the modal-masking specs (default {@link CONTEXT_SPECS}). */
|
|
44
|
+
specs?: ContextSpecs;
|
|
45
|
+
/** Called when `ctrl+c` is dispatched — the non-stoppable force-exit path. */
|
|
46
|
+
onForceExit?: () => void;
|
|
47
|
+
/** Emit a console warning when an action handler is overwritten (dev aid). */
|
|
48
|
+
debug?: boolean;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* (5.10 A1) The plain-JS heart of the input bus — NO React/Ink. The provider is
|
|
52
|
+
* a thin wrapper that owns one of these in a ref and feeds it Ink's keystrokes;
|
|
53
|
+
* keeping it framework-free lets the wiring (register → key → handler fires,
|
|
54
|
+
* outer contexts get nothing, modal masking, force-exit) be unit-tested as data
|
|
55
|
+
* rather than through a TTY.
|
|
56
|
+
*/
|
|
57
|
+
export declare function createKeybindingRegistry(opts?: RegistryOptions): KeybindingRegistry;
|
|
58
|
+
//# sourceMappingURL=registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/ink-ext/registry.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAEzG,2FAA2F;AAC3F,MAAM,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC;AACjC,wEAAwE;AACxE,MAAM,MAAM,WAAW,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,KAAK,IAAI,CAAC;AAChE,oFAAoF;AACpF,MAAM,MAAM,YAAY,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;AAElD,MAAM,WAAW,kBAAkB;IACjC,yEAAyE;IACzE,WAAW,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI,CAAC;IACxC,qEAAqE;IACrE,UAAU,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI,CAAC;IACvC,yDAAyD;IACzD,QAAQ,IAAI,WAAW,EAAE,CAAC;IAC1B;kFAC8E;IAC9E,eAAe,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,IAAI,CAAC;IACpF,oEAAoE;IACpE,mBAAmB,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,GAAG,MAAM,IAAI,CAAC;IAC5E;iFAC6E;IAC7E,oBAAoB,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,YAAY,GAAG,MAAM,IAAI,CAAC;IAC9E;oFACgF;IAChF,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG;QAAE,IAAI,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,WAAW,CAAA;KAAE,GAAG;QAAE,IAAI,EAAE,WAAW,CAAA;KAAE,CAAC;IAC3F;yEACqE;IACrE,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,cAAc,CAAC;IACvD;mEAC+D;IAC/D,gBAAgB,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;CAC5E;AAED,MAAM,WAAW,eAAe;IAC9B,4EAA4E;IAC5E,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,uEAAuE;IACvE,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB,wEAAwE;IACxE,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,8EAA8E;IAC9E,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,8EAA8E;IAC9E,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,GAAE,eAAoB,GAAG,kBAAkB,CAuGvF"}
|