@fusion.dev/helix-core 0.223.0 → 0.224.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/custom-elements.json +1 -1
- package/dist/controllers/reorder-controller/reorder-controller.js +2 -3
- package/dist/events/before-activate.d.ts +3 -1
- package/dist/events/before-change.d.ts +2 -0
- package/dist/events/before-check.d.ts +31 -0
- package/dist/events/before-check.js +11 -0
- package/dist/events/before-close.d.ts +5 -1
- package/dist/events/before-filter.d.ts +17 -0
- package/dist/events/before-filter.js +11 -0
- package/dist/events/before-listen.d.ts +5 -1
- package/dist/events/before-navigate.d.ts +16 -0
- package/dist/events/before-navigate.js +11 -0
- package/dist/events/before-open.d.ts +2 -0
- package/dist/events/before-pin.d.ts +5 -1
- package/dist/events/before-reorder.d.ts +2 -0
- package/dist/events/before-resize.d.ts +5 -1
- package/dist/events/before-select.d.ts +19 -0
- package/dist/events/before-select.js +11 -0
- package/dist/events/before-sort.d.ts +19 -0
- package/dist/events/before-sort.js +11 -0
- package/dist/events/check.d.ts +15 -0
- package/dist/events/{caret.js → check.js} +3 -3
- package/dist/events/details.d.ts +11 -514
- package/dist/events/events.d.ts +27 -170
- package/dist/events/events.js +13 -165
- package/dist/events/expand.d.ts +2 -1
- package/dist/events/filter.d.ts +3 -4
- package/dist/events/filter.js +1 -1
- package/dist/events/found.d.ts +1 -1
- package/dist/events/names.d.ts +5 -16
- package/dist/events/names.js +11 -15
- package/dist/events/navigate.d.ts +3 -5
- package/dist/events/navigate.js +1 -1
- package/dist/events/reorder.d.ts +12 -13
- package/dist/events/reorder.js +1 -1
- package/dist/events/select.d.ts +4 -4
- package/dist/events/select.js +1 -1
- package/dist/events/sort.d.ts +3 -9
- package/dist/events/sort.js +1 -1
- package/dist/helix-element/helix-element.d.ts +31 -14
- package/dist/helix-element/helix-element.js +25 -3
- package/dist/helix-element/react-audit-off.d.ts +3 -1
- package/dist/helix-element/react-audit-off.js +1 -0
- package/dist/helix-element/react-audit.d.ts +22 -0
- package/dist/helix-element/react-audit.js +18 -0
- package/dist/helix-element/react-bridge.d.ts +34 -1
- package/dist/helix-element/react-bridge.js +33 -9
- package/dist/helix-element/react-root.d.ts +2 -0
- package/dist/helix-element/react-root.js +9 -0
- package/dist/helix-form-element/helix-form-element-base.js +12 -12
- package/dist/helix-form-element/helix-form-element.js +4 -3
- package/dist/index.d.ts +4 -2
- package/dist/index.js +4 -2
- package/dist/mixins/mixin-controller-checked/mixin-controller-checked.d.ts +3 -3
- package/dist/mixins/mixin-controller-checked/mixin-controller-checked.js +2 -2
- package/dist/mixins/mixin-field/mixin-field.js +9 -8
- package/dist/mixins/mixin-picker-feedback/mixin-picker-feedback.js +3 -2
- package/dist/mixins/mixin-picker-field/mixin-picker-field.js +4 -3
- package/dist/mixins/mixin-segmented-field/mixin-segmented-field.js +5 -4
- package/dist/mixins/mixin-selectable-item/mixin-selectable-item.d.ts +1 -1
- package/dist/mixins/mixin-selectable-item/mixin-selectable-item.js +2 -2
- package/dist/utils/audit-children/audit-children.d.ts +1 -1
- package/dist/utils/audit-name/audit-name.js +12 -1
- package/dist/utils/controls/controls.js +6 -1
- package/dist/utils/draw-icon/draw-icon.d.ts +1 -1
- package/dist/utils/follow-link/follow-link.d.ts +1 -1
- package/dist/utils/report-runtime/report-runtime.d.ts +5 -0
- package/dist/utils/tell-disclosure/tell-disclosure.d.ts +6 -3
- package/dist/utils/ticker/ticker.d.ts +5 -0
- package/dist/version.d.ts +4 -5
- package/dist/version.js +1 -1
- package/package.json +6 -6
- package/dist/events/action.d.ts +0 -12
- package/dist/events/action.js +0 -6
- package/dist/events/aura-fallback.d.ts +0 -12
- package/dist/events/aura-fallback.js +0 -11
- package/dist/events/band.d.ts +0 -13
- package/dist/events/band.js +0 -11
- package/dist/events/before-collapse.d.ts +0 -6
- package/dist/events/before-collapse.js +0 -11
- package/dist/events/before-edit.d.ts +0 -6
- package/dist/events/before-edit.js +0 -11
- package/dist/events/before-move.d.ts +0 -17
- package/dist/events/before-move.js +0 -11
- package/dist/events/before-panel-resize.d.ts +0 -13
- package/dist/events/before-panel-resize.js +0 -11
- package/dist/events/before-paste.d.ts +0 -13
- package/dist/events/before-paste.js +0 -11
- package/dist/events/before-reconnect.d.ts +0 -14
- package/dist/events/before-reconnect.js +0 -11
- package/dist/events/before-relabel.d.ts +0 -15
- package/dist/events/before-relabel.js +0 -11
- package/dist/events/before-split.d.ts +0 -12
- package/dist/events/before-split.js +0 -11
- package/dist/events/before-toggle.d.ts +0 -23
- package/dist/events/before-toggle.js +0 -11
- package/dist/events/canvas-edit.d.ts +0 -16
- package/dist/events/canvas-edit.js +0 -11
- package/dist/events/canvas-pan.d.ts +0 -13
- package/dist/events/canvas-pan.js +0 -11
- package/dist/events/canvas-view.d.ts +0 -14
- package/dist/events/canvas-view.js +0 -11
- package/dist/events/canvas-zoom.d.ts +0 -6
- package/dist/events/canvas-zoom.js +0 -11
- package/dist/events/caret.d.ts +0 -17
- package/dist/events/collapse.d.ts +0 -12
- package/dist/events/collapse.js +0 -11
- package/dist/events/connect.d.ts +0 -14
- package/dist/events/connect.js +0 -11
- package/dist/events/console.d.ts +0 -13
- package/dist/events/console.js +0 -11
- package/dist/events/create.d.ts +0 -18
- package/dist/events/create.js +0 -11
- package/dist/events/device-button.d.ts +0 -14
- package/dist/events/device-button.js +0 -11
- package/dist/events/device-key.d.ts +0 -16
- package/dist/events/device-key.js +0 -11
- package/dist/events/device-screenshot.d.ts +0 -13
- package/dist/events/device-screenshot.js +0 -10
- package/dist/events/device-scroll.d.ts +0 -14
- package/dist/events/device-scroll.js +0 -11
- package/dist/events/device-swipe.d.ts +0 -15
- package/dist/events/device-swipe.js +0 -11
- package/dist/events/device-tap.d.ts +0 -13
- package/dist/events/device-tap.js +0 -11
- package/dist/events/device-text.d.ts +0 -13
- package/dist/events/device-text.js +0 -11
- package/dist/events/device-touch.d.ts +0 -15
- package/dist/events/device-touch.js +0 -11
- package/dist/events/edit.d.ts +0 -12
- package/dist/events/edit.js +0 -11
- package/dist/events/end.d.ts +0 -9
- package/dist/events/end.js +0 -6
- package/dist/events/facet.d.ts +0 -17
- package/dist/events/facet.js +0 -11
- package/dist/events/filtered.d.ts +0 -12
- package/dist/events/filtered.js +0 -11
- package/dist/events/graph-filter.d.ts +0 -10
- package/dist/events/graph-filter.js +0 -11
- package/dist/events/graph-layout.d.ts +0 -10
- package/dist/events/graph-layout.js +0 -11
- package/dist/events/graph-pan.d.ts +0 -9
- package/dist/events/graph-pan.js +0 -11
- package/dist/events/graph-part-change.d.ts +0 -10
- package/dist/events/graph-part-change.js +0 -11
- package/dist/events/graph-ready.d.ts +0 -8
- package/dist/events/graph-ready.js +0 -6
- package/dist/events/graph-signal.d.ts +0 -11
- package/dist/events/graph-signal.js +0 -11
- package/dist/events/graph-zoom.d.ts +0 -6
- package/dist/events/graph-zoom.js +0 -11
- package/dist/events/history.d.ts +0 -16
- package/dist/events/history.js +0 -11
- package/dist/events/map-cluster.d.ts +0 -15
- package/dist/events/map-cluster.js +0 -11
- package/dist/events/map-pan.d.ts +0 -18
- package/dist/events/map-pan.js +0 -11
- package/dist/events/map-part-change.d.ts +0 -16
- package/dist/events/map-part-change.js +0 -11
- package/dist/events/map-ready.d.ts +0 -15
- package/dist/events/map-ready.js +0 -6
- package/dist/events/map-rotate.d.ts +0 -9
- package/dist/events/map-rotate.js +0 -11
- package/dist/events/map-tilt.d.ts +0 -9
- package/dist/events/map-tilt.js +0 -11
- package/dist/events/map-zoom.d.ts +0 -13
- package/dist/events/map-zoom.js +0 -11
- package/dist/events/move.d.ts +0 -11
- package/dist/events/move.js +0 -11
- package/dist/events/next.d.ts +0 -23
- package/dist/events/next.js +0 -11
- package/dist/events/panel-resize.d.ts +0 -12
- package/dist/events/panel-resize.js +0 -11
- package/dist/events/pasted.d.ts +0 -6
- package/dist/events/pasted.js +0 -11
- package/dist/events/press.d.ts +0 -19
- package/dist/events/press.js +0 -11
- package/dist/events/preview.d.ts +0 -14
- package/dist/events/preview.js +0 -11
- package/dist/events/previous.d.ts +0 -6
- package/dist/events/previous.js +0 -11
- package/dist/events/range-change.d.ts +0 -10
- package/dist/events/range-change.js +0 -11
- package/dist/events/read.d.ts +0 -19
- package/dist/events/read.js +0 -11
- package/dist/events/reconnect.d.ts +0 -6
- package/dist/events/reconnect.js +0 -11
- package/dist/events/reject.d.ts +0 -13
- package/dist/events/reject.js +0 -11
- package/dist/events/relabel.d.ts +0 -6
- package/dist/events/relabel.js +0 -11
- package/dist/events/remove.d.ts +0 -12
- package/dist/events/remove.js +0 -11
- package/dist/events/reordered.d.ts +0 -12
- package/dist/events/reordered.js +0 -11
- package/dist/events/sample-end.d.ts +0 -5
- package/dist/events/sample-end.js +0 -6
- package/dist/events/sample-start.d.ts +0 -18
- package/dist/events/sample-start.js +0 -6
- package/dist/events/scrolled.d.ts +0 -32
- package/dist/events/scrolled.js +0 -11
- package/dist/events/selected.d.ts +0 -12
- package/dist/events/selected.js +0 -11
- package/dist/events/send.d.ts +0 -18
- package/dist/events/send.js +0 -11
- package/dist/events/shortcut.d.ts +0 -13
- package/dist/events/shortcut.js +0 -11
- package/dist/events/sorted.d.ts +0 -15
- package/dist/events/sorted.js +0 -11
- package/dist/events/split.d.ts +0 -12
- package/dist/events/split.js +0 -11
- package/dist/events/stop.d.ts +0 -12
- package/dist/events/stop.js +0 -6
- package/dist/events/strands-fallback.d.ts +0 -13
- package/dist/events/strands-fallback.js +0 -11
- package/dist/events/terminal-bell.d.ts +0 -13
- package/dist/events/terminal-bell.js +0 -6
- package/dist/events/terminal-input.d.ts +0 -14
- package/dist/events/terminal-input.js +0 -11
- package/dist/events/terminal-link.d.ts +0 -15
- package/dist/events/terminal-link.js +0 -11
- package/dist/events/terminal-resize.d.ts +0 -13
- package/dist/events/terminal-resize.js +0 -11
- package/dist/events/terminal-restart.d.ts +0 -11
- package/dist/events/terminal-restart.js +0 -10
- package/dist/events/terminal-title.d.ts +0 -12
- package/dist/events/terminal-title.js +0 -11
- package/dist/events/toggle.d.ts +0 -15
- package/dist/events/toggle.js +0 -11
- package/dist/events/tour-ask.d.ts +0 -16
- package/dist/events/tour-ask.js +0 -11
- package/dist/events/tour-status.d.ts +0 -14
- package/dist/events/tour-status.js +0 -11
- package/dist/events/typing.d.ts +0 -10
- package/dist/events/typing.js +0 -11
package/dist/events/details.d.ts
CHANGED
|
@@ -3,11 +3,6 @@ export interface OpenDetail {
|
|
|
3
3
|
/** The state the element is moving to. */
|
|
4
4
|
open: boolean;
|
|
5
5
|
}
|
|
6
|
-
/** Detail carried by `helix-next` and `helix-previous`. */
|
|
7
|
-
export interface SkipDetail {
|
|
8
|
-
/** Which way the reader asked to go. */
|
|
9
|
-
to: 'next' | 'previous';
|
|
10
|
-
}
|
|
11
6
|
/**
|
|
12
7
|
* Detail carried by a pan request, `helix-map-pan` being the one Map sends.
|
|
13
8
|
*
|
|
@@ -27,157 +22,7 @@ export interface ViewportZoomDetail {
|
|
|
27
22
|
/** Which way, `1` in and `-1` out, so a consumer can multiply by their own step. */
|
|
28
23
|
by: number;
|
|
29
24
|
}
|
|
30
|
-
/**
|
|
31
|
-
* Where a move or a resize puts each card it carries, in the board's own
|
|
32
|
-
* units.
|
|
33
|
-
*
|
|
34
|
-
* **One contract for both**, because what a controlled page does with either
|
|
35
|
-
* is the same: write the geometry the detail says onto the cards it renders. A
|
|
36
|
-
* resize says `width` and `height` as well, and moves `x` and `y` too when it
|
|
37
|
-
* is dragged from a corner other than the bottom right.
|
|
38
|
-
*/
|
|
39
|
-
export interface MoveDetail {
|
|
40
|
-
/**
|
|
41
|
-
* Every card the gesture moves, the one the reader took hold of first.
|
|
42
|
-
*
|
|
43
|
-
* **A list, because a group carries what is inside it.** Dragging a group
|
|
44
|
-
* moves its cards with it, which is what every board does, and a controlled
|
|
45
|
-
* consumer who refuses the move has to write every position it would have
|
|
46
|
-
* written, not only the one the pointer was on.
|
|
47
|
-
*/
|
|
48
|
-
nodes: Array<{
|
|
49
|
-
name: string;
|
|
50
|
-
x: number;
|
|
51
|
-
y: number;
|
|
52
|
-
width?: number;
|
|
53
|
-
height?: number;
|
|
54
|
-
}>;
|
|
55
|
-
}
|
|
56
|
-
/** Which two cards a reader asked to join, by name, and the side they started from. */
|
|
57
|
-
export interface ConnectDetail {
|
|
58
|
-
from: string;
|
|
59
|
-
to: string;
|
|
60
|
-
/** The side the reader drew from, where they drew from one. */
|
|
61
|
-
fromSide?: 'top' | 'right' | 'bottom' | 'left' | undefined;
|
|
62
|
-
/** The side nearest where they let go, where they let go over a card. */
|
|
63
|
-
toSide?: 'top' | 'right' | 'bottom' | 'left' | undefined;
|
|
64
|
-
}
|
|
65
|
-
/** A side of a card, as JSON Canvas names it. */
|
|
66
|
-
type PasteSide = 'top' | 'right' | 'bottom' | 'left';
|
|
67
|
-
/**
|
|
68
|
-
* What a paste adds to a board: a JSON Canvas document whose ids the board
|
|
69
|
-
* does not hold yet, its cards moved clear of the ones they were copied from.
|
|
70
|
-
* The shape is the format's, which `fromJsonCanvas` reads.
|
|
71
|
-
*/
|
|
72
|
-
export interface PasteDetail {
|
|
73
|
-
document: {
|
|
74
|
-
edges?: Array<{
|
|
75
|
-
color?: string | undefined;
|
|
76
|
-
fromEnd?: 'none' | 'arrow' | undefined;
|
|
77
|
-
fromNode: string;
|
|
78
|
-
fromSide?: PasteSide | undefined;
|
|
79
|
-
id: string;
|
|
80
|
-
label?: string | undefined;
|
|
81
|
-
path?: 'curve' | 'straight' | 'step' | undefined;
|
|
82
|
-
toEnd?: 'none' | 'arrow' | undefined;
|
|
83
|
-
toNode: string;
|
|
84
|
-
toSide?: PasteSide | undefined;
|
|
85
|
-
}>;
|
|
86
|
-
nodes?: Array<{
|
|
87
|
-
background?: string | undefined;
|
|
88
|
-
backgroundStyle?: 'cover' | 'ratio' | 'repeat' | undefined;
|
|
89
|
-
color?: string | undefined;
|
|
90
|
-
file?: string | undefined;
|
|
91
|
-
height: number;
|
|
92
|
-
id: string;
|
|
93
|
-
label?: string | undefined;
|
|
94
|
-
subpath?: string | undefined;
|
|
95
|
-
text?: string | undefined;
|
|
96
|
-
type: 'text' | 'file' | 'link' | 'group';
|
|
97
|
-
url?: string | undefined;
|
|
98
|
-
width: number;
|
|
99
|
-
x: number;
|
|
100
|
-
y: number;
|
|
101
|
-
}>;
|
|
102
|
-
};
|
|
103
|
-
}
|
|
104
|
-
/** Where a connection's ends are going, and where they were. */
|
|
105
|
-
export interface ReconnectDetail {
|
|
106
|
-
/** The connection's name, where it has one. */
|
|
107
|
-
name: string;
|
|
108
|
-
/** Its ends before, so a page that named none of its connections can find it. */
|
|
109
|
-
was: {
|
|
110
|
-
from: string;
|
|
111
|
-
to: string;
|
|
112
|
-
};
|
|
113
|
-
from: string;
|
|
114
|
-
to: string;
|
|
115
|
-
fromSide?: 'top' | 'right' | 'bottom' | 'left' | undefined;
|
|
116
|
-
toSide?: 'top' | 'right' | 'bottom' | 'left' | undefined;
|
|
117
|
-
}
|
|
118
|
-
/** A label a reader rewrote on a board, and what it said before. */
|
|
119
|
-
export interface RelabelDetail {
|
|
120
|
-
/** What was relabelled: a connection, or a group, whose name the board draws. */
|
|
121
|
-
target: 'edge' | 'group';
|
|
122
|
-
/** Its name on the board. */
|
|
123
|
-
name: string;
|
|
124
|
-
/** A connection's ends, so a page that named none of its connections can find it. */
|
|
125
|
-
from?: string | undefined;
|
|
126
|
-
to?: string | undefined;
|
|
127
|
-
/** The new label, empty for none. */
|
|
128
|
-
label: string;
|
|
129
|
-
/** The label before. */
|
|
130
|
-
was: string;
|
|
131
|
-
}
|
|
132
|
-
/** Why a file field did not take a file. */
|
|
133
|
-
export type Refusal = 'count' | 'invalid' | 'size' | 'type';
|
|
134
|
-
/** One file a file field did not take, and why. */
|
|
135
|
-
export interface RefusedFile {
|
|
136
|
-
/** The file. */
|
|
137
|
-
readonly file: File;
|
|
138
|
-
/** What the field's `validate` said about it, where it was the one refusing. */
|
|
139
|
-
readonly message?: string;
|
|
140
|
-
/** Why it was not taken. */
|
|
141
|
-
readonly reason: Refusal;
|
|
142
|
-
}
|
|
143
|
-
/** The files a file field refused. */
|
|
144
|
-
export interface RejectDetail {
|
|
145
|
-
/** Each refused file with its reason, in the order they arrived. */
|
|
146
|
-
files: RefusedFile[];
|
|
147
|
-
}
|
|
148
|
-
/** What a reader asked to take off the board. */
|
|
149
|
-
export interface RemoveDetail {
|
|
150
|
-
/** The cards, by name. */
|
|
151
|
-
nodes: string[];
|
|
152
|
-
/**
|
|
153
|
-
* The connections, including every one attached to a card being removed,
|
|
154
|
-
* since a line to nothing is not drawn but its element would stay behind.
|
|
155
|
-
* Each carries its ends as well as its name, so a page that named none of
|
|
156
|
-
* its connections can still find them.
|
|
157
|
-
*/
|
|
158
|
-
edges: Array<{
|
|
159
|
-
name: string;
|
|
160
|
-
from: string;
|
|
161
|
-
to: string;
|
|
162
|
-
}>;
|
|
163
|
-
}
|
|
164
|
-
/**
|
|
165
|
-
* Where a board is looking: the point at the middle of the view, in the
|
|
166
|
-
* document's own units, and how far it is zoomed.
|
|
167
|
-
*
|
|
168
|
-
* The middle rather than a corner, so a view saved in one box and restored in
|
|
169
|
-
* a box of another size shows the same thing in the middle of it.
|
|
170
|
-
*/
|
|
171
|
-
export interface CanvasView {
|
|
172
|
-
x: number;
|
|
173
|
-
y: number;
|
|
174
|
-
zoom: number;
|
|
175
|
-
}
|
|
176
|
-
/** What `ViewportPanDetail` was called when only Map had one. */
|
|
177
|
-
export type MapPanDetail = ViewportPanDetail;
|
|
178
|
-
/** What `ViewportZoomDetail` was called when only Map had one. */
|
|
179
|
-
export type MapZoomDetail = ViewportZoomDetail;
|
|
180
|
-
/** Detail carried by `helix-navigate`. */
|
|
25
|
+
/** Detail carried by `helix-before-navigate` and `helix-navigate`. */
|
|
181
26
|
export interface NavigateDetail {
|
|
182
27
|
/**
|
|
183
28
|
* The page asked for, as a number, where the component pages by number.
|
|
@@ -189,7 +34,7 @@ export interface NavigateDetail {
|
|
|
189
34
|
/** Where the view is moving to, in whatever the component pages by. */
|
|
190
35
|
value: string;
|
|
191
36
|
}
|
|
192
|
-
/** Detail carried by `helix-filter`. */
|
|
37
|
+
/** Detail carried by `helix-before-filter` and `helix-filter`. */
|
|
193
38
|
export interface FilterDetail {
|
|
194
39
|
/** What the list is being narrowed to. */
|
|
195
40
|
value: string;
|
|
@@ -201,58 +46,7 @@ export interface FoundDetail {
|
|
|
201
46
|
/** Which match is current, counting from 0, or -1 for none. */
|
|
202
47
|
index: number;
|
|
203
48
|
}
|
|
204
|
-
/**
|
|
205
|
-
* Detail carried by `helix-facet`.
|
|
206
|
-
*
|
|
207
|
-
* **Everything needed to draw the chip, so nothing has to be looked up again.**
|
|
208
|
-
* A consumer hearing this renders a `FilterChip` from it and stops: the labels
|
|
209
|
-
* are the reader's words and the names are their own model's, and both are here
|
|
210
|
-
* because only the thing that read the declarations knows both.
|
|
211
|
-
*/
|
|
212
|
-
export interface FacetDetail {
|
|
213
|
-
/**
|
|
214
|
-
* How many values the comparison in force takes.
|
|
215
|
-
*
|
|
216
|
-
* **What tells an empty filter from no filter.** `values` empty usually means
|
|
217
|
-
* the field is not being filtered any more, and a consumer drops the chip; a
|
|
218
|
-
* comparison of arity `none`, `is empty` or `is set`, is a filter that has no
|
|
219
|
-
* values to carry and never will. Without this the two arrive identical, and
|
|
220
|
-
* the thing that read the declaration is the only thing that could say which.
|
|
221
|
-
*/
|
|
222
|
-
arity: 'many' | 'none' | 'one';
|
|
223
|
-
/** What the consumer's model calls the field. */
|
|
224
|
-
field: string;
|
|
225
|
-
/** What a reader is shown for the field. */
|
|
226
|
-
label: string;
|
|
227
|
-
/** What the consumer's model calls the comparison in force. */
|
|
228
|
-
operator: string;
|
|
229
|
-
/**
|
|
230
|
-
* The comparison as a reader sees it, and **empty for the field's usual one**.
|
|
231
|
-
*
|
|
232
|
-
* Passed straight to a chip's `operator-label`, which draws the segment only
|
|
233
|
-
* where there is one. Deciding it here is the point: the thing that read the
|
|
234
|
-
* field knows which of its operators is the default, and the chip never has
|
|
235
|
-
* to.
|
|
236
|
-
*/
|
|
237
|
-
operatorLabel: string;
|
|
238
|
-
/** What the field is compared to, as the consumer's own values. */
|
|
239
|
-
values: readonly string[];
|
|
240
|
-
}
|
|
241
|
-
/** Detail carried by `helix-read`. */
|
|
242
|
-
export interface ReadDetail {
|
|
243
|
-
/**
|
|
244
|
-
* The state being asked for, as a boolean rather than a word that reads like
|
|
245
|
-
* one, which is `helix-before-toggle`'s rule and for the same reason: `"false"` is
|
|
246
|
-
* truthy and a consumer who forgets that marks everything read.
|
|
247
|
-
*/
|
|
248
|
-
read: boolean;
|
|
249
|
-
}
|
|
250
|
-
/** Detail carried by `helix-send`. */
|
|
251
|
-
export interface SendDetail {
|
|
252
|
-
/** What the reader wrote, as they left it. */
|
|
253
|
-
value: string;
|
|
254
|
-
}
|
|
255
|
-
/** Detail carried by `helix-sort`. */
|
|
49
|
+
/** Detail carried by `helix-before-sort` and `helix-sort`. */
|
|
256
50
|
export interface SortDetail {
|
|
257
51
|
/**
|
|
258
52
|
* The order being asked for, as `field:direction`.
|
|
@@ -270,121 +64,11 @@ export interface SortDetail {
|
|
|
270
64
|
*/
|
|
271
65
|
value: string;
|
|
272
66
|
}
|
|
273
|
-
/** A hardware button Device Screen draws, named for what it does on the device. */
|
|
274
|
-
export type DeviceButton = 'back' | 'home' | 'power' | 'recents' | 'rotate-left' | 'rotate-right' | 'volume-down' | 'volume-up';
|
|
275
|
-
/** Detail carried by `helix-device-button`. */
|
|
276
|
-
export interface DeviceButtonDetail {
|
|
277
|
-
/** Which button was pressed. */
|
|
278
|
-
button: DeviceButton;
|
|
279
|
-
/**
|
|
280
|
-
* How long the button was held, in milliseconds. `0` for a press from a key
|
|
281
|
-
* or a script, which has no length.
|
|
282
|
-
*/
|
|
283
|
-
duration: number;
|
|
284
|
-
}
|
|
285
|
-
/** Detail carried by `helix-device-key`. */
|
|
286
|
-
export interface DeviceKeyDetail {
|
|
287
|
-
/** Whether Alt, or Option on a Mac, was held. */
|
|
288
|
-
altKey: boolean;
|
|
289
|
-
/** The physical key, as `KeyboardEvent.code` names it: `KeyA`, `Enter`, `ArrowLeft`. */
|
|
290
|
-
code: string;
|
|
291
|
-
/** Whether Control was held. */
|
|
292
|
-
ctrlKey: boolean;
|
|
293
|
-
/** What the press produced, as `KeyboardEvent.key` names it: `a`, `A`, `Enter`. */
|
|
294
|
-
key: string;
|
|
295
|
-
/** Whether Command on a Mac, or the Windows key, was held. */
|
|
296
|
-
metaKey: boolean;
|
|
297
|
-
/** Whether the key went down or came up. */
|
|
298
|
-
phase: 'down' | 'up';
|
|
299
|
-
/** Whether the press is the key repeating while it is held. */
|
|
300
|
-
repeat: boolean;
|
|
301
|
-
/** Whether Shift was held. */
|
|
302
|
-
shiftKey: boolean;
|
|
303
|
-
}
|
|
304
|
-
/** Detail carried by `helix-device-scroll`. */
|
|
305
|
-
export interface DeviceScrollDetail {
|
|
306
|
-
/** How far across, in device units, in the wheel's sense: positive scrolls toward the right. */
|
|
307
|
-
deltaX: number;
|
|
308
|
-
/** How far down, in device units, in the wheel's sense: positive scrolls toward the bottom. */
|
|
309
|
-
deltaY: number;
|
|
310
|
-
/** The screen's height in the units the point is measured in. */
|
|
311
|
-
height: number;
|
|
312
|
-
/** The screen's width in the units the point is measured in. */
|
|
313
|
-
width: number;
|
|
314
|
-
/** Where the pointer is, across from the screen's left edge. */
|
|
315
|
-
x: number;
|
|
316
|
-
/** Where the pointer is, down from the screen's top edge. */
|
|
317
|
-
y: number;
|
|
318
|
-
}
|
|
319
|
-
/** Detail carried by `helix-device-swipe`. */
|
|
320
|
-
export interface DeviceSwipeDetail {
|
|
321
|
-
/** How long the finger was down, in milliseconds. */
|
|
322
|
-
duration: number;
|
|
323
|
-
/** Where the touch began, across from the screen's left edge. */
|
|
324
|
-
fromX: number;
|
|
325
|
-
/** Where the touch began, down from the screen's top edge. */
|
|
326
|
-
fromY: number;
|
|
327
|
-
/** The screen's height in the units the points are measured in. */
|
|
328
|
-
height: number;
|
|
329
|
-
/** Where the touch ended, across from the screen's left edge. */
|
|
330
|
-
toX: number;
|
|
331
|
-
/** Where the touch ended, down from the screen's top edge. */
|
|
332
|
-
toY: number;
|
|
333
|
-
/** The screen's width in the units the points are measured in. */
|
|
334
|
-
width: number;
|
|
335
|
-
}
|
|
336
|
-
/** Detail carried by `helix-device-tap`. */
|
|
337
|
-
export interface DeviceTapDetail {
|
|
338
|
-
/** How long the finger was down, in milliseconds. A long press is a long tap. */
|
|
339
|
-
duration: number;
|
|
340
|
-
/** The screen's height in the units the point is measured in. */
|
|
341
|
-
height: number;
|
|
342
|
-
/** The screen's width in the units the point is measured in. */
|
|
343
|
-
width: number;
|
|
344
|
-
/** Where the tap was, across from the screen's left edge. */
|
|
345
|
-
x: number;
|
|
346
|
-
/** Where the tap was, down from the screen's top edge. */
|
|
347
|
-
y: number;
|
|
348
|
-
}
|
|
349
|
-
/** Detail carried by `helix-device-text`. */
|
|
350
|
-
export interface DeviceTextDetail {
|
|
351
|
-
/** The text, as plain text. */
|
|
352
|
-
text: string;
|
|
353
|
-
}
|
|
354
|
-
/** Detail carried by `helix-device-touch`. */
|
|
355
|
-
export interface DeviceTouchDetail {
|
|
356
|
-
/** The screen's height in the units the point is measured in. */
|
|
357
|
-
height: number;
|
|
358
|
-
/**
|
|
359
|
-
* Which finger, counting from `0`. A finger keeps its number until it lifts,
|
|
360
|
-
* and the lowest free number goes to the next finger down.
|
|
361
|
-
*/
|
|
362
|
-
id: number;
|
|
363
|
-
/**
|
|
364
|
-
* Where the touch is in its life: `down` as the finger lands, `move` as it
|
|
365
|
-
* moves, `up` as it lifts, and `cancel` when the browser takes the touch
|
|
366
|
-
* away, which ends it without a lift.
|
|
367
|
-
*/
|
|
368
|
-
phase: 'cancel' | 'down' | 'move' | 'up';
|
|
369
|
-
/** The screen's width in the units the point is measured in. */
|
|
370
|
-
width: number;
|
|
371
|
-
/** Where the finger is, across from the screen's left edge. */
|
|
372
|
-
x: number;
|
|
373
|
-
/** Where the finger is, down from the screen's top edge. */
|
|
374
|
-
y: number;
|
|
375
|
-
}
|
|
376
67
|
/** Detail carried by `helix-dismiss`. */
|
|
377
68
|
export interface DismissDetail {
|
|
378
69
|
/** Text content of the element asking to go, for identifying which it was. */
|
|
379
70
|
label: string;
|
|
380
71
|
}
|
|
381
|
-
/** What a stop's own controls ask the tour to do. */
|
|
382
|
-
export interface TourAskDetail {
|
|
383
|
-
/**
|
|
384
|
-
* Which control was pressed.
|
|
385
|
-
*/
|
|
386
|
-
what: 'back' | 'next' | 'skip';
|
|
387
|
-
}
|
|
388
72
|
/**
|
|
389
73
|
* Detail carried by every request that proposes a value.
|
|
390
74
|
*
|
|
@@ -396,7 +80,7 @@ export interface TourAskDetail {
|
|
|
396
80
|
*
|
|
397
81
|
* A boolean is the case where it *is* lost, because `"false"` is truthy, so a
|
|
398
82
|
* consumer who forgets to compare against the word gets the opposite answer and
|
|
399
|
-
* no error. That is why checkedness has `helix-before-
|
|
83
|
+
* no error. That is why checkedness has `helix-before-check` and its own boolean, and
|
|
400
84
|
* it is the line to hold: **stringify a value, never a fact.** A new control
|
|
401
85
|
* whose state is a boolean wants an event with a typed detail, not a `String()`
|
|
402
86
|
* call here.
|
|
@@ -417,15 +101,16 @@ export interface ChangeDetail {
|
|
|
417
101
|
value: string;
|
|
418
102
|
}
|
|
419
103
|
/**
|
|
420
|
-
* Detail carried by `helix-before-reorder
|
|
421
|
-
*
|
|
104
|
+
* Detail carried by `helix-before-reorder` and `helix-reorder`: one row,
|
|
105
|
+
* item, or column moved to a new place.
|
|
422
106
|
*
|
|
423
107
|
* `from` and `to` count from 0 in the old order and in `keys`. Where your
|
|
424
108
|
* array holds every key in the same order, `rows.splice(to, 0,
|
|
425
109
|
* ...rows.splice(from, 1))` makes the same move.
|
|
426
110
|
*
|
|
427
111
|
* **`kind` is a field because one element sends both.** A data table moves its
|
|
428
|
-
* rows and its columns, and both are `helix-reorder`
|
|
112
|
+
* rows and its columns, and both are `helix-before-reorder` and `helix-reorder`
|
|
113
|
+
* from the same host.
|
|
429
114
|
*/
|
|
430
115
|
export interface ReorderDetail extends ChangeDetail {
|
|
431
116
|
/** Where the key was before the move, counting from 0 in the old order. */
|
|
@@ -456,23 +141,6 @@ export interface ActivateDetail extends ChangeDetail {
|
|
|
456
141
|
/** The value that was current before the move, where the set knows it. */
|
|
457
142
|
previous?: string;
|
|
458
143
|
}
|
|
459
|
-
/** Where each note was laid out, by its `id`, in the renderer's own units. */
|
|
460
|
-
export interface GraphLayoutDetail {
|
|
461
|
-
positions: Record<string, {
|
|
462
|
-
x: number;
|
|
463
|
-
y: number;
|
|
464
|
-
z?: number | undefined;
|
|
465
|
-
}>;
|
|
466
|
-
}
|
|
467
|
-
/** What changed on a graph frame that the renderer has to hear. */
|
|
468
|
-
export interface GraphPartChangeDetail {
|
|
469
|
-
/**
|
|
470
|
-
* `data` for the notes or the links, which are drawn again; `focus` for the
|
|
471
|
-
* selected note or the depth, which change what is emphasized and shown;
|
|
472
|
-
* `gestures` for which gestures the renderer takes.
|
|
473
|
-
*/
|
|
474
|
-
kind: 'data' | 'focus' | 'gestures';
|
|
475
|
-
}
|
|
476
144
|
/** Detail carried by `helix-plot-change`. */
|
|
477
145
|
export interface PlotChangeDetail {
|
|
478
146
|
/** `data` for the points or the axes, which are drawn again; `focus` for the point the keys rest on. */
|
|
@@ -485,77 +153,12 @@ export interface PlotTurnDetail {
|
|
|
485
153
|
/** Steps to tilt, positive to look from higher. */
|
|
486
154
|
up: number;
|
|
487
155
|
}
|
|
488
|
-
/** One signal between two notes, as the frame's `signal()` sends it. */
|
|
489
|
-
export interface GraphSignalDetail {
|
|
490
|
-
/** The note the signal leaves, by its `id`. */
|
|
491
|
-
from: string;
|
|
492
|
-
/**
|
|
493
|
-
* What the signal means, which colors it. Where none is given, the signal
|
|
494
|
-
* turns from the first note's color to the second's as it crosses.
|
|
495
|
-
*/
|
|
496
|
-
tone?: 'accent' | 'danger' | 'info' | 'neutral' | 'primary' | 'success' | 'warning' | undefined;
|
|
497
|
-
/** The note the signal reaches, by its `id`. */
|
|
498
|
-
to: string;
|
|
499
|
-
}
|
|
500
|
-
/** Detail carried by `helix-graph-filter`. */
|
|
501
|
-
export interface GraphFilterDetail {
|
|
502
|
-
/** The groups the graph would hide, by name: every group the reader has turned off, after this press. */
|
|
503
|
-
hidden: readonly string[];
|
|
504
|
-
}
|
|
505
|
-
/** A rotate request: turn by some degrees, or turn to a bearing. */
|
|
506
|
-
export interface MapRotateDetail {
|
|
507
|
-
/** Degrees to turn the map clockwise. Negative turns it counterclockwise. */
|
|
508
|
-
by?: number;
|
|
509
|
-
/** The bearing to turn the map to, in degrees clockwise from north. `0` faces north. */
|
|
510
|
-
to?: number;
|
|
511
|
-
}
|
|
512
|
-
/** A tilt request, in degrees. */
|
|
513
|
-
export interface MapTiltDetail {
|
|
514
|
-
/** Degrees to tilt the map toward the horizon. Negative tilts it back toward flat. */
|
|
515
|
-
by?: number;
|
|
516
|
-
/** The tilt to go to, in degrees from looking straight down. `0` is flat. */
|
|
517
|
-
to?: number;
|
|
518
|
-
}
|
|
519
|
-
/** What changed on a part of a map: a line or a shape, or something standing on a place. */
|
|
520
|
-
export interface MapPartChangeDetail {
|
|
521
|
-
/**
|
|
522
|
-
* `layer` for a route or an area, which is redrawn; `place` for a marker or
|
|
523
|
-
* a position, which is moved; `cluster` for a marker gathered into another
|
|
524
|
-
* or let go, which moves the frame's tab stop; `menu` for the frame's layers
|
|
525
|
-
* menu opening, which asks for its map-type previews; `gestures` for which
|
|
526
|
-
* gestures the map takes, which the renderer is told.
|
|
527
|
-
*/
|
|
528
|
-
kind: 'cluster' | 'gestures' | 'layer' | 'menu' | 'place';
|
|
529
|
-
}
|
|
530
|
-
/** What a cluster a reader pressed holds. */
|
|
531
|
-
export interface MapClusterDetail {
|
|
532
|
-
/**
|
|
533
|
-
* A points layer's count, as the connector keyed it, where the cluster is
|
|
534
|
-
* one the renderer drew rather than one of markers.
|
|
535
|
-
*/
|
|
536
|
-
key?: string | undefined;
|
|
537
|
-
/** The names of the places it stands for, the one it is drawn as first, where they are known. */
|
|
538
|
-
labels: string[];
|
|
539
|
-
}
|
|
540
|
-
/** Detail carried by `helix-scrolled`. */
|
|
541
|
-
export interface ScrolledDetail {
|
|
542
|
-
/**
|
|
543
|
-
* Whether the page is scrolled away from the top, as a boolean and not a word
|
|
544
|
-
* that reads like one. Follows `helix-before-toggle`'s rule for the same reason.
|
|
545
|
-
*/
|
|
546
|
-
scrolled: boolean;
|
|
547
|
-
}
|
|
548
156
|
/**
|
|
549
157
|
* What a press came from, React Aria's `PointerType`: a pointer by its kind, a
|
|
550
158
|
* key, or `virtual` for a press with neither behind it, which is how a screen
|
|
551
159
|
* reader's press and a script's `click()` arrive.
|
|
552
160
|
*/
|
|
553
161
|
export type PressPointerType = 'keyboard' | 'mouse' | 'pen' | 'touch' | 'virtual';
|
|
554
|
-
/** Detail carried by `helix-press`. */
|
|
555
|
-
export interface PressDetail {
|
|
556
|
-
/** What the press came from. */
|
|
557
|
-
pointerType: PressPointerType;
|
|
558
|
-
}
|
|
559
162
|
/** Detail carried by `helix-reading-change` and `helix-reading-press`. */
|
|
560
163
|
export interface ReadingDetail {
|
|
561
164
|
/** The reading's place among the table's rows, counting from 0, or `-1` once no reading is shown. */
|
|
@@ -570,85 +173,22 @@ export interface ReadingDetail {
|
|
|
570
173
|
*/
|
|
571
174
|
series: string;
|
|
572
175
|
}
|
|
573
|
-
/** Detail carried by `helix-
|
|
574
|
-
export interface
|
|
575
|
-
/** The band the reading is in now, or `''` where it is in none. */
|
|
576
|
-
band: '' | 'fair' | 'good' | 'poor';
|
|
577
|
-
}
|
|
578
|
-
/** Detail carried by `helix-tour-status`. */
|
|
579
|
-
export interface TourStatusDetail {
|
|
580
|
-
/** The stop it happened at, counting from 0. */
|
|
581
|
-
index: number;
|
|
582
|
-
/** Waiting at a `wait` stop for its target, skipped, or completed. */
|
|
583
|
-
status: 'completed' | 'skipped' | 'waiting';
|
|
584
|
-
}
|
|
585
|
-
/** Detail carried by `helix-before-toggle`. */
|
|
586
|
-
export interface ToggleDetail {
|
|
176
|
+
/** Detail carried by `helix-before-check` and `helix-check`. */
|
|
177
|
+
export interface CheckDetail {
|
|
587
178
|
/** The state being asked for, as a boolean and not a word that reads like one. */
|
|
588
179
|
checked: boolean;
|
|
589
180
|
}
|
|
590
|
-
/** Detail carried by `helix-create`. */
|
|
591
|
-
export interface CreateDetail {
|
|
592
|
-
/** What the reader typed, which is being offered as a new answer. */
|
|
593
|
-
value: string;
|
|
594
|
-
}
|
|
595
|
-
/** Detail carried by `helix-aura-fallback`. */
|
|
596
|
-
export interface AuraFallbackDetail {
|
|
597
|
-
/**
|
|
598
|
-
* Why the gradient shows: `software` for a renderer that draws on the CPU,
|
|
599
|
-
* `unavailable` for no WebGL or a shader the browser refused, and `lost` for
|
|
600
|
-
* a context the browser took back, on a GPU reset or past its limit of about
|
|
601
|
-
* sixteen.
|
|
602
|
-
*/
|
|
603
|
-
reason: 'lost' | 'software' | 'unavailable';
|
|
604
|
-
}
|
|
605
|
-
/** Detail carried by `helix-strands-fallback`. */
|
|
606
|
-
export interface StrandsFallbackDetail {
|
|
607
|
-
/**
|
|
608
|
-
* Why the gradient shows: `software` for a renderer that draws on the CPU,
|
|
609
|
-
* `unavailable` for no WebGL or a program the browser refused, and `lost`
|
|
610
|
-
* for a context the browser took back, on a GPU reset or past its limit of
|
|
611
|
-
* about sixteen.
|
|
612
|
-
*/
|
|
613
|
-
reason: 'lost' | 'software' | 'unavailable';
|
|
614
|
-
}
|
|
615
|
-
/** Detail carried by `helix-range-change`. */
|
|
616
|
-
export interface RangeDetail {
|
|
617
|
-
/** The index of the first item on screen. */
|
|
618
|
-
first: number;
|
|
619
|
-
/** One past the index of the last item on screen. */
|
|
620
|
-
last: number;
|
|
621
|
-
}
|
|
622
|
-
/** Detail carried by `helix-typing`. */
|
|
623
|
-
export interface TypingDetail {
|
|
624
|
-
/** Whether the user is writing now, as a boolean and not a word that reads like one. */
|
|
625
|
-
typing: boolean;
|
|
626
|
-
}
|
|
627
181
|
/** Detail carried by `helix-copy`. */
|
|
628
182
|
export interface CopyDetail {
|
|
629
183
|
/** What was put on the clipboard. */
|
|
630
184
|
value: string;
|
|
631
185
|
}
|
|
632
|
-
/** Detail carried by `helix-console`. */
|
|
633
|
-
export interface ConsoleDetail {
|
|
634
|
-
/** How the message was logged. */
|
|
635
|
-
level: 'log' | 'info' | 'warn' | 'error';
|
|
636
|
-
/** The message, already flattened to text. */
|
|
637
|
-
text: string;
|
|
638
|
-
}
|
|
639
186
|
/** Detail carried by `helix-resize`. */
|
|
640
187
|
export interface ResizeDetail {
|
|
641
188
|
/** How tall the content is, in CSS pixels. */
|
|
642
189
|
size: number;
|
|
643
190
|
}
|
|
644
|
-
/** Detail carried by `helix-
|
|
645
|
-
export interface CaretDetail {
|
|
646
|
-
/** One-based column, counted in characters from the start of the line. */
|
|
647
|
-
column: number;
|
|
648
|
-
/** One-based line. */
|
|
649
|
-
line: number;
|
|
650
|
-
}
|
|
651
|
-
/** Detail carried by `helix-select`. */
|
|
191
|
+
/** Detail carried by `helix-before-select` and `helix-select`. */
|
|
652
192
|
export interface SelectDetail {
|
|
653
193
|
/**
|
|
654
194
|
* Whether the reader took the row's second destination rather than its first.
|
|
@@ -678,46 +218,3 @@ export interface ListenDetail {
|
|
|
678
218
|
/** The phrase the field settled on, as it went into the value. */
|
|
679
219
|
text: string;
|
|
680
220
|
}
|
|
681
|
-
/** What a shortcut reports when its chord is pressed. */
|
|
682
|
-
export interface ShortcutDetail {
|
|
683
|
-
/**
|
|
684
|
-
* The chord that matched, as it was written.
|
|
685
|
-
*
|
|
686
|
-
* Given back rather than left to be remembered, so one handler can serve
|
|
687
|
-
* several keys and answer by comparing what it was told.
|
|
688
|
-
*/
|
|
689
|
-
keys: string;
|
|
690
|
-
}
|
|
691
|
-
/** Detail carried by `helix-terminal-input`. */
|
|
692
|
-
export interface TerminalInputDetail {
|
|
693
|
-
/**
|
|
694
|
-
* Whether `data` holds one byte per character, which some mouse reports
|
|
695
|
-
* do, where the rest of input is text. Write it to the process as those
|
|
696
|
-
* bytes, such as with `Uint8Array.from(data, (character) => character.charCodeAt(0))`.
|
|
697
|
-
*/
|
|
698
|
-
binary: boolean;
|
|
699
|
-
/** What to write to the process, encoded as the program reads keys and pastes. */
|
|
700
|
-
data: string;
|
|
701
|
-
}
|
|
702
|
-
/** Detail carried by `helix-terminal-link`. */
|
|
703
|
-
export interface TerminalLinkDetail {
|
|
704
|
-
/** The address, as the program wrote it. */
|
|
705
|
-
href: string;
|
|
706
|
-
}
|
|
707
|
-
/** Detail carried by `helix-terminal-resize`. */
|
|
708
|
-
export interface TerminalResizeDetail {
|
|
709
|
-
/** How many character cells fit across the grid. */
|
|
710
|
-
columns: number;
|
|
711
|
-
/** How tall the grid is, in CSS pixels, which a pseudo-terminal's size also takes. */
|
|
712
|
-
height: number;
|
|
713
|
-
/** How many lines of cells fit down the grid. */
|
|
714
|
-
rows: number;
|
|
715
|
-
/** How wide the grid is, in CSS pixels. */
|
|
716
|
-
width: number;
|
|
717
|
-
}
|
|
718
|
-
/** Detail carried by `helix-terminal-title`. */
|
|
719
|
-
export interface TerminalTitleDetail {
|
|
720
|
-
/** The title, as the program set it. Empty where it cleared its title. */
|
|
721
|
-
title: string;
|
|
722
|
-
}
|
|
723
|
-
export {};
|