@timurproko/a1 0.2.5-dev.698 → 0.2.5-dev.704
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/app/session-shell/session-shell.js +9 -8
- package/dist/composition/owned-ui.js +2 -0
- package/dist/contracts/presentation/index.d.ts +6 -1
- package/dist/contracts/presentation/index.js +4 -2
- package/dist/features/owned-ui/settings-app.d.ts +1 -1
- package/dist/features/owned-ui/settings-app.js +334 -63
- package/dist/integrations/pi/components/models-dialog.js +2 -2
- package/dist/integrations/pi/components/shell-editor-autocomplete.js +40 -2
- package/dist/integrations/pi/components/skills-dialog.js +2 -2
- package/dist/integrations/pi/components/upstream/components/owned-editor.d.ts +4 -2
- package/dist/integrations/pi/components/upstream/components/owned-editor.js +48 -12
- package/dist/integrations/pi/components/upstream/components/session-selector.js +14 -14
- package/dist/integrations/pi/components/upstream/components/thinking-selector.d.ts +5 -4
- package/dist/integrations/pi/components/upstream/components/thinking-selector.js +6 -4
- package/dist/integrations/pi/components/upstream/components/tree-selector.d.ts +7 -6
- package/dist/integrations/pi/components/upstream/components/tree-selector.js +24 -18
- package/dist/native/darwin-arm64/manifest.json +1 -1
- package/dist/native/linux-x64/manifest.json +1 -1
- package/dist/native/win32-x64/manifest.json +2 -2
- package/dist/native/win32-x64/process-guardian.exe +0 -0
- package/dist/ui/components/dialog-panel.d.ts +15 -0
- package/dist/ui/components/dialog-panel.js +50 -3
- package/dist/ui/components/index.d.ts +3 -3
- package/dist/ui/components/index.js +2 -2
- package/dist/ui/components/line-input.d.ts +2 -0
- package/dist/ui/components/line-input.js +2 -2
- package/dist/ui/components/prompt-input.d.ts +2 -2
- package/dist/ui/components/prompt-input.js +5 -5
- package/dist/ui/components/shortcut-hints.d.ts +8 -3
- package/dist/ui/components/shortcut-hints.js +25 -5
- package/dist/ui/components/shortcuts.d.ts +1 -1
- package/dist/ui/components/shortcuts.js +4 -0
- package/dist/ui/components/value-menu.js +3 -1
- package/dist/ui/settings/manager.d.ts +1 -0
- package/dist/ui/settings/manager.js +9 -3
- package/package.json +1 -1
|
@@ -285,7 +285,7 @@ export class OwnedUiSessionShell {
|
|
|
285
285
|
}),
|
|
286
286
|
...(terminal === undefined ? {} : { terminal: terminal }),
|
|
287
287
|
hardwareCursor: this.backend.view().terminal.hardwareCursor,
|
|
288
|
-
wheelScrollLines: initialPiSettings.fullscreenWheelScrollLines,
|
|
288
|
+
...(this.#customViewport ? {} : { wheelScrollLines: initialPiSettings.fullscreenWheelScrollLines }),
|
|
289
289
|
};
|
|
290
290
|
runtime = new PiTuiRuntimeAdapter(runtimeOptions);
|
|
291
291
|
this.runtime = runtime;
|
|
@@ -470,13 +470,14 @@ export class OwnedUiSessionShell {
|
|
|
470
470
|
if (typeof value !== "boolean")
|
|
471
471
|
throw new TypeError("Fullscreen copy-on-select setting is invalid");
|
|
472
472
|
this.root.setFullscreenCopyOnSelect(value);
|
|
473
|
-
} } } : {
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
473
|
+
} } } : {
|
|
474
|
+
fullscreenWheelScrollLines: { apply: (value) => {
|
|
475
|
+
if (value !== "auto" && (typeof value !== "number" || !Number.isSafeInteger(value) || value < 1 || value > 100)) {
|
|
476
|
+
throw new TypeError("Fullscreen wheel-scroll distance is invalid");
|
|
477
|
+
}
|
|
478
|
+
this.runtime.setWheelScrollLines(value);
|
|
479
|
+
} },
|
|
480
|
+
}),
|
|
480
481
|
});
|
|
481
482
|
if (this.#customViewport && promptHistory !== undefined) {
|
|
482
483
|
this.#promptHistoryImageSidecar = promptHistory.imageSidecar;
|
|
@@ -44,6 +44,8 @@ export async function composeOwnedUi(options = {}) {
|
|
|
44
44
|
configDir: resolveProductPaths().configDir,
|
|
45
45
|
profileId: options.profileId,
|
|
46
46
|
agentProvider: () => adapter.settingsPort(),
|
|
47
|
+
hiddenAgentSettingIds: ["fullscreenWheelScrollLines"],
|
|
48
|
+
agentSettingLabelOverrides: { fullscreenCopyOnSelect: "Copy on select" },
|
|
47
49
|
});
|
|
48
50
|
let releaseNotes = null;
|
|
49
51
|
let releaseNotesFailure;
|
|
@@ -9,6 +9,11 @@ export declare const DIALOG_CLOSE_SHORTCUT_HINT: Readonly<{
|
|
|
9
9
|
key: string;
|
|
10
10
|
action: string;
|
|
11
11
|
}>;
|
|
12
|
+
/** Canonical return guidance for a nested step within a dialog surface. */
|
|
13
|
+
export declare const DIALOG_BACK_SHORTCUT_HINT: Readonly<{
|
|
14
|
+
key: string;
|
|
15
|
+
action: string;
|
|
16
|
+
}>;
|
|
12
17
|
export interface ShortcutHintRoles {
|
|
13
18
|
key(label: string): string;
|
|
14
19
|
action(name: string): string;
|
|
@@ -16,7 +21,7 @@ export interface ShortcutHintRoles {
|
|
|
16
21
|
/** Applies the common display casing to each named key and letter in a shortcut label. */
|
|
17
22
|
export declare function displayShortcutKeyLabel(label: string): string;
|
|
18
23
|
/** Renders the canonical semantic shortcut row independently of either presentation framework. */
|
|
19
|
-
export declare function renderSemanticShortcutHints(entries: readonly SemanticShortcutHint[], roles: ShortcutHintRoles, indent?: number): string;
|
|
24
|
+
export declare function renderSemanticShortcutHints(entries: readonly SemanticShortcutHint[], roles: ShortcutHintRoles, indent?: number, separator?: string): string;
|
|
20
25
|
export interface PresentationComponentPort {
|
|
21
26
|
render(width: number): readonly string[];
|
|
22
27
|
invalidate(): void;
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
/** Canonical dismissal guidance for every A1-rendered dialog surface. */
|
|
2
2
|
export const DIALOG_CLOSE_SHORTCUT_HINT = Object.freeze({ key: "esc", action: "close" });
|
|
3
|
+
/** Canonical return guidance for a nested step within a dialog surface. */
|
|
4
|
+
export const DIALOG_BACK_SHORTCUT_HINT = Object.freeze({ key: "esc", action: "back" });
|
|
3
5
|
const SHORTCUT_KEY_NAMES = Object.freeze({
|
|
4
6
|
alt: "Alt", backspace: "Backspace", cmd: "Cmd", ctrl: "Ctrl", delete: "Delete", down: "Down", end: "End",
|
|
5
7
|
enter: "Enter", esc: "Esc", escape: "Escape", home: "Home", insert: "Insert", left: "Left", meta: "Meta",
|
|
@@ -18,7 +20,7 @@ export function displayShortcutKeyLabel(label) {
|
|
|
18
20
|
}).join("+")).join("/");
|
|
19
21
|
}
|
|
20
22
|
/** Renders the canonical semantic shortcut row independently of either presentation framework. */
|
|
21
|
-
export function renderSemanticShortcutHints(entries, roles, indent = 0) {
|
|
23
|
+
export function renderSemanticShortcutHints(entries, roles, indent = 0, separator = " ") {
|
|
22
24
|
const rendered = entries.flatMap(entry => {
|
|
23
25
|
if (entry.key === "" || (entry.key !== undefined && entry.key.trim().length === 0))
|
|
24
26
|
return [];
|
|
@@ -28,7 +30,7 @@ export function renderSemanticShortcutHints(entries, roles, indent = 0) {
|
|
|
28
30
|
const action = roles.action(entry.action);
|
|
29
31
|
return [entry.actionFirst ? `${action} ${key}` : `${key} ${action}`];
|
|
30
32
|
});
|
|
31
|
-
return `${" ".repeat(Math.max(0, indent))}${rendered.join(
|
|
33
|
+
return `${" ".repeat(Math.max(0, indent))}${rendered.join(separator)}`;
|
|
32
34
|
}
|
|
33
35
|
export function assertPresentationComponent(component) {
|
|
34
36
|
requiredFunctions(component, ["render", "invalidate"], "presentation component");
|
|
@@ -2,7 +2,7 @@ import type { AppHostServices, UiApp } from "../../ui/apps/index.js";
|
|
|
2
2
|
import { ShortcutRegistry, type PaneInputResult, type PaneMouseEvent, type PaneRect } from "../../ui/components/index.js";
|
|
3
3
|
import type { OwnedSettingsManager } from "../../ui/settings/index.js";
|
|
4
4
|
export { SETTINGS_APP_ID, SETTINGS_ROUTE } from "./settings-route.js";
|
|
5
|
-
type Action = "move-up" | "move-down" | "block-up" | "block-down" | "first" | "last" | "page-up" | "page-down" | "previous-value" | "next-value" | "activate" | "open-filter" | "close" | "part-previous" | "part-next" | "part-change";
|
|
5
|
+
type Action = "move-up" | "move-down" | "block-up" | "block-down" | "first" | "last" | "page-up" | "page-down" | "previous-value" | "next-value" | "activate" | "open-filter" | "close" | "undo" | "part-previous" | "part-next" | "part-change";
|
|
6
6
|
export declare const SETTINGS_SHORTCUTS: ShortcutRegistry<Action>;
|
|
7
7
|
/**
|
|
8
8
|
* The settings screen. Rows, sticky headers, scrolling, and the keymap come from
|