@fusion.dev/helix 0.208.1 → 0.210.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/api.json +1 -1
- package/custom-elements.json +1 -1
- package/dist/element-events.generated.js +9 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/log/root/log-root.css.js +1 -1
- package/dist/terminal/index.d.ts +1 -0
- package/dist/terminal/index.js +1 -0
- package/dist/terminal/root/terminal-root.css.d.ts +1 -0
- package/dist/terminal/root/terminal-root.css.js +2 -0
- package/dist/terminal/root/terminal-root.d.ts +62 -0
- package/dist/terminal/root/terminal-root.js +28 -0
- package/examples.json +1 -1
- package/lint.json +1 -1
- package/package.json +6 -6
- package/skills/helix/SKILL.md +2 -2
- package/types/jsx.d.ts +908 -6
- package/types/svelte.d.ts +1 -0
- package/types/vue.d.ts +237 -0
- package/types/words.d.ts +112 -0
package/types/jsx.d.ts
CHANGED
|
@@ -240,6 +240,13 @@ import type {
|
|
|
240
240
|
HelixTabs,
|
|
241
241
|
HelixTag,
|
|
242
242
|
HelixTagGroup,
|
|
243
|
+
HelixTerminal,
|
|
244
|
+
HelixTerminalBellEvent,
|
|
245
|
+
HelixTerminalInputEvent,
|
|
246
|
+
HelixTerminalLinkEvent,
|
|
247
|
+
HelixTerminalResizeEvent,
|
|
248
|
+
HelixTerminalRestartEvent,
|
|
249
|
+
HelixTerminalTitleEvent,
|
|
243
250
|
HelixText,
|
|
244
251
|
HelixTextarea,
|
|
245
252
|
HelixTimeInput,
|
|
@@ -38834,6 +38841,330 @@ select. */
|
|
|
38834
38841
|
textContent?: (string | number) | undefined;
|
|
38835
38842
|
};
|
|
38836
38843
|
|
|
38844
|
+
/** `HelixTerminal` component event */
|
|
38845
|
+
export type HelixTerminalElementEvent<E = Event> = TypedEvent<HelixTerminal, E>;
|
|
38846
|
+
/** `helix-copy` event type */
|
|
38847
|
+
export type HelixTerminalHelixCopyElementEvent =
|
|
38848
|
+
HelixTerminalElementEvent<HelixCopyEvent>;
|
|
38849
|
+
/** `helix-terminal-bell` event type */
|
|
38850
|
+
export type HelixTerminalHelixTerminalBellElementEvent =
|
|
38851
|
+
HelixTerminalElementEvent<HelixTerminalBellEvent>;
|
|
38852
|
+
/** `helix-terminal-input` event type */
|
|
38853
|
+
export type HelixTerminalHelixTerminalInputElementEvent =
|
|
38854
|
+
HelixTerminalElementEvent<HelixTerminalInputEvent>;
|
|
38855
|
+
/** `helix-terminal-link` event type */
|
|
38856
|
+
export type HelixTerminalHelixTerminalLinkElementEvent =
|
|
38857
|
+
HelixTerminalElementEvent<HelixTerminalLinkEvent>;
|
|
38858
|
+
/** `helix-terminal-resize` event type */
|
|
38859
|
+
export type HelixTerminalHelixTerminalResizeElementEvent =
|
|
38860
|
+
HelixTerminalElementEvent<HelixTerminalResizeEvent>;
|
|
38861
|
+
/** `helix-terminal-restart` event type */
|
|
38862
|
+
export type HelixTerminalHelixTerminalRestartElementEvent =
|
|
38863
|
+
HelixTerminalElementEvent<HelixTerminalRestartEvent>;
|
|
38864
|
+
/** `helix-terminal-title` event type */
|
|
38865
|
+
export type HelixTerminalHelixTerminalTitleElementEvent =
|
|
38866
|
+
HelixTerminalElementEvent<HelixTerminalTitleEvent>;
|
|
38867
|
+
|
|
38868
|
+
export type HelixTerminalProps = {
|
|
38869
|
+
/** Covers the container instead of taking a height of its own, for a
|
|
38870
|
+
terminal that fills a pane. The container needs a position, such as
|
|
38871
|
+
`position: relative`. */
|
|
38872
|
+
fill?: (HelixTerminal["fill"]) | undefined;
|
|
38873
|
+
/** How the frame stands off the page. Unset, it is outlined. `plain` draws
|
|
38874
|
+
no edge or corners, for a pane that draws its own. */
|
|
38875
|
+
separation?: (HelixTerminal["separation"]) | undefined;
|
|
38876
|
+
/** The clear button's label. */
|
|
38877
|
+
"clear-label"?: (HelixTerminal["clearLabel"]) | undefined;
|
|
38878
|
+
/** The clear button's label. */
|
|
38879
|
+
clearLabel?: (HelixTerminal["clearLabel"]) | undefined;
|
|
38880
|
+
/** The grid's width in character cells. Set it with `rows` to fix the grid's size; unset, the grid fills the frame. */
|
|
38881
|
+
columns?: (HelixTerminal["columns"]) | undefined;
|
|
38882
|
+
/** Which built-in controls the header shows, as a list of `find`, `copy`,
|
|
38883
|
+
`clear`, and `fullscreen`, or `none`. Absent is `find clear`. */
|
|
38884
|
+
controls?: (HelixTerminal["controls"]) | undefined;
|
|
38885
|
+
/** The name of the row of controls, read by screen readers. */
|
|
38886
|
+
"controls-label"?: (HelixTerminal["controlsLabel"]) | undefined;
|
|
38887
|
+
/** The name of the row of controls, read by screen readers. */
|
|
38888
|
+
controlsLabel?: (HelixTerminal["controlsLabel"]) | undefined;
|
|
38889
|
+
/** What screen readers hear after a copy. */
|
|
38890
|
+
"copied-label"?: (HelixTerminal["copiedLabel"]) | undefined;
|
|
38891
|
+
/** What screen readers hear after a copy. */
|
|
38892
|
+
copiedLabel?: (HelixTerminal["copiedLabel"]) | undefined;
|
|
38893
|
+
/** The copy button's label. */
|
|
38894
|
+
"copy-label"?: (HelixTerminal["copyLabel"]) | undefined;
|
|
38895
|
+
/** The copy button's label. */
|
|
38896
|
+
copyLabel?: (HelixTerminal["copyLabel"]) | undefined;
|
|
38897
|
+
/** How the process exited, which the page sets when it does. While it is set,
|
|
38898
|
+
the status line says it, the frame sends no input, and Restart is shown.
|
|
38899
|
+
Clear it when a new process starts. */
|
|
38900
|
+
"exit-code"?: (HelixTerminal["exitCode"] | `${number}`) | undefined;
|
|
38901
|
+
/** How the process exited, which the page sets when it does. While it is set,
|
|
38902
|
+
the status line says it, the frame sends no input, and Restart is shown.
|
|
38903
|
+
Clear it when a new process starts. */
|
|
38904
|
+
exitCode?: (HelixTerminal["exitCode"]) | undefined;
|
|
38905
|
+
/** What the status line says once the process has exited. `{code}` is its
|
|
38906
|
+
exit code, written as the process gave it, and code `0` is a clean exit. */
|
|
38907
|
+
"exited-label"?: (HelixTerminal["exitedLabel"]) | undefined;
|
|
38908
|
+
/** What the status line says once the process has exited. `{code}` is its
|
|
38909
|
+
exit code, written as the process gave it, and code `0` is a clean exit. */
|
|
38910
|
+
exitedLabel?: (HelixTerminal["exitedLabel"]) | undefined;
|
|
38911
|
+
/** The terminal's name where `label` is empty and the host has no `aria-label`. */
|
|
38912
|
+
"fallback-label"?: (HelixTerminal["fallbackLabel"]) | undefined;
|
|
38913
|
+
/** The terminal's name where `label` is empty and the host has no `aria-label`. */
|
|
38914
|
+
fallbackLabel?: (HelixTerminal["fallbackLabel"]) | undefined;
|
|
38915
|
+
/** The label of the button that closes the find bar. */
|
|
38916
|
+
"find-close-label"?: (HelixTerminal["findCloseLabel"]) | undefined;
|
|
38917
|
+
/** The label of the button that closes the find bar. */
|
|
38918
|
+
findCloseLabel?: (HelixTerminal["findCloseLabel"]) | undefined;
|
|
38919
|
+
/** The name of the find bar's row of buttons, read by screen readers. */
|
|
38920
|
+
"find-controls-label"?: (HelixTerminal["findControlsLabel"]) | undefined;
|
|
38921
|
+
/** The name of the find bar's row of buttons, read by screen readers. */
|
|
38922
|
+
findControlsLabel?: (HelixTerminal["findControlsLabel"]) | undefined;
|
|
38923
|
+
/** The find button's label, and the find field's name and placeholder. */
|
|
38924
|
+
"find-label"?: (HelixTerminal["findLabel"]) | undefined;
|
|
38925
|
+
/** The find button's label, and the find field's name and placeholder. */
|
|
38926
|
+
findLabel?: (HelixTerminal["findLabel"]) | undefined;
|
|
38927
|
+
/** The next match button's label. */
|
|
38928
|
+
"find-next-label"?: (HelixTerminal["findNextLabel"]) | undefined;
|
|
38929
|
+
/** The next match button's label. */
|
|
38930
|
+
findNextLabel?: (HelixTerminal["findNextLabel"]) | undefined;
|
|
38931
|
+
/** The previous match button's label. */
|
|
38932
|
+
"find-previous-label"?: (HelixTerminal["findPreviousLabel"]) | undefined;
|
|
38933
|
+
/** The previous match button's label. */
|
|
38934
|
+
findPreviousLabel?: (HelixTerminal["findPreviousLabel"]) | undefined;
|
|
38935
|
+
/** The fullscreen button's label. */
|
|
38936
|
+
"fullscreen-label"?: (HelixTerminal["fullscreenLabel"]) | undefined;
|
|
38937
|
+
/** The fullscreen button's label. */
|
|
38938
|
+
fullscreenLabel?: (HelixTerminal["fullscreenLabel"]) | undefined;
|
|
38939
|
+
/** The name of the element the reader types into, which the renderer draws. */
|
|
38940
|
+
"input-label"?: (HelixTerminal["inputLabel"]) | undefined;
|
|
38941
|
+
/** The name of the element the reader types into, which the renderer draws. */
|
|
38942
|
+
inputLabel?: (HelixTerminal["inputLabel"]) | undefined;
|
|
38943
|
+
/** The terminal's name, in the header and for screen readers, such as the
|
|
38944
|
+
shell or the folder it runs in. Several terminals on a page need names
|
|
38945
|
+
that tell them apart. */
|
|
38946
|
+
label?: (HelixTerminal["label"]) | undefined;
|
|
38947
|
+
/** What the find bar says of its matches. `{index}` is the current match,
|
|
38948
|
+
counting from 1, and `{count}` how many there are. */
|
|
38949
|
+
"matches-label"?: (HelixTerminal["matchesLabel"]) | undefined;
|
|
38950
|
+
/** What the find bar says of its matches. `{index}` is the current match,
|
|
38951
|
+
counting from 1, and `{count}` how many there are. */
|
|
38952
|
+
matchesLabel?: (HelixTerminal["matchesLabel"]) | undefined;
|
|
38953
|
+
/** Draws the output and sends no input, with no cursor, for a transcript or
|
|
38954
|
+
a command an agent ran. The attribute is `readonly`, the platform's
|
|
38955
|
+
spelling. */
|
|
38956
|
+
readonly?: (HelixTerminal["readOnly"]) | undefined;
|
|
38957
|
+
/** Draws the output and sends no input, with no cursor, for a transcript or
|
|
38958
|
+
a command an agent ran. The attribute is `readonly`, the platform's
|
|
38959
|
+
spelling. */
|
|
38960
|
+
readOnly?: (HelixTerminal["readOnly"]) | undefined;
|
|
38961
|
+
/** The Restart button's label. */
|
|
38962
|
+
"restart-label"?: (HelixTerminal["restartLabel"]) | undefined;
|
|
38963
|
+
/** The Restart button's label. */
|
|
38964
|
+
restartLabel?: (HelixTerminal["restartLabel"]) | undefined;
|
|
38965
|
+
/** The grid's height in lines. Set it with `columns` to fix the grid's size; unset, the grid fills the frame. */
|
|
38966
|
+
rows?: (HelixTerminal["rows"]) | undefined;
|
|
38967
|
+
/** Keeps the grid as lines a screen reader moves through, and says new
|
|
38968
|
+
output as it arrives. Off by default, since it costs time on every
|
|
38969
|
+
write. Connect it to a setting your reader can turn on. */
|
|
38970
|
+
"screen-reader-mode"?: (HelixTerminal["screenReaderMode"]) | undefined;
|
|
38971
|
+
/** Keeps the grid as lines a screen reader moves through, and says new
|
|
38972
|
+
output as it arrives. Off by default, since it costs time on every
|
|
38973
|
+
write. Connect it to a setting your reader can turn on. */
|
|
38974
|
+
screenReaderMode?: (HelixTerminal["screenReaderMode"]) | undefined;
|
|
38975
|
+
/** What the terminal's input describes to a screen reader. `{key}` is the key that switches Tab. */
|
|
38976
|
+
"tab-hint-label"?: (HelixTerminal["tabHintLabel"]) | undefined;
|
|
38977
|
+
/** What the terminal's input describes to a screen reader. `{key}` is the key that switches Tab. */
|
|
38978
|
+
tabHintLabel?: (HelixTerminal["tabHintLabel"]) | undefined;
|
|
38979
|
+
/** What the status line says while Tab moves focus. `{key}` is the key that switches it back. */
|
|
38980
|
+
"tab-moves-focus-label"?: (HelixTerminal["tabMovesFocusLabel"]) | undefined;
|
|
38981
|
+
/** What the status line says while Tab moves focus. `{key}` is the key that switches it back. */
|
|
38982
|
+
tabMovesFocusLabel?: (HelixTerminal["tabMovesFocusLabel"]) | undefined;
|
|
38983
|
+
/** What screen readers hear when Tab goes back to typing in the terminal. */
|
|
38984
|
+
"tab-types-label"?: (HelixTerminal["tabTypesLabel"]) | undefined;
|
|
38985
|
+
/** What screen readers hear when Tab goes back to typing in the terminal. */
|
|
38986
|
+
tabTypesLabel?: (HelixTerminal["tabTypesLabel"]) | undefined;
|
|
38987
|
+
|
|
38988
|
+
/** The copy control or its key put the selection on the clipboard. */
|
|
38989
|
+
"onhelix-copy"?: ((e: HelixTerminalHelixCopyElementEvent) => void) | undefined;
|
|
38990
|
+
/** The program rang the bell. The frame flashes once. */
|
|
38991
|
+
"onhelix-terminal-bell"?: ((
|
|
38992
|
+
e: HelixTerminalHelixTerminalBellElementEvent,
|
|
38993
|
+
) => void) | undefined;
|
|
38994
|
+
/** The reader typed or pasted, with `data` encoded for the program. Write it to the process. Not sent while `readonly`, or once `exit-code` is set. */
|
|
38995
|
+
"onhelix-terminal-input"?: ((
|
|
38996
|
+
e: HelixTerminalHelixTerminalInputElementEvent,
|
|
38997
|
+
) => void) | undefined;
|
|
38998
|
+
/** A link in the output was activated, with its `href`. Cancelable: cancel it to open the link yourself. Left alone, a web address opens in a new tab. */
|
|
38999
|
+
"onhelix-terminal-link"?: ((
|
|
39000
|
+
e: HelixTerminalHelixTerminalLinkElementEvent,
|
|
39001
|
+
) => void) | undefined;
|
|
39002
|
+
/** The grid changed size, with `columns`, `rows`, `width`, and `height`. Resize the process's pseudo-terminal to match. */
|
|
39003
|
+
"onhelix-terminal-resize"?: ((
|
|
39004
|
+
e: HelixTerminalHelixTerminalResizeElementEvent,
|
|
39005
|
+
) => void) | undefined;
|
|
39006
|
+
/** The Restart button was pressed after the process exited. Start a new process and clear `exit-code`. */
|
|
39007
|
+
"onhelix-terminal-restart"?: ((
|
|
39008
|
+
e: HelixTerminalHelixTerminalRestartElementEvent,
|
|
39009
|
+
) => void) | undefined;
|
|
39010
|
+
/** The program set its title, with `title`. The frame keeps its own `label`. */
|
|
39011
|
+
"onhelix-terminal-title"?: ((
|
|
39012
|
+
e: HelixTerminalHelixTerminalTitleElementEvent,
|
|
39013
|
+
) => void) | undefined;
|
|
39014
|
+
};
|
|
39015
|
+
|
|
39016
|
+
export type HelixTerminalSolidJsProps = {
|
|
39017
|
+
/** Covers the container instead of taking a height of its own, for a
|
|
39018
|
+
terminal that fills a pane. The container needs a position, such as
|
|
39019
|
+
`position: relative`. */
|
|
39020
|
+
"prop:fill"?: (HelixTerminal["fill"]) | undefined;
|
|
39021
|
+
/** How the frame stands off the page. Unset, it is outlined. `plain` draws
|
|
39022
|
+
no edge or corners, for a pane that draws its own. */
|
|
39023
|
+
"prop:separation"?: (HelixTerminal["separation"]) | undefined;
|
|
39024
|
+
/** The clear button's label. */
|
|
39025
|
+
"attr:clear-label"?: (HelixTerminal["clearLabel"]) | undefined;
|
|
39026
|
+
/** The clear button's label. */
|
|
39027
|
+
"prop:clearLabel"?: (HelixTerminal["clearLabel"]) | undefined;
|
|
39028
|
+
/** The grid's width in character cells. Set it with `rows` to fix the grid's size; unset, the grid fills the frame. */
|
|
39029
|
+
"prop:columns"?: (HelixTerminal["columns"]) | undefined;
|
|
39030
|
+
/** Which built-in controls the header shows, as a list of `find`, `copy`,
|
|
39031
|
+
`clear`, and `fullscreen`, or `none`. Absent is `find clear`. */
|
|
39032
|
+
"prop:controls"?: (HelixTerminal["controls"]) | undefined;
|
|
39033
|
+
/** The name of the row of controls, read by screen readers. */
|
|
39034
|
+
"attr:controls-label"?: (HelixTerminal["controlsLabel"]) | undefined;
|
|
39035
|
+
/** The name of the row of controls, read by screen readers. */
|
|
39036
|
+
"prop:controlsLabel"?: (HelixTerminal["controlsLabel"]) | undefined;
|
|
39037
|
+
/** What screen readers hear after a copy. */
|
|
39038
|
+
"attr:copied-label"?: (HelixTerminal["copiedLabel"]) | undefined;
|
|
39039
|
+
/** What screen readers hear after a copy. */
|
|
39040
|
+
"prop:copiedLabel"?: (HelixTerminal["copiedLabel"]) | undefined;
|
|
39041
|
+
/** The copy button's label. */
|
|
39042
|
+
"attr:copy-label"?: (HelixTerminal["copyLabel"]) | undefined;
|
|
39043
|
+
/** The copy button's label. */
|
|
39044
|
+
"prop:copyLabel"?: (HelixTerminal["copyLabel"]) | undefined;
|
|
39045
|
+
/** How the process exited, which the page sets when it does. While it is set,
|
|
39046
|
+
the status line says it, the frame sends no input, and Restart is shown.
|
|
39047
|
+
Clear it when a new process starts. */
|
|
39048
|
+
"attr:exit-code"?: (HelixTerminal["exitCode"] | `${number}`) | undefined;
|
|
39049
|
+
/** How the process exited, which the page sets when it does. While it is set,
|
|
39050
|
+
the status line says it, the frame sends no input, and Restart is shown.
|
|
39051
|
+
Clear it when a new process starts. */
|
|
39052
|
+
"prop:exitCode"?: (HelixTerminal["exitCode"]) | undefined;
|
|
39053
|
+
/** What the status line says once the process has exited. `{code}` is its
|
|
39054
|
+
exit code, written as the process gave it, and code `0` is a clean exit. */
|
|
39055
|
+
"attr:exited-label"?: (HelixTerminal["exitedLabel"]) | undefined;
|
|
39056
|
+
/** What the status line says once the process has exited. `{code}` is its
|
|
39057
|
+
exit code, written as the process gave it, and code `0` is a clean exit. */
|
|
39058
|
+
"prop:exitedLabel"?: (HelixTerminal["exitedLabel"]) | undefined;
|
|
39059
|
+
/** The terminal's name where `label` is empty and the host has no `aria-label`. */
|
|
39060
|
+
"attr:fallback-label"?: (HelixTerminal["fallbackLabel"]) | undefined;
|
|
39061
|
+
/** The terminal's name where `label` is empty and the host has no `aria-label`. */
|
|
39062
|
+
"prop:fallbackLabel"?: (HelixTerminal["fallbackLabel"]) | undefined;
|
|
39063
|
+
/** The label of the button that closes the find bar. */
|
|
39064
|
+
"attr:find-close-label"?: (HelixTerminal["findCloseLabel"]) | undefined;
|
|
39065
|
+
/** The label of the button that closes the find bar. */
|
|
39066
|
+
"prop:findCloseLabel"?: (HelixTerminal["findCloseLabel"]) | undefined;
|
|
39067
|
+
/** The name of the find bar's row of buttons, read by screen readers. */
|
|
39068
|
+
"attr:find-controls-label"?: (HelixTerminal["findControlsLabel"]) | undefined;
|
|
39069
|
+
/** The name of the find bar's row of buttons, read by screen readers. */
|
|
39070
|
+
"prop:findControlsLabel"?: (HelixTerminal["findControlsLabel"]) | undefined;
|
|
39071
|
+
/** The find button's label, and the find field's name and placeholder. */
|
|
39072
|
+
"attr:find-label"?: (HelixTerminal["findLabel"]) | undefined;
|
|
39073
|
+
/** The find button's label, and the find field's name and placeholder. */
|
|
39074
|
+
"prop:findLabel"?: (HelixTerminal["findLabel"]) | undefined;
|
|
39075
|
+
/** The next match button's label. */
|
|
39076
|
+
"attr:find-next-label"?: (HelixTerminal["findNextLabel"]) | undefined;
|
|
39077
|
+
/** The next match button's label. */
|
|
39078
|
+
"prop:findNextLabel"?: (HelixTerminal["findNextLabel"]) | undefined;
|
|
39079
|
+
/** The previous match button's label. */
|
|
39080
|
+
"attr:find-previous-label"?: (HelixTerminal["findPreviousLabel"]) | undefined;
|
|
39081
|
+
/** The previous match button's label. */
|
|
39082
|
+
"prop:findPreviousLabel"?: (HelixTerminal["findPreviousLabel"]) | undefined;
|
|
39083
|
+
/** The fullscreen button's label. */
|
|
39084
|
+
"attr:fullscreen-label"?: (HelixTerminal["fullscreenLabel"]) | undefined;
|
|
39085
|
+
/** The fullscreen button's label. */
|
|
39086
|
+
"prop:fullscreenLabel"?: (HelixTerminal["fullscreenLabel"]) | undefined;
|
|
39087
|
+
/** The name of the element the reader types into, which the renderer draws. */
|
|
39088
|
+
"attr:input-label"?: (HelixTerminal["inputLabel"]) | undefined;
|
|
39089
|
+
/** The name of the element the reader types into, which the renderer draws. */
|
|
39090
|
+
"prop:inputLabel"?: (HelixTerminal["inputLabel"]) | undefined;
|
|
39091
|
+
/** The terminal's name, in the header and for screen readers, such as the
|
|
39092
|
+
shell or the folder it runs in. Several terminals on a page need names
|
|
39093
|
+
that tell them apart. */
|
|
39094
|
+
"prop:label"?: (HelixTerminal["label"]) | undefined;
|
|
39095
|
+
/** What the find bar says of its matches. `{index}` is the current match,
|
|
39096
|
+
counting from 1, and `{count}` how many there are. */
|
|
39097
|
+
"attr:matches-label"?: (HelixTerminal["matchesLabel"]) | undefined;
|
|
39098
|
+
/** What the find bar says of its matches. `{index}` is the current match,
|
|
39099
|
+
counting from 1, and `{count}` how many there are. */
|
|
39100
|
+
"prop:matchesLabel"?: (HelixTerminal["matchesLabel"]) | undefined;
|
|
39101
|
+
/** Draws the output and sends no input, with no cursor, for a transcript or
|
|
39102
|
+
a command an agent ran. The attribute is `readonly`, the platform's
|
|
39103
|
+
spelling. */
|
|
39104
|
+
"bool:readonly"?: (HelixTerminal["readOnly"]) | undefined;
|
|
39105
|
+
/** Draws the output and sends no input, with no cursor, for a transcript or
|
|
39106
|
+
a command an agent ran. The attribute is `readonly`, the platform's
|
|
39107
|
+
spelling. */
|
|
39108
|
+
"prop:readOnly"?: (HelixTerminal["readOnly"]) | undefined;
|
|
39109
|
+
/** The Restart button's label. */
|
|
39110
|
+
"attr:restart-label"?: (HelixTerminal["restartLabel"]) | undefined;
|
|
39111
|
+
/** The Restart button's label. */
|
|
39112
|
+
"prop:restartLabel"?: (HelixTerminal["restartLabel"]) | undefined;
|
|
39113
|
+
/** The grid's height in lines. Set it with `columns` to fix the grid's size; unset, the grid fills the frame. */
|
|
39114
|
+
"prop:rows"?: (HelixTerminal["rows"]) | undefined;
|
|
39115
|
+
/** Keeps the grid as lines a screen reader moves through, and says new
|
|
39116
|
+
output as it arrives. Off by default, since it costs time on every
|
|
39117
|
+
write. Connect it to a setting your reader can turn on. */
|
|
39118
|
+
"bool:screen-reader-mode"?: (HelixTerminal["screenReaderMode"]) | undefined;
|
|
39119
|
+
/** Keeps the grid as lines a screen reader moves through, and says new
|
|
39120
|
+
output as it arrives. Off by default, since it costs time on every
|
|
39121
|
+
write. Connect it to a setting your reader can turn on. */
|
|
39122
|
+
"prop:screenReaderMode"?: (HelixTerminal["screenReaderMode"]) | undefined;
|
|
39123
|
+
/** What the terminal's input describes to a screen reader. `{key}` is the key that switches Tab. */
|
|
39124
|
+
"attr:tab-hint-label"?: (HelixTerminal["tabHintLabel"]) | undefined;
|
|
39125
|
+
/** What the terminal's input describes to a screen reader. `{key}` is the key that switches Tab. */
|
|
39126
|
+
"prop:tabHintLabel"?: (HelixTerminal["tabHintLabel"]) | undefined;
|
|
39127
|
+
/** What the status line says while Tab moves focus. `{key}` is the key that switches it back. */
|
|
39128
|
+
"attr:tab-moves-focus-label"?: (HelixTerminal["tabMovesFocusLabel"]) | undefined;
|
|
39129
|
+
/** What the status line says while Tab moves focus. `{key}` is the key that switches it back. */
|
|
39130
|
+
"prop:tabMovesFocusLabel"?: (HelixTerminal["tabMovesFocusLabel"]) | undefined;
|
|
39131
|
+
/** What screen readers hear when Tab goes back to typing in the terminal. */
|
|
39132
|
+
"attr:tab-types-label"?: (HelixTerminal["tabTypesLabel"]) | undefined;
|
|
39133
|
+
/** What screen readers hear when Tab goes back to typing in the terminal. */
|
|
39134
|
+
"prop:tabTypesLabel"?: (HelixTerminal["tabTypesLabel"]) | undefined;
|
|
39135
|
+
/** The copy control or its key put the selection on the clipboard. */
|
|
39136
|
+
"on:helix-copy"?: ((e: HelixTerminalHelixCopyElementEvent) => void) | undefined;
|
|
39137
|
+
/** The program rang the bell. The frame flashes once. */
|
|
39138
|
+
"on:helix-terminal-bell"?: ((
|
|
39139
|
+
e: HelixTerminalHelixTerminalBellElementEvent,
|
|
39140
|
+
) => void) | undefined;
|
|
39141
|
+
/** The reader typed or pasted, with `data` encoded for the program. Write it to the process. Not sent while `readonly`, or once `exit-code` is set. */
|
|
39142
|
+
"on:helix-terminal-input"?: ((
|
|
39143
|
+
e: HelixTerminalHelixTerminalInputElementEvent,
|
|
39144
|
+
) => void) | undefined;
|
|
39145
|
+
/** A link in the output was activated, with its `href`. Cancelable: cancel it to open the link yourself. Left alone, a web address opens in a new tab. */
|
|
39146
|
+
"on:helix-terminal-link"?: ((
|
|
39147
|
+
e: HelixTerminalHelixTerminalLinkElementEvent,
|
|
39148
|
+
) => void) | undefined;
|
|
39149
|
+
/** The grid changed size, with `columns`, `rows`, `width`, and `height`. Resize the process's pseudo-terminal to match. */
|
|
39150
|
+
"on:helix-terminal-resize"?: ((
|
|
39151
|
+
e: HelixTerminalHelixTerminalResizeElementEvent,
|
|
39152
|
+
) => void) | undefined;
|
|
39153
|
+
/** The Restart button was pressed after the process exited. Start a new process and clear `exit-code`. */
|
|
39154
|
+
"on:helix-terminal-restart"?: ((
|
|
39155
|
+
e: HelixTerminalHelixTerminalRestartElementEvent,
|
|
39156
|
+
) => void) | undefined;
|
|
39157
|
+
/** The program set its title, with `title`. The frame keeps its own `label`. */
|
|
39158
|
+
"on:helix-terminal-title"?: ((
|
|
39159
|
+
e: HelixTerminalHelixTerminalTitleElementEvent,
|
|
39160
|
+
) => void) | undefined;
|
|
39161
|
+
|
|
39162
|
+
/** Set the innerHTML of the element */
|
|
39163
|
+
innerHTML?: (string) | undefined;
|
|
39164
|
+
/** Set the textContent of the element */
|
|
39165
|
+
textContent?: (string | number) | undefined;
|
|
39166
|
+
};
|
|
39167
|
+
|
|
38837
39168
|
export type HelixTextProps = {
|
|
38838
39169
|
/** The HTML element to render.
|
|
38839
39170
|
|
|
@@ -48699,7 +49030,7 @@ export type CustomElements<F extends Framework = "other"> = {
|
|
|
48699
49030
|
*
|
|
48700
49031
|
* - `arrow`: The arrowhead at an end of a connection that has one.
|
|
48701
49032
|
* - `board`: The plane the cards are placed on, which pans and zooms.
|
|
48702
|
-
* - `controls`: The
|
|
49033
|
+
* - `controls`: The toolbar the pan and zoom buttons sit in, one tab stop.
|
|
48703
49034
|
* - `draft`: The connection being drawn, before `helix-connect` is sent.
|
|
48704
49035
|
* - `edge`: One connector between two cards.
|
|
48705
49036
|
* - `edge-end`: An end of a selected connection. Drag it, or click it to pick it up.
|
|
@@ -56679,7 +57010,7 @@ export type CustomElements<F extends Framework = "other"> = {
|
|
|
56679
57010
|
* - `after`: The room the notes after those drawn would take, so the list scrolls its whole length.
|
|
56680
57011
|
* - `before`: The room the notes before those drawn would take.
|
|
56681
57012
|
* - `body`: The drawing beside the list, or above it where the frame is narrow.
|
|
56682
|
-
* - `controls`: The
|
|
57013
|
+
* - `controls`: The toolbar the pan and zoom buttons sit in, one tab stop.
|
|
56683
57014
|
* - `count`: How many notes the list holds, which a search narrows, at the end of the search bar.
|
|
56684
57015
|
* - `empty`: The box in place of the list when it holds no notes, holding the `empty` slot.
|
|
56685
57016
|
* - `filter-icon`: The icon beside the search field.
|
|
@@ -61235,7 +61566,7 @@ export type CustomElements<F extends Framework = "other"> = {
|
|
|
61235
61566
|
*
|
|
61236
61567
|
* - `attribution`: The strip under the map that holds the credit.
|
|
61237
61568
|
* - `compass`: The compass and the pan and rotate buttons around it.
|
|
61238
|
-
* - `controls`: The column of buttons that move the map.
|
|
61569
|
+
* - `controls`: The column of buttons that move the map, a toolbar and one tab stop.
|
|
61239
61570
|
* - `face-north`: The compass: its needle points north as the map turns, and pressing it turns the map to face north.
|
|
61240
61571
|
* - `footer`: The strip below the map.
|
|
61241
61572
|
* - `fullscreen`: The button that makes the map fill the screen.
|
|
@@ -72988,6 +73319,259 @@ export type CustomElements<F extends Framework = "other"> = {
|
|
|
72988
73319
|
*/
|
|
72989
73320
|
"helix-tag": Partial<HelixTagProps & BaseProps<HelixTag, F> & BaseEvents<HelixTag>>;
|
|
72990
73321
|
|
|
73322
|
+
/**
|
|
73323
|
+
* The styled frame: a bordered box on the page's background with a header
|
|
73324
|
+
* strip for the name and the controls, and a status line that appears when
|
|
73325
|
+
* the process exits. It is 24rem tall unless `fill` is set or
|
|
73326
|
+
* `--terminal-block-size` says otherwise.
|
|
73327
|
+
*
|
|
73328
|
+
* `connectTerminal` themes the terminal from your tokens. The sixteen ANSI
|
|
73329
|
+
* colors share Log's hues, red the danger color, green success, yellow
|
|
73330
|
+
* warning, and blue info, and the four grays keep their order from dark to
|
|
73331
|
+
* light in each color mode. Set `--terminal-ansi-red` and its siblings,
|
|
73332
|
+
* `--terminal-cursor-color`, or `--terminal-selection-background-color` on
|
|
73333
|
+
* the terminal to choose them yourself, such as
|
|
73334
|
+
* `helix-terminal { --terminal-ansi-blue: #3b82f6 }`. The
|
|
73335
|
+
* [Terminals](https://fusion.dev/helix/docs/terminals) guide lists them all.
|
|
73336
|
+
*
|
|
73337
|
+
* Set `fill` for a terminal that fills a pane, such as one side of a
|
|
73338
|
+
* `Splitter`: the frame covers its container, which needs a position of its
|
|
73339
|
+
* own, such as `position: relative`. Set `separation="plain"` where the pane
|
|
73340
|
+
* already draws the edge.
|
|
73341
|
+
*
|
|
73342
|
+
* ## Attributes & Properties
|
|
73343
|
+
*
|
|
73344
|
+
* Component attributes and properties that can be applied to the element or by using JavaScript.
|
|
73345
|
+
*
|
|
73346
|
+
* - `fill`: Covers the container instead of taking a height of its own, for a
|
|
73347
|
+
* terminal that fills a pane. The container needs a position, such as
|
|
73348
|
+
* `position: relative`.
|
|
73349
|
+
* - `separation`: How the frame stands off the page. Unset, it is outlined. `plain` draws
|
|
73350
|
+
* no edge or corners, for a pane that draws its own.
|
|
73351
|
+
* - `clear-label`/`clearLabel`: The clear button's label.
|
|
73352
|
+
* - `columns`: The grid's width in character cells. Set it with `rows` to fix the grid's size; unset, the grid fills the frame.
|
|
73353
|
+
* - `controls`: Which built-in controls the header shows, as a list of `find`, `copy`,
|
|
73354
|
+
* `clear`, and `fullscreen`, or `none`. Absent is `find clear`.
|
|
73355
|
+
* - `controls-label`/`controlsLabel`: The name of the row of controls, read by screen readers.
|
|
73356
|
+
* - `copied-label`/`copiedLabel`: What screen readers hear after a copy.
|
|
73357
|
+
* - `copy-label`/`copyLabel`: The copy button's label.
|
|
73358
|
+
* - `exit-code`/`exitCode`: How the process exited, which the page sets when it does. While it is set,
|
|
73359
|
+
* the status line says it, the frame sends no input, and Restart is shown.
|
|
73360
|
+
* Clear it when a new process starts.
|
|
73361
|
+
* - `exited-label`/`exitedLabel`: What the status line says once the process has exited. `{code}` is its
|
|
73362
|
+
* exit code, written as the process gave it, and code `0` is a clean exit.
|
|
73363
|
+
* - `fallback-label`/`fallbackLabel`: The terminal's name where `label` is empty and the host has no `aria-label`.
|
|
73364
|
+
* - `find-close-label`/`findCloseLabel`: The label of the button that closes the find bar.
|
|
73365
|
+
* - `find-controls-label`/`findControlsLabel`: The name of the find bar's row of buttons, read by screen readers.
|
|
73366
|
+
* - `find-label`/`findLabel`: The find button's label, and the find field's name and placeholder.
|
|
73367
|
+
* - `find-next-label`/`findNextLabel`: The next match button's label.
|
|
73368
|
+
* - `find-previous-label`/`findPreviousLabel`: The previous match button's label.
|
|
73369
|
+
* - `fullscreen-label`/`fullscreenLabel`: The fullscreen button's label.
|
|
73370
|
+
* - `input-label`/`inputLabel`: The name of the element the reader types into, which the renderer draws.
|
|
73371
|
+
* - `label`: The terminal's name, in the header and for screen readers, such as the
|
|
73372
|
+
* shell or the folder it runs in. Several terminals on a page need names
|
|
73373
|
+
* that tell them apart.
|
|
73374
|
+
* - `matches-label`/`matchesLabel`: What the find bar says of its matches. `{index}` is the current match,
|
|
73375
|
+
* counting from 1, and `{count}` how many there are.
|
|
73376
|
+
* - `readonly`/`readOnly`: Draws the output and sends no input, with no cursor, for a transcript or
|
|
73377
|
+
* a command an agent ran. The attribute is `readonly`, the platform's
|
|
73378
|
+
* spelling.
|
|
73379
|
+
* - `restart-label`/`restartLabel`: The Restart button's label.
|
|
73380
|
+
* - `rows`: The grid's height in lines. Set it with `columns` to fix the grid's size; unset, the grid fills the frame.
|
|
73381
|
+
* - `screen-reader-mode`/`screenReaderMode`: Keeps the grid as lines a screen reader moves through, and says new
|
|
73382
|
+
* output as it arrives. Off by default, since it costs time on every
|
|
73383
|
+
* write. Connect it to a setting your reader can turn on.
|
|
73384
|
+
* - `tab-hint-label`/`tabHintLabel`: What the terminal's input describes to a screen reader. `{key}` is the key that switches Tab.
|
|
73385
|
+
* - `tab-moves-focus-label`/`tabMovesFocusLabel`: What the status line says while Tab moves focus. `{key}` is the key that switches it back.
|
|
73386
|
+
* - `tab-types-label`/`tabTypesLabel`: What screen readers hear when Tab goes back to typing in the terminal.
|
|
73387
|
+
* - `whenSettled`: Resolves a frame after the first update, when transitions are switched on.
|
|
73388
|
+
*
|
|
73389
|
+
* **Named `whenSettled` because `settled` is taken four times over**, by
|
|
73390
|
+
* Image, Splitter and both color controls, none of them about transitions. A
|
|
73391
|
+
* base class takes the name every subclass then cannot use.
|
|
73392
|
+
*
|
|
73393
|
+
* **The state it reports cannot be watched, which is why this exists.** A
|
|
73394
|
+
* custom state is deliberately not in the DOM, so there is no
|
|
73395
|
+
* `MutationObserver` equivalent for `ElementInternals.states`. Await this
|
|
73396
|
+
* instead.
|
|
73397
|
+
*
|
|
73398
|
+
* Separate from `updateComplete`, which resolves in the microtask checkpoint
|
|
73399
|
+
* the suppression is still active in. That is the distinction `readyToMove`
|
|
73400
|
+
* in `@fusion.dev/helix-testing` is written around.
|
|
73401
|
+
*
|
|
73402
|
+
* It never resolves where `requestAnimationFrame` never fires, which is a
|
|
73403
|
+
* server, a hidden tab, and happy-dom. Callers that must not hang there race
|
|
73404
|
+
* it against a timeout, as the happy-dom harness's `readyToMove` does. The
|
|
73405
|
+
* browser harness's awaits it alone: a browser always runs the frame, and a
|
|
73406
|
+
* timer beside it was a bet on how long one takes, which a busy run lost. (property only) (readonly)
|
|
73407
|
+
*
|
|
73408
|
+
* ## Events
|
|
73409
|
+
*
|
|
73410
|
+
* Events that will be emitted by the component.
|
|
73411
|
+
*
|
|
73412
|
+
* - `helix-copy`: The copy control or its key put the selection on the clipboard.
|
|
73413
|
+
* - `helix-terminal-bell`: The program rang the bell. The frame flashes once.
|
|
73414
|
+
* - `helix-terminal-input`: The reader typed or pasted, with `data` encoded for the program. Write it to the process. Not sent while `readonly`, or once `exit-code` is set.
|
|
73415
|
+
* - `helix-terminal-link`: A link in the output was activated, with its `href`. Cancelable: cancel it to open the link yourself. Left alone, a web address opens in a new tab.
|
|
73416
|
+
* - `helix-terminal-resize`: The grid changed size, with `columns`, `rows`, `width`, and `height`. Resize the process's pseudo-terminal to match.
|
|
73417
|
+
* - `helix-terminal-restart`: The Restart button was pressed after the process exited. Start a new process and clear `exit-code`.
|
|
73418
|
+
* - `helix-terminal-title`: The program set its title, with `title`. The frame keeps its own `label`.
|
|
73419
|
+
*
|
|
73420
|
+
* ## Slots
|
|
73421
|
+
*
|
|
73422
|
+
* Areas where markup can be added to the component.
|
|
73423
|
+
*
|
|
73424
|
+
* - `(default)`: The element your renderer draws the terminal in.
|
|
73425
|
+
* - `actions`: Controls of your own in the header, before the built-in ones, such as a button that splits the pane.
|
|
73426
|
+
* - `clear-icon`: Replaces the glyph inside the clear button.
|
|
73427
|
+
* - `copy-icon`: Replaces the glyph inside the copy button.
|
|
73428
|
+
* - `exit-actions`: Controls of your own beside Restart, shown once the process exits, such as a button that opens the whole log.
|
|
73429
|
+
* - `find-actions`: Controls of your own in the find bar, between the count and the buttons that move between matches.
|
|
73430
|
+
* - `find-close-icon`: Replaces the glyph inside the button that closes the find bar.
|
|
73431
|
+
* - `find-icon`: Replaces the glyph inside the find button.
|
|
73432
|
+
* - `find-next-icon`: Replaces the glyph inside the next match button.
|
|
73433
|
+
* - `find-previous-icon`: Replaces the glyph inside the previous match button.
|
|
73434
|
+
* - `fullscreen-icon`: Replaces the glyph inside the fullscreen button.
|
|
73435
|
+
* - `label`: The terminal's name in the header, such as an icon beside the shell's name. Replaces `label` there.
|
|
73436
|
+
* - `restart-icon`: Replaces the glyph inside the Restart button.
|
|
73437
|
+
*
|
|
73438
|
+
* ## Methods
|
|
73439
|
+
*
|
|
73440
|
+
* Methods that can be called to access component functionality.
|
|
73441
|
+
*
|
|
73442
|
+
* - `write(data: string | Uint8Array) => Promise<void>`: Writes the program's output. Resolves once the renderer has parsed it,
|
|
73443
|
+
* which is how a page pauses a process that writes faster than the
|
|
73444
|
+
* terminal draws. Output written before a renderer is attached is held and
|
|
73445
|
+
* written first.
|
|
73446
|
+
* - `paste(text: string) => void`: Inputs text as a paste does, in bracketed paste mode where the program
|
|
73447
|
+
* asked for it. It arrives as `helix-terminal-input`, like typed text.
|
|
73448
|
+
* - `clear() => void`: Clears the scrollback, keeping the line the cursor is on.
|
|
73449
|
+
* - `reset() => void`: Resets the emulator: its modes, its colors, and its screen.
|
|
73450
|
+
* - `text(scope: 'all' | 'screen' = 'screen') => string`: The terminal as plain text, as the renderer drew it: the lines on screen,
|
|
73451
|
+
* or with `all`, every line the scrollback holds. Empty before a renderer is
|
|
73452
|
+
* attached.
|
|
73453
|
+
* - `look() => TerminalLook`: The colors and the face the terminal is to be drawn in, as the
|
|
73454
|
+
* `--terminal-*` properties resolve where the frame is. `connectTerminal`
|
|
73455
|
+
* themes the renderer from it. A color nothing sets is left out, so the
|
|
73456
|
+
* renderer keeps its own: the headless tier sets none, and the styled tier
|
|
73457
|
+
* sets every one from the theme.
|
|
73458
|
+
* - `focus(options?: FocusOptions) => void`: Focuses the terminal's input, where a renderer is attached.
|
|
73459
|
+
* - `attach(renderer: TerminalRenderer) => TerminalSink`: Attaches what draws the terminal, and returns how it tells the frame what
|
|
73460
|
+
* happened. `connectTerminal` calls it; a page drawing its own terminal calls
|
|
73461
|
+
* it with its own renderer. Attaching another detaches the first.
|
|
73462
|
+
*
|
|
73463
|
+
* ## CSS Custom Properties
|
|
73464
|
+
*
|
|
73465
|
+
* CSS variables available for styling the component.
|
|
73466
|
+
*
|
|
73467
|
+
* - `--terminal-block-size`: The frame's height, as a length. Ignored with `fill`, where the container decides it.
|
|
73468
|
+
* - `--terminal-border-color`: The edge around the frame and the rules inside it.
|
|
73469
|
+
* - `--terminal-font-family`: The face of the grid. Defaults to the monospaced face.
|
|
73470
|
+
* - `--terminal-font-size`: The size of the grid's text. Defaults to the small text step.
|
|
73471
|
+
* - `--terminal-header-background-color`: The fill of the header, the find bar, and the status line.
|
|
73472
|
+
* - `--terminal-padding`: The space between the frame's edge and the grid.
|
|
73473
|
+
* - `--terminal-radius`: The frame's corners.
|
|
73474
|
+
* - `--terminal-active-match-background-color`: The ground of the current match of a search.
|
|
73475
|
+
* - `--terminal-active-match-border-color`: The edge of the current match of a search.
|
|
73476
|
+
* - `--terminal-ansi-black`: ANSI black, which codes `30` and `40` draw.
|
|
73477
|
+
* - `--terminal-ansi-blue`: ANSI blue, which codes `34` and `44` draw.
|
|
73478
|
+
* - `--terminal-ansi-bright-black`: ANSI bright black, which codes `90` and `100` draw.
|
|
73479
|
+
* - `--terminal-ansi-bright-blue`: ANSI bright blue, which codes `94` and `104` draw.
|
|
73480
|
+
* - `--terminal-ansi-bright-cyan`: ANSI bright cyan, which codes `96` and `106` draw.
|
|
73481
|
+
* - `--terminal-ansi-bright-green`: ANSI bright green, which codes `92` and `102` draw.
|
|
73482
|
+
* - `--terminal-ansi-bright-magenta`: ANSI bright magenta, which codes `95` and `105` draw.
|
|
73483
|
+
* - `--terminal-ansi-bright-red`: ANSI bright red, which codes `91` and `101` draw.
|
|
73484
|
+
* - `--terminal-ansi-bright-white`: ANSI bright white, which codes `97` and `107` draw.
|
|
73485
|
+
* - `--terminal-ansi-bright-yellow`: ANSI bright yellow, which codes `93` and `103` draw.
|
|
73486
|
+
* - `--terminal-ansi-cyan`: ANSI cyan, which codes `36` and `46` draw.
|
|
73487
|
+
* - `--terminal-ansi-green`: ANSI green, which codes `32` and `42` draw.
|
|
73488
|
+
* - `--terminal-ansi-magenta`: ANSI magenta, which codes `35` and `45` draw.
|
|
73489
|
+
* - `--terminal-ansi-red`: ANSI red, which codes `31` and `41` draw.
|
|
73490
|
+
* - `--terminal-ansi-white`: ANSI white, which codes `37` and `47` draw.
|
|
73491
|
+
* - `--terminal-ansi-yellow`: ANSI yellow, which codes `33` and `43` draw.
|
|
73492
|
+
* - `--terminal-background-color`: The ground of the grid.
|
|
73493
|
+
* - `--terminal-color`: The text of the grid where the program sets no color.
|
|
73494
|
+
* - `--terminal-cursor-color`: The cursor.
|
|
73495
|
+
* - `--terminal-match-background-color`: The ground of every match of a search but the current one.
|
|
73496
|
+
* - `--terminal-scrollbar-thumb-color`: The grid's scrollbar.
|
|
73497
|
+
* - `--terminal-selection-background-color`: The ground of selected text. See-through, so the text keeps its color.
|
|
73498
|
+
*
|
|
73499
|
+
* ## CSS Parts
|
|
73500
|
+
*
|
|
73501
|
+
* Custom selectors for styling elements within the component.
|
|
73502
|
+
*
|
|
73503
|
+
* - `actions`: The `actions` slot, first in the header's toolbar.
|
|
73504
|
+
* - `clear`: The button that clears the scrollback.
|
|
73505
|
+
* - `clear-button`: The clear button's inner button.
|
|
73506
|
+
* - `clear-live`: The clear button's live region, which speaks while the button is pending.
|
|
73507
|
+
* - `clear-spinner`: The ring the clear button turns while it is pending.
|
|
73508
|
+
* - `clear-text`: The box the clear button's icon sits in.
|
|
73509
|
+
* - `controls`: The toolbar at the end of the header: your actions, then the built-in buttons, one tab stop that the arrows move along.
|
|
73510
|
+
* - `controls-toolbar`: The box inside the header's toolbar that lays its buttons out.
|
|
73511
|
+
* - `copy`: The button that copies the selection. Disabled while nothing is selected.
|
|
73512
|
+
* - `copy-button`: The copy button's inner button.
|
|
73513
|
+
* - `copy-live`: The copy button's live region, which speaks while the button is pending.
|
|
73514
|
+
* - `copy-spinner`: The ring the copy button turns while it is pending.
|
|
73515
|
+
* - `copy-text`: The box the copy button's icon sits in.
|
|
73516
|
+
* - `exit-actions`: The `exit-actions` slot, beside Restart in the status line.
|
|
73517
|
+
* - `find`: The button that opens and closes the find bar. Expanded while it is open.
|
|
73518
|
+
* - `find-actions`: The `find-actions` slot, first in the find bar's toolbar.
|
|
73519
|
+
* - `find-bar`: The bar under the header where the reader searches the output.
|
|
73520
|
+
* - `find-button`: The find button's inner button.
|
|
73521
|
+
* - `find-close`: The button that closes the find bar.
|
|
73522
|
+
* - `find-close-button`: The find bar's close button's inner button.
|
|
73523
|
+
* - `find-close-live`: The find bar's close button's live region, which speaks while the button is pending.
|
|
73524
|
+
* - `find-close-spinner`: The ring the find bar's close button turns while it is pending.
|
|
73525
|
+
* - `find-close-text`: The box the find bar's close button's icon sits in.
|
|
73526
|
+
* - `find-controls`: The toolbar at the end of the find bar: your find actions, then the buttons that move between matches and close the bar.
|
|
73527
|
+
* - `find-controls-toolbar`: The box inside the find bar's toolbar that lays its buttons out.
|
|
73528
|
+
* - `find-count`: Which match is current and how many there are, such as "3 of 12 matches".
|
|
73529
|
+
* - `find-field`: The search field in the find bar.
|
|
73530
|
+
* - `find-live`: The find button's live region, which speaks while the button is pending.
|
|
73531
|
+
* - `find-next`: The button that moves to the next match.
|
|
73532
|
+
* - `find-next-button`: The next match button's inner button.
|
|
73533
|
+
* - `find-next-live`: The next match button's live region, which speaks while the button is pending.
|
|
73534
|
+
* - `find-next-spinner`: The ring the next match button turns while it is pending.
|
|
73535
|
+
* - `find-next-text`: The box the next match button's icon sits in.
|
|
73536
|
+
* - `find-previous`: The button that moves to the previous match.
|
|
73537
|
+
* - `find-previous-button`: The previous match button's inner button.
|
|
73538
|
+
* - `find-previous-live`: The previous match button's live region, which speaks while the button is pending.
|
|
73539
|
+
* - `find-previous-spinner`: The ring the previous match button turns while it is pending.
|
|
73540
|
+
* - `find-previous-text`: The box the previous match button's icon sits in.
|
|
73541
|
+
* - `find-spinner`: The ring the find button turns while it is pending.
|
|
73542
|
+
* - `find-text`: The box the find button's icon sits in.
|
|
73543
|
+
* - `fullscreen`: The button that makes the terminal fill the screen. Pressed while it does.
|
|
73544
|
+
* - `fullscreen-button`: The fullscreen button's inner button.
|
|
73545
|
+
* - `fullscreen-live`: The fullscreen button's live region, which speaks while the button is pending.
|
|
73546
|
+
* - `fullscreen-spinner`: The ring the fullscreen button turns while it is pending.
|
|
73547
|
+
* - `fullscreen-text`: The box the fullscreen button's icon sits in.
|
|
73548
|
+
* - `header`: The strip above the terminal, with its name, your actions, and the controls.
|
|
73549
|
+
* - `label`: The terminal's name in the header.
|
|
73550
|
+
* - `live`: What screen readers hear after the frame acts: a match count, a copy, or a change to what Tab does. Visually hidden in the styled tier.
|
|
73551
|
+
* - `region`: The named group the terminal sits in.
|
|
73552
|
+
* - `restart`: The button in the status line that asks for a new process after the last one exited.
|
|
73553
|
+
* - `restart-button`: The Restart button's inner button.
|
|
73554
|
+
* - `restart-live`: The Restart button's live region, which speaks while the button is pending.
|
|
73555
|
+
* - `restart-spinner`: The ring the Restart button turns while it is pending.
|
|
73556
|
+
* - `restart-text`: The Restart button's label.
|
|
73557
|
+
* - `status`: The line under the terminal that says the process exited, or that Tab moves focus.
|
|
73558
|
+
* - `viewport`: The box the terminal is drawn in.
|
|
73559
|
+
*
|
|
73560
|
+
* ## CSS States
|
|
73561
|
+
*
|
|
73562
|
+
* These can be used to apply styling when a component is in a given state.
|
|
73563
|
+
*
|
|
73564
|
+
* - `bell`: The program rang the bell, held for a moment for a visual bell.
|
|
73565
|
+
* - `exited`: The process has exited, by `exit-code`.
|
|
73566
|
+
* - `find-open`: The find bar is open.
|
|
73567
|
+
* - `fullscreen`: The terminal fills the screen.
|
|
73568
|
+
* - `tab-moves-focus`: Tab moves focus out of the terminal, after Control+M.
|
|
73569
|
+
* - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
|
|
73570
|
+
*/
|
|
73571
|
+
"helix-terminal": Partial<
|
|
73572
|
+
HelixTerminalProps & BaseProps<HelixTerminal, F> & BaseEvents<HelixTerminal>
|
|
73573
|
+
>;
|
|
73574
|
+
|
|
72991
73575
|
/**
|
|
72992
73576
|
* `as` sets the element, which decides the document outline and what a screen
|
|
72993
73577
|
* reader announces. `variant` sets the type ramp, which decides size, weight,
|
|
@@ -80914,7 +81498,7 @@ export type CustomElementsSolidJs = {
|
|
|
80914
81498
|
*
|
|
80915
81499
|
* - `arrow`: The arrowhead at an end of a connection that has one.
|
|
80916
81500
|
* - `board`: The plane the cards are placed on, which pans and zooms.
|
|
80917
|
-
* - `controls`: The
|
|
81501
|
+
* - `controls`: The toolbar the pan and zoom buttons sit in, one tab stop.
|
|
80918
81502
|
* - `draft`: The connection being drawn, before `helix-connect` is sent.
|
|
80919
81503
|
* - `edge`: One connector between two cards.
|
|
80920
81504
|
* - `edge-end`: An end of a selected connection. Drag it, or click it to pick it up.
|
|
@@ -88995,7 +89579,7 @@ export type CustomElementsSolidJs = {
|
|
|
88995
89579
|
* - `after`: The room the notes after those drawn would take, so the list scrolls its whole length.
|
|
88996
89580
|
* - `before`: The room the notes before those drawn would take.
|
|
88997
89581
|
* - `body`: The drawing beside the list, or above it where the frame is narrow.
|
|
88998
|
-
* - `controls`: The
|
|
89582
|
+
* - `controls`: The toolbar the pan and zoom buttons sit in, one tab stop.
|
|
88999
89583
|
* - `count`: How many notes the list holds, which a search narrows, at the end of the search bar.
|
|
89000
89584
|
* - `empty`: The box in place of the list when it holds no notes, holding the `empty` slot.
|
|
89001
89585
|
* - `filter-icon`: The icon beside the search field.
|
|
@@ -93633,7 +94217,7 @@ export type CustomElementsSolidJs = {
|
|
|
93633
94217
|
*
|
|
93634
94218
|
* - `attribution`: The strip under the map that holds the credit.
|
|
93635
94219
|
* - `compass`: The compass and the pan and rotate buttons around it.
|
|
93636
|
-
* - `controls`: The column of buttons that move the map.
|
|
94220
|
+
* - `controls`: The column of buttons that move the map, a toolbar and one tab stop.
|
|
93637
94221
|
* - `face-north`: The compass: its needle points north as the map turns, and pressing it turns the map to face north.
|
|
93638
94222
|
* - `footer`: The strip below the map.
|
|
93639
94223
|
* - `fullscreen`: The button that makes the map fill the screen.
|
|
@@ -105592,6 +106176,262 @@ export type CustomElementsSolidJs = {
|
|
|
105592
106176
|
HelixTagProps & HelixTagSolidJsProps & BaseProps<HelixTag, "solid"> & BaseEvents<HelixTag>
|
|
105593
106177
|
>;
|
|
105594
106178
|
|
|
106179
|
+
/**
|
|
106180
|
+
* The styled frame: a bordered box on the page's background with a header
|
|
106181
|
+
* strip for the name and the controls, and a status line that appears when
|
|
106182
|
+
* the process exits. It is 24rem tall unless `fill` is set or
|
|
106183
|
+
* `--terminal-block-size` says otherwise.
|
|
106184
|
+
*
|
|
106185
|
+
* `connectTerminal` themes the terminal from your tokens. The sixteen ANSI
|
|
106186
|
+
* colors share Log's hues, red the danger color, green success, yellow
|
|
106187
|
+
* warning, and blue info, and the four grays keep their order from dark to
|
|
106188
|
+
* light in each color mode. Set `--terminal-ansi-red` and its siblings,
|
|
106189
|
+
* `--terminal-cursor-color`, or `--terminal-selection-background-color` on
|
|
106190
|
+
* the terminal to choose them yourself, such as
|
|
106191
|
+
* `helix-terminal { --terminal-ansi-blue: #3b82f6 }`. The
|
|
106192
|
+
* [Terminals](https://fusion.dev/helix/docs/terminals) guide lists them all.
|
|
106193
|
+
*
|
|
106194
|
+
* Set `fill` for a terminal that fills a pane, such as one side of a
|
|
106195
|
+
* `Splitter`: the frame covers its container, which needs a position of its
|
|
106196
|
+
* own, such as `position: relative`. Set `separation="plain"` where the pane
|
|
106197
|
+
* already draws the edge.
|
|
106198
|
+
*
|
|
106199
|
+
* ## Attributes & Properties
|
|
106200
|
+
*
|
|
106201
|
+
* Component attributes and properties that can be applied to the element or by using JavaScript.
|
|
106202
|
+
*
|
|
106203
|
+
* - `fill`: Covers the container instead of taking a height of its own, for a
|
|
106204
|
+
* terminal that fills a pane. The container needs a position, such as
|
|
106205
|
+
* `position: relative`.
|
|
106206
|
+
* - `separation`: How the frame stands off the page. Unset, it is outlined. `plain` draws
|
|
106207
|
+
* no edge or corners, for a pane that draws its own.
|
|
106208
|
+
* - `clear-label`/`clearLabel`: The clear button's label.
|
|
106209
|
+
* - `columns`: The grid's width in character cells. Set it with `rows` to fix the grid's size; unset, the grid fills the frame.
|
|
106210
|
+
* - `controls`: Which built-in controls the header shows, as a list of `find`, `copy`,
|
|
106211
|
+
* `clear`, and `fullscreen`, or `none`. Absent is `find clear`.
|
|
106212
|
+
* - `controls-label`/`controlsLabel`: The name of the row of controls, read by screen readers.
|
|
106213
|
+
* - `copied-label`/`copiedLabel`: What screen readers hear after a copy.
|
|
106214
|
+
* - `copy-label`/`copyLabel`: The copy button's label.
|
|
106215
|
+
* - `exit-code`/`exitCode`: How the process exited, which the page sets when it does. While it is set,
|
|
106216
|
+
* the status line says it, the frame sends no input, and Restart is shown.
|
|
106217
|
+
* Clear it when a new process starts.
|
|
106218
|
+
* - `exited-label`/`exitedLabel`: What the status line says once the process has exited. `{code}` is its
|
|
106219
|
+
* exit code, written as the process gave it, and code `0` is a clean exit.
|
|
106220
|
+
* - `fallback-label`/`fallbackLabel`: The terminal's name where `label` is empty and the host has no `aria-label`.
|
|
106221
|
+
* - `find-close-label`/`findCloseLabel`: The label of the button that closes the find bar.
|
|
106222
|
+
* - `find-controls-label`/`findControlsLabel`: The name of the find bar's row of buttons, read by screen readers.
|
|
106223
|
+
* - `find-label`/`findLabel`: The find button's label, and the find field's name and placeholder.
|
|
106224
|
+
* - `find-next-label`/`findNextLabel`: The next match button's label.
|
|
106225
|
+
* - `find-previous-label`/`findPreviousLabel`: The previous match button's label.
|
|
106226
|
+
* - `fullscreen-label`/`fullscreenLabel`: The fullscreen button's label.
|
|
106227
|
+
* - `input-label`/`inputLabel`: The name of the element the reader types into, which the renderer draws.
|
|
106228
|
+
* - `label`: The terminal's name, in the header and for screen readers, such as the
|
|
106229
|
+
* shell or the folder it runs in. Several terminals on a page need names
|
|
106230
|
+
* that tell them apart.
|
|
106231
|
+
* - `matches-label`/`matchesLabel`: What the find bar says of its matches. `{index}` is the current match,
|
|
106232
|
+
* counting from 1, and `{count}` how many there are.
|
|
106233
|
+
* - `readonly`/`readOnly`: Draws the output and sends no input, with no cursor, for a transcript or
|
|
106234
|
+
* a command an agent ran. The attribute is `readonly`, the platform's
|
|
106235
|
+
* spelling.
|
|
106236
|
+
* - `restart-label`/`restartLabel`: The Restart button's label.
|
|
106237
|
+
* - `rows`: The grid's height in lines. Set it with `columns` to fix the grid's size; unset, the grid fills the frame.
|
|
106238
|
+
* - `screen-reader-mode`/`screenReaderMode`: Keeps the grid as lines a screen reader moves through, and says new
|
|
106239
|
+
* output as it arrives. Off by default, since it costs time on every
|
|
106240
|
+
* write. Connect it to a setting your reader can turn on.
|
|
106241
|
+
* - `tab-hint-label`/`tabHintLabel`: What the terminal's input describes to a screen reader. `{key}` is the key that switches Tab.
|
|
106242
|
+
* - `tab-moves-focus-label`/`tabMovesFocusLabel`: What the status line says while Tab moves focus. `{key}` is the key that switches it back.
|
|
106243
|
+
* - `tab-types-label`/`tabTypesLabel`: What screen readers hear when Tab goes back to typing in the terminal.
|
|
106244
|
+
* - `whenSettled`: Resolves a frame after the first update, when transitions are switched on.
|
|
106245
|
+
*
|
|
106246
|
+
* **Named `whenSettled` because `settled` is taken four times over**, by
|
|
106247
|
+
* Image, Splitter and both color controls, none of them about transitions. A
|
|
106248
|
+
* base class takes the name every subclass then cannot use.
|
|
106249
|
+
*
|
|
106250
|
+
* **The state it reports cannot be watched, which is why this exists.** A
|
|
106251
|
+
* custom state is deliberately not in the DOM, so there is no
|
|
106252
|
+
* `MutationObserver` equivalent for `ElementInternals.states`. Await this
|
|
106253
|
+
* instead.
|
|
106254
|
+
*
|
|
106255
|
+
* Separate from `updateComplete`, which resolves in the microtask checkpoint
|
|
106256
|
+
* the suppression is still active in. That is the distinction `readyToMove`
|
|
106257
|
+
* in `@fusion.dev/helix-testing` is written around.
|
|
106258
|
+
*
|
|
106259
|
+
* It never resolves where `requestAnimationFrame` never fires, which is a
|
|
106260
|
+
* server, a hidden tab, and happy-dom. Callers that must not hang there race
|
|
106261
|
+
* it against a timeout, as the happy-dom harness's `readyToMove` does. The
|
|
106262
|
+
* browser harness's awaits it alone: a browser always runs the frame, and a
|
|
106263
|
+
* timer beside it was a bet on how long one takes, which a busy run lost. (property only) (readonly)
|
|
106264
|
+
*
|
|
106265
|
+
* ## Events
|
|
106266
|
+
*
|
|
106267
|
+
* Events that will be emitted by the component.
|
|
106268
|
+
*
|
|
106269
|
+
* - `helix-copy`: The copy control or its key put the selection on the clipboard.
|
|
106270
|
+
* - `helix-terminal-bell`: The program rang the bell. The frame flashes once.
|
|
106271
|
+
* - `helix-terminal-input`: The reader typed or pasted, with `data` encoded for the program. Write it to the process. Not sent while `readonly`, or once `exit-code` is set.
|
|
106272
|
+
* - `helix-terminal-link`: A link in the output was activated, with its `href`. Cancelable: cancel it to open the link yourself. Left alone, a web address opens in a new tab.
|
|
106273
|
+
* - `helix-terminal-resize`: The grid changed size, with `columns`, `rows`, `width`, and `height`. Resize the process's pseudo-terminal to match.
|
|
106274
|
+
* - `helix-terminal-restart`: The Restart button was pressed after the process exited. Start a new process and clear `exit-code`.
|
|
106275
|
+
* - `helix-terminal-title`: The program set its title, with `title`. The frame keeps its own `label`.
|
|
106276
|
+
*
|
|
106277
|
+
* ## Slots
|
|
106278
|
+
*
|
|
106279
|
+
* Areas where markup can be added to the component.
|
|
106280
|
+
*
|
|
106281
|
+
* - `(default)`: The element your renderer draws the terminal in.
|
|
106282
|
+
* - `actions`: Controls of your own in the header, before the built-in ones, such as a button that splits the pane.
|
|
106283
|
+
* - `clear-icon`: Replaces the glyph inside the clear button.
|
|
106284
|
+
* - `copy-icon`: Replaces the glyph inside the copy button.
|
|
106285
|
+
* - `exit-actions`: Controls of your own beside Restart, shown once the process exits, such as a button that opens the whole log.
|
|
106286
|
+
* - `find-actions`: Controls of your own in the find bar, between the count and the buttons that move between matches.
|
|
106287
|
+
* - `find-close-icon`: Replaces the glyph inside the button that closes the find bar.
|
|
106288
|
+
* - `find-icon`: Replaces the glyph inside the find button.
|
|
106289
|
+
* - `find-next-icon`: Replaces the glyph inside the next match button.
|
|
106290
|
+
* - `find-previous-icon`: Replaces the glyph inside the previous match button.
|
|
106291
|
+
* - `fullscreen-icon`: Replaces the glyph inside the fullscreen button.
|
|
106292
|
+
* - `label`: The terminal's name in the header, such as an icon beside the shell's name. Replaces `label` there.
|
|
106293
|
+
* - `restart-icon`: Replaces the glyph inside the Restart button.
|
|
106294
|
+
*
|
|
106295
|
+
* ## Methods
|
|
106296
|
+
*
|
|
106297
|
+
* Methods that can be called to access component functionality.
|
|
106298
|
+
*
|
|
106299
|
+
* - `write(data: string | Uint8Array) => Promise<void>`: Writes the program's output. Resolves once the renderer has parsed it,
|
|
106300
|
+
* which is how a page pauses a process that writes faster than the
|
|
106301
|
+
* terminal draws. Output written before a renderer is attached is held and
|
|
106302
|
+
* written first.
|
|
106303
|
+
* - `paste(text: string) => void`: Inputs text as a paste does, in bracketed paste mode where the program
|
|
106304
|
+
* asked for it. It arrives as `helix-terminal-input`, like typed text.
|
|
106305
|
+
* - `clear() => void`: Clears the scrollback, keeping the line the cursor is on.
|
|
106306
|
+
* - `reset() => void`: Resets the emulator: its modes, its colors, and its screen.
|
|
106307
|
+
* - `text(scope: 'all' | 'screen' = 'screen') => string`: The terminal as plain text, as the renderer drew it: the lines on screen,
|
|
106308
|
+
* or with `all`, every line the scrollback holds. Empty before a renderer is
|
|
106309
|
+
* attached.
|
|
106310
|
+
* - `look() => TerminalLook`: The colors and the face the terminal is to be drawn in, as the
|
|
106311
|
+
* `--terminal-*` properties resolve where the frame is. `connectTerminal`
|
|
106312
|
+
* themes the renderer from it. A color nothing sets is left out, so the
|
|
106313
|
+
* renderer keeps its own: the headless tier sets none, and the styled tier
|
|
106314
|
+
* sets every one from the theme.
|
|
106315
|
+
* - `focus(options?: FocusOptions) => void`: Focuses the terminal's input, where a renderer is attached.
|
|
106316
|
+
* - `attach(renderer: TerminalRenderer) => TerminalSink`: Attaches what draws the terminal, and returns how it tells the frame what
|
|
106317
|
+
* happened. `connectTerminal` calls it; a page drawing its own terminal calls
|
|
106318
|
+
* it with its own renderer. Attaching another detaches the first.
|
|
106319
|
+
*
|
|
106320
|
+
* ## CSS Custom Properties
|
|
106321
|
+
*
|
|
106322
|
+
* CSS variables available for styling the component.
|
|
106323
|
+
*
|
|
106324
|
+
* - `--terminal-block-size`: The frame's height, as a length. Ignored with `fill`, where the container decides it.
|
|
106325
|
+
* - `--terminal-border-color`: The edge around the frame and the rules inside it.
|
|
106326
|
+
* - `--terminal-font-family`: The face of the grid. Defaults to the monospaced face.
|
|
106327
|
+
* - `--terminal-font-size`: The size of the grid's text. Defaults to the small text step.
|
|
106328
|
+
* - `--terminal-header-background-color`: The fill of the header, the find bar, and the status line.
|
|
106329
|
+
* - `--terminal-padding`: The space between the frame's edge and the grid.
|
|
106330
|
+
* - `--terminal-radius`: The frame's corners.
|
|
106331
|
+
* - `--terminal-active-match-background-color`: The ground of the current match of a search.
|
|
106332
|
+
* - `--terminal-active-match-border-color`: The edge of the current match of a search.
|
|
106333
|
+
* - `--terminal-ansi-black`: ANSI black, which codes `30` and `40` draw.
|
|
106334
|
+
* - `--terminal-ansi-blue`: ANSI blue, which codes `34` and `44` draw.
|
|
106335
|
+
* - `--terminal-ansi-bright-black`: ANSI bright black, which codes `90` and `100` draw.
|
|
106336
|
+
* - `--terminal-ansi-bright-blue`: ANSI bright blue, which codes `94` and `104` draw.
|
|
106337
|
+
* - `--terminal-ansi-bright-cyan`: ANSI bright cyan, which codes `96` and `106` draw.
|
|
106338
|
+
* - `--terminal-ansi-bright-green`: ANSI bright green, which codes `92` and `102` draw.
|
|
106339
|
+
* - `--terminal-ansi-bright-magenta`: ANSI bright magenta, which codes `95` and `105` draw.
|
|
106340
|
+
* - `--terminal-ansi-bright-red`: ANSI bright red, which codes `91` and `101` draw.
|
|
106341
|
+
* - `--terminal-ansi-bright-white`: ANSI bright white, which codes `97` and `107` draw.
|
|
106342
|
+
* - `--terminal-ansi-bright-yellow`: ANSI bright yellow, which codes `93` and `103` draw.
|
|
106343
|
+
* - `--terminal-ansi-cyan`: ANSI cyan, which codes `36` and `46` draw.
|
|
106344
|
+
* - `--terminal-ansi-green`: ANSI green, which codes `32` and `42` draw.
|
|
106345
|
+
* - `--terminal-ansi-magenta`: ANSI magenta, which codes `35` and `45` draw.
|
|
106346
|
+
* - `--terminal-ansi-red`: ANSI red, which codes `31` and `41` draw.
|
|
106347
|
+
* - `--terminal-ansi-white`: ANSI white, which codes `37` and `47` draw.
|
|
106348
|
+
* - `--terminal-ansi-yellow`: ANSI yellow, which codes `33` and `43` draw.
|
|
106349
|
+
* - `--terminal-background-color`: The ground of the grid.
|
|
106350
|
+
* - `--terminal-color`: The text of the grid where the program sets no color.
|
|
106351
|
+
* - `--terminal-cursor-color`: The cursor.
|
|
106352
|
+
* - `--terminal-match-background-color`: The ground of every match of a search but the current one.
|
|
106353
|
+
* - `--terminal-scrollbar-thumb-color`: The grid's scrollbar.
|
|
106354
|
+
* - `--terminal-selection-background-color`: The ground of selected text. See-through, so the text keeps its color.
|
|
106355
|
+
*
|
|
106356
|
+
* ## CSS Parts
|
|
106357
|
+
*
|
|
106358
|
+
* Custom selectors for styling elements within the component.
|
|
106359
|
+
*
|
|
106360
|
+
* - `actions`: The `actions` slot, first in the header's toolbar.
|
|
106361
|
+
* - `clear`: The button that clears the scrollback.
|
|
106362
|
+
* - `clear-button`: The clear button's inner button.
|
|
106363
|
+
* - `clear-live`: The clear button's live region, which speaks while the button is pending.
|
|
106364
|
+
* - `clear-spinner`: The ring the clear button turns while it is pending.
|
|
106365
|
+
* - `clear-text`: The box the clear button's icon sits in.
|
|
106366
|
+
* - `controls`: The toolbar at the end of the header: your actions, then the built-in buttons, one tab stop that the arrows move along.
|
|
106367
|
+
* - `controls-toolbar`: The box inside the header's toolbar that lays its buttons out.
|
|
106368
|
+
* - `copy`: The button that copies the selection. Disabled while nothing is selected.
|
|
106369
|
+
* - `copy-button`: The copy button's inner button.
|
|
106370
|
+
* - `copy-live`: The copy button's live region, which speaks while the button is pending.
|
|
106371
|
+
* - `copy-spinner`: The ring the copy button turns while it is pending.
|
|
106372
|
+
* - `copy-text`: The box the copy button's icon sits in.
|
|
106373
|
+
* - `exit-actions`: The `exit-actions` slot, beside Restart in the status line.
|
|
106374
|
+
* - `find`: The button that opens and closes the find bar. Expanded while it is open.
|
|
106375
|
+
* - `find-actions`: The `find-actions` slot, first in the find bar's toolbar.
|
|
106376
|
+
* - `find-bar`: The bar under the header where the reader searches the output.
|
|
106377
|
+
* - `find-button`: The find button's inner button.
|
|
106378
|
+
* - `find-close`: The button that closes the find bar.
|
|
106379
|
+
* - `find-close-button`: The find bar's close button's inner button.
|
|
106380
|
+
* - `find-close-live`: The find bar's close button's live region, which speaks while the button is pending.
|
|
106381
|
+
* - `find-close-spinner`: The ring the find bar's close button turns while it is pending.
|
|
106382
|
+
* - `find-close-text`: The box the find bar's close button's icon sits in.
|
|
106383
|
+
* - `find-controls`: The toolbar at the end of the find bar: your find actions, then the buttons that move between matches and close the bar.
|
|
106384
|
+
* - `find-controls-toolbar`: The box inside the find bar's toolbar that lays its buttons out.
|
|
106385
|
+
* - `find-count`: Which match is current and how many there are, such as "3 of 12 matches".
|
|
106386
|
+
* - `find-field`: The search field in the find bar.
|
|
106387
|
+
* - `find-live`: The find button's live region, which speaks while the button is pending.
|
|
106388
|
+
* - `find-next`: The button that moves to the next match.
|
|
106389
|
+
* - `find-next-button`: The next match button's inner button.
|
|
106390
|
+
* - `find-next-live`: The next match button's live region, which speaks while the button is pending.
|
|
106391
|
+
* - `find-next-spinner`: The ring the next match button turns while it is pending.
|
|
106392
|
+
* - `find-next-text`: The box the next match button's icon sits in.
|
|
106393
|
+
* - `find-previous`: The button that moves to the previous match.
|
|
106394
|
+
* - `find-previous-button`: The previous match button's inner button.
|
|
106395
|
+
* - `find-previous-live`: The previous match button's live region, which speaks while the button is pending.
|
|
106396
|
+
* - `find-previous-spinner`: The ring the previous match button turns while it is pending.
|
|
106397
|
+
* - `find-previous-text`: The box the previous match button's icon sits in.
|
|
106398
|
+
* - `find-spinner`: The ring the find button turns while it is pending.
|
|
106399
|
+
* - `find-text`: The box the find button's icon sits in.
|
|
106400
|
+
* - `fullscreen`: The button that makes the terminal fill the screen. Pressed while it does.
|
|
106401
|
+
* - `fullscreen-button`: The fullscreen button's inner button.
|
|
106402
|
+
* - `fullscreen-live`: The fullscreen button's live region, which speaks while the button is pending.
|
|
106403
|
+
* - `fullscreen-spinner`: The ring the fullscreen button turns while it is pending.
|
|
106404
|
+
* - `fullscreen-text`: The box the fullscreen button's icon sits in.
|
|
106405
|
+
* - `header`: The strip above the terminal, with its name, your actions, and the controls.
|
|
106406
|
+
* - `label`: The terminal's name in the header.
|
|
106407
|
+
* - `live`: What screen readers hear after the frame acts: a match count, a copy, or a change to what Tab does. Visually hidden in the styled tier.
|
|
106408
|
+
* - `region`: The named group the terminal sits in.
|
|
106409
|
+
* - `restart`: The button in the status line that asks for a new process after the last one exited.
|
|
106410
|
+
* - `restart-button`: The Restart button's inner button.
|
|
106411
|
+
* - `restart-live`: The Restart button's live region, which speaks while the button is pending.
|
|
106412
|
+
* - `restart-spinner`: The ring the Restart button turns while it is pending.
|
|
106413
|
+
* - `restart-text`: The Restart button's label.
|
|
106414
|
+
* - `status`: The line under the terminal that says the process exited, or that Tab moves focus.
|
|
106415
|
+
* - `viewport`: The box the terminal is drawn in.
|
|
106416
|
+
*
|
|
106417
|
+
* ## CSS States
|
|
106418
|
+
*
|
|
106419
|
+
* These can be used to apply styling when a component is in a given state.
|
|
106420
|
+
*
|
|
106421
|
+
* - `bell`: The program rang the bell, held for a moment for a visual bell.
|
|
106422
|
+
* - `exited`: The process has exited, by `exit-code`.
|
|
106423
|
+
* - `find-open`: The find bar is open.
|
|
106424
|
+
* - `fullscreen`: The terminal fills the screen.
|
|
106425
|
+
* - `tab-moves-focus`: Tab moves focus out of the terminal, after Control+M.
|
|
106426
|
+
* - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
|
|
106427
|
+
*/
|
|
106428
|
+
"helix-terminal": Partial<
|
|
106429
|
+
HelixTerminalProps &
|
|
106430
|
+
HelixTerminalSolidJsProps &
|
|
106431
|
+
BaseProps<HelixTerminal, "solid"> &
|
|
106432
|
+
BaseEvents<HelixTerminal>
|
|
106433
|
+
>;
|
|
106434
|
+
|
|
105595
106435
|
/**
|
|
105596
106436
|
* `as` sets the element, which decides the document outline and what a screen
|
|
105597
106437
|
* reader announces. `variant` sets the type ramp, which decides size, weight,
|
|
@@ -112340,6 +113180,68 @@ export type CustomCssProperties = {
|
|
|
112340
113180
|
"--tag-gap"?: (string) | undefined;
|
|
112341
113181
|
/** The corner radius of the tag. */
|
|
112342
113182
|
"--tag-radius"?: (string) | undefined;
|
|
113183
|
+
/** The frame's height, as a length. Ignored with `fill`, where the container decides it. */
|
|
113184
|
+
"--terminal-block-size"?: (string) | undefined;
|
|
113185
|
+
/** The edge around the frame and the rules inside it. */
|
|
113186
|
+
"--terminal-border-color"?: (string) | undefined;
|
|
113187
|
+
/** The face of the grid. Defaults to the monospaced face. */
|
|
113188
|
+
"--terminal-font-family"?: (string) | undefined;
|
|
113189
|
+
/** The size of the grid's text. Defaults to the small text step. */
|
|
113190
|
+
"--terminal-font-size"?: (string) | undefined;
|
|
113191
|
+
/** The fill of the header, the find bar, and the status line. */
|
|
113192
|
+
"--terminal-header-background-color"?: (string) | undefined;
|
|
113193
|
+
/** The space between the frame's edge and the grid. */
|
|
113194
|
+
"--terminal-padding"?: (string) | undefined;
|
|
113195
|
+
/** The frame's corners. */
|
|
113196
|
+
"--terminal-radius"?: (string) | undefined;
|
|
113197
|
+
/** The ground of the current match of a search. */
|
|
113198
|
+
"--terminal-active-match-background-color"?: (string) | undefined;
|
|
113199
|
+
/** The edge of the current match of a search. */
|
|
113200
|
+
"--terminal-active-match-border-color"?: (string) | undefined;
|
|
113201
|
+
/** ANSI black, which codes `30` and `40` draw. */
|
|
113202
|
+
"--terminal-ansi-black"?: (string) | undefined;
|
|
113203
|
+
/** ANSI blue, which codes `34` and `44` draw. */
|
|
113204
|
+
"--terminal-ansi-blue"?: (string) | undefined;
|
|
113205
|
+
/** ANSI bright black, which codes `90` and `100` draw. */
|
|
113206
|
+
"--terminal-ansi-bright-black"?: (string) | undefined;
|
|
113207
|
+
/** ANSI bright blue, which codes `94` and `104` draw. */
|
|
113208
|
+
"--terminal-ansi-bright-blue"?: (string) | undefined;
|
|
113209
|
+
/** ANSI bright cyan, which codes `96` and `106` draw. */
|
|
113210
|
+
"--terminal-ansi-bright-cyan"?: (string) | undefined;
|
|
113211
|
+
/** ANSI bright green, which codes `92` and `102` draw. */
|
|
113212
|
+
"--terminal-ansi-bright-green"?: (string) | undefined;
|
|
113213
|
+
/** ANSI bright magenta, which codes `95` and `105` draw. */
|
|
113214
|
+
"--terminal-ansi-bright-magenta"?: (string) | undefined;
|
|
113215
|
+
/** ANSI bright red, which codes `91` and `101` draw. */
|
|
113216
|
+
"--terminal-ansi-bright-red"?: (string) | undefined;
|
|
113217
|
+
/** ANSI bright white, which codes `97` and `107` draw. */
|
|
113218
|
+
"--terminal-ansi-bright-white"?: (string) | undefined;
|
|
113219
|
+
/** ANSI bright yellow, which codes `93` and `103` draw. */
|
|
113220
|
+
"--terminal-ansi-bright-yellow"?: (string) | undefined;
|
|
113221
|
+
/** ANSI cyan, which codes `36` and `46` draw. */
|
|
113222
|
+
"--terminal-ansi-cyan"?: (string) | undefined;
|
|
113223
|
+
/** ANSI green, which codes `32` and `42` draw. */
|
|
113224
|
+
"--terminal-ansi-green"?: (string) | undefined;
|
|
113225
|
+
/** ANSI magenta, which codes `35` and `45` draw. */
|
|
113226
|
+
"--terminal-ansi-magenta"?: (string) | undefined;
|
|
113227
|
+
/** ANSI red, which codes `31` and `41` draw. */
|
|
113228
|
+
"--terminal-ansi-red"?: (string) | undefined;
|
|
113229
|
+
/** ANSI white, which codes `37` and `47` draw. */
|
|
113230
|
+
"--terminal-ansi-white"?: (string) | undefined;
|
|
113231
|
+
/** ANSI yellow, which codes `33` and `43` draw. */
|
|
113232
|
+
"--terminal-ansi-yellow"?: (string) | undefined;
|
|
113233
|
+
/** The ground of the grid. */
|
|
113234
|
+
"--terminal-background-color"?: (string) | undefined;
|
|
113235
|
+
/** The text of the grid where the program sets no color. */
|
|
113236
|
+
"--terminal-color"?: (string) | undefined;
|
|
113237
|
+
/** The cursor. */
|
|
113238
|
+
"--terminal-cursor-color"?: (string) | undefined;
|
|
113239
|
+
/** The ground of every match of a search but the current one. */
|
|
113240
|
+
"--terminal-match-background-color"?: (string) | undefined;
|
|
113241
|
+
/** The grid's scrollbar. */
|
|
113242
|
+
"--terminal-scrollbar-thumb-color"?: (string) | undefined;
|
|
113243
|
+
/** The ground of selected text. See-through, so the text keeps its color. */
|
|
113244
|
+
"--terminal-selection-background-color"?: (string) | undefined;
|
|
112343
113245
|
/** The typeface. Overrides the ramp's. */
|
|
112344
113246
|
"--text-font-family"?: (string) | undefined;
|
|
112345
113247
|
/** The size. Overrides the ramp's. */
|