@fusion.dev/helix-core 0.144.0 → 0.146.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 +5724 -1404
- package/dist/controllers/aria-forward-controller/aria-forward-controller.d.ts +3 -2
- package/dist/controllers/aria-forward-controller/aria-forward-controller.js +4 -14
- package/dist/controllers/chart-pointer-controller/chart-pointer-controller.d.ts +65 -3
- package/dist/controllers/chart-pointer-controller/chart-pointer-controller.js +37 -9
- package/dist/controllers/chart-pointer-controller/reading-step.d.ts +7 -1
- package/dist/controllers/chart-pointer-controller/reading-step.js +5 -0
- package/dist/controllers/countdown-controller/countdown-controller.d.ts +55 -0
- package/dist/controllers/countdown-controller/countdown-controller.js +57 -0
- package/dist/controllers/keyboard-navigation-controller/keyboard-navigation-controller.d.ts +20 -57
- package/dist/controllers/keyboard-navigation-controller/keyboard-navigation-controller.js +11 -40
- package/dist/controllers/relative-clock-controller/relative-clock-controller.d.ts +44 -0
- package/dist/controllers/relative-clock-controller/relative-clock-controller.js +31 -0
- package/dist/controllers/source-controller/source-controller.d.ts +10 -3
- package/dist/controllers/source-controller/source-controller.js +7 -4
- package/dist/controllers/virtualize-controller/virtualize-controller.d.ts +116 -36
- package/dist/controllers/virtualize-controller/virtualize-controller.js +122 -12
- package/dist/events/action.d.ts +12 -0
- package/dist/events/action.js +6 -0
- package/dist/events/activate.d.ts +22 -0
- package/dist/events/activate.js +11 -0
- package/dist/events/aura-fallback.d.ts +12 -0
- package/dist/events/aura-fallback.js +11 -0
- package/dist/events/before-activate.d.ts +24 -0
- package/dist/events/before-activate.js +11 -0
- package/dist/events/before-change.d.ts +26 -0
- package/dist/events/before-change.js +11 -0
- package/dist/events/before-close.d.ts +6 -0
- package/dist/events/before-close.js +11 -0
- package/dist/events/before-collapse.d.ts +6 -0
- package/dist/events/before-collapse.js +11 -0
- package/dist/events/before-edit.d.ts +6 -0
- package/dist/events/before-edit.js +11 -0
- package/dist/events/before-move.d.ts +17 -0
- package/dist/events/before-move.js +11 -0
- package/dist/events/before-open.d.ts +17 -0
- package/dist/events/before-open.js +11 -0
- package/dist/events/before-panel-resize.d.ts +13 -0
- package/dist/events/before-panel-resize.js +11 -0
- package/dist/events/before-pin.d.ts +6 -0
- package/dist/events/before-pin.js +11 -0
- package/dist/events/before-reconnect.d.ts +14 -0
- package/dist/events/before-reconnect.js +11 -0
- package/dist/events/before-relabel.d.ts +15 -0
- package/dist/events/before-relabel.js +11 -0
- package/dist/events/before-resize.d.ts +6 -0
- package/dist/events/before-resize.js +11 -0
- package/dist/events/before-split.d.ts +12 -0
- package/dist/events/before-split.js +11 -0
- package/dist/events/before-toggle.d.ts +23 -0
- package/dist/events/before-toggle.js +11 -0
- package/dist/events/canvas-edit.d.ts +16 -0
- package/dist/events/canvas-edit.js +11 -0
- package/dist/events/canvas-pan.d.ts +13 -0
- package/dist/events/canvas-pan.js +11 -0
- package/dist/events/canvas-view.d.ts +14 -0
- package/dist/events/canvas-view.js +11 -0
- package/dist/events/canvas-zoom.d.ts +6 -0
- package/dist/events/canvas-zoom.js +11 -0
- package/dist/events/caret.d.ts +17 -0
- package/dist/events/caret.js +11 -0
- package/dist/events/clear.d.ts +11 -0
- package/dist/events/clear.js +6 -0
- package/dist/events/collapse.d.ts +12 -0
- package/dist/events/collapse.js +11 -0
- package/dist/events/complete.d.ts +26 -0
- package/dist/events/complete.js +11 -0
- package/dist/events/connect.d.ts +14 -0
- package/dist/events/connect.js +11 -0
- package/dist/events/console.d.ts +13 -0
- package/dist/events/console.js +11 -0
- package/dist/events/copy-error.d.ts +9 -0
- package/dist/events/copy-error.js +6 -0
- package/dist/events/copy.d.ts +12 -0
- package/dist/events/copy.js +10 -0
- package/dist/events/create.d.ts +18 -0
- package/dist/events/create.js +11 -0
- package/dist/events/details.d.ts +454 -0
- package/dist/events/details.js +1 -0
- package/dist/events/dismiss.d.ts +16 -0
- package/dist/events/dismiss.js +11 -0
- package/dist/events/edit.d.ts +12 -0
- package/dist/events/edit.js +11 -0
- package/dist/events/end.d.ts +9 -0
- package/dist/events/end.js +6 -0
- package/dist/events/events.d.ts +125 -1306
- package/dist/events/events.js +105 -739
- package/dist/events/expand.d.ts +10 -0
- package/dist/events/expand.js +11 -0
- package/dist/events/facet.d.ts +17 -0
- package/dist/events/facet.js +11 -0
- package/dist/events/filter.d.ts +12 -0
- package/dist/events/filter.js +11 -0
- package/dist/events/filtered.d.ts +12 -0
- package/dist/events/filtered.js +11 -0
- package/dist/events/graph-filter.d.ts +10 -0
- package/dist/events/graph-filter.js +11 -0
- package/dist/events/graph-layout.d.ts +10 -0
- package/dist/events/graph-layout.js +11 -0
- package/dist/events/graph-pan.d.ts +9 -0
- package/dist/events/graph-pan.js +11 -0
- package/dist/events/graph-part-change.d.ts +10 -0
- package/dist/events/graph-part-change.js +11 -0
- package/dist/events/graph-ready.d.ts +8 -0
- package/dist/events/graph-ready.js +6 -0
- package/dist/events/graph-signal.d.ts +11 -0
- package/dist/events/graph-signal.js +11 -0
- package/dist/events/graph-zoom.d.ts +6 -0
- package/dist/events/graph-zoom.js +11 -0
- package/dist/events/history.d.ts +16 -0
- package/dist/events/history.js +11 -0
- package/dist/events/load-more.d.ts +12 -0
- package/dist/events/load-more.js +6 -0
- package/dist/events/load.d.ts +12 -0
- package/dist/events/load.js +6 -0
- package/dist/events/map-cluster.d.ts +15 -0
- package/dist/events/map-cluster.js +11 -0
- package/dist/events/map-pan.d.ts +18 -0
- package/dist/events/map-pan.js +11 -0
- package/dist/events/map-part-change.d.ts +16 -0
- package/dist/events/map-part-change.js +11 -0
- package/dist/events/map-ready.d.ts +15 -0
- package/dist/events/map-ready.js +6 -0
- package/dist/events/map-rotate.d.ts +9 -0
- package/dist/events/map-rotate.js +11 -0
- package/dist/events/map-tilt.d.ts +9 -0
- package/dist/events/map-tilt.js +11 -0
- package/dist/events/map-zoom.d.ts +13 -0
- package/dist/events/map-zoom.js +11 -0
- package/dist/events/move.d.ts +11 -0
- package/dist/events/move.js +11 -0
- package/dist/events/names.d.ts +15 -0
- package/dist/events/names.js +88 -0
- package/dist/events/navigate.d.ts +13 -0
- package/dist/events/navigate.js +11 -0
- package/dist/events/next.d.ts +23 -0
- package/dist/events/next.js +11 -0
- package/dist/events/panel-resize.d.ts +12 -0
- package/dist/events/panel-resize.js +11 -0
- package/dist/events/pin.d.ts +12 -0
- package/dist/events/pin.js +11 -0
- package/dist/events/press.d.ts +19 -0
- package/dist/events/press.js +11 -0
- package/dist/events/preview.d.ts +14 -0
- package/dist/events/preview.js +11 -0
- package/dist/events/previous.d.ts +6 -0
- package/dist/events/previous.js +11 -0
- package/dist/events/range-change.d.ts +10 -0
- package/dist/events/range-change.js +11 -0
- package/dist/events/read.d.ts +19 -0
- package/dist/events/read.js +11 -0
- package/dist/events/reconnect.d.ts +6 -0
- package/dist/events/reconnect.js +11 -0
- package/dist/events/reject.d.ts +13 -0
- package/dist/events/reject.js +11 -0
- package/dist/events/relabel.d.ts +6 -0
- package/dist/events/relabel.js +11 -0
- package/dist/events/remove.d.ts +12 -0
- package/dist/events/remove.js +11 -0
- package/dist/events/reorder.d.ts +18 -0
- package/dist/events/reorder.js +11 -0
- package/dist/events/reordered.d.ts +12 -0
- package/dist/events/reordered.js +11 -0
- package/dist/events/resize.d.ts +19 -0
- package/dist/events/resize.js +11 -0
- package/dist/events/resized.d.ts +16 -0
- package/dist/events/resized.js +11 -0
- package/dist/events/sample-end.d.ts +5 -0
- package/dist/events/sample-end.js +6 -0
- package/dist/events/sample-start.d.ts +18 -0
- package/dist/events/sample-start.js +6 -0
- package/dist/events/scrolled.d.ts +32 -0
- package/dist/events/scrolled.js +11 -0
- package/dist/events/select.d.ts +12 -0
- package/dist/events/select.js +11 -0
- package/dist/events/selected.d.ts +12 -0
- package/dist/events/selected.js +11 -0
- package/dist/events/send.d.ts +18 -0
- package/dist/events/send.js +11 -0
- package/dist/events/shortcut.d.ts +13 -0
- package/dist/events/shortcut.js +11 -0
- package/dist/events/sort.d.ts +17 -0
- package/dist/events/sort.js +11 -0
- package/dist/events/sorted.d.ts +15 -0
- package/dist/events/sorted.js +11 -0
- package/dist/events/split.d.ts +12 -0
- package/dist/events/split.js +11 -0
- package/dist/events/toggle.d.ts +15 -0
- package/dist/events/toggle.js +11 -0
- package/dist/events/tour-ask.d.ts +16 -0
- package/dist/events/tour-ask.js +11 -0
- package/dist/events/tour-status.d.ts +14 -0
- package/dist/events/tour-status.js +11 -0
- package/dist/events/typing.d.ts +10 -0
- package/dist/events/typing.js +11 -0
- package/dist/helix-element/helix-element.js +14 -1
- package/dist/helix-element/react-bridge.d.ts +19 -4
- package/dist/helix-element/react-bridge.js +15 -2
- package/dist/helix-form-element/helix-form-element.d.ts +5 -20
- package/dist/helix-form-element/helix-form-element.js +4 -56
- package/dist/index.d.ts +17 -3
- package/dist/index.js +17 -3
- package/dist/mixins/mixin-chart-source/mixin-chart-source.d.ts +17 -2
- package/dist/mixins/mixin-chart-source/mixin-chart-source.js +22 -1
- package/dist/mixins/mixin-controller-active/mixin-controller-active.js +4 -3
- package/dist/mixins/mixin-controller-checked/mixin-controller-checked.d.ts +5 -2
- package/dist/mixins/mixin-controller-checked/mixin-controller-checked.js +2 -1
- package/dist/mixins/mixin-controller-value/mixin-controller-value.d.ts +4 -2
- package/dist/mixins/mixin-controller-value/mixin-controller-value.js +7 -2
- package/dist/mixins/mixin-dismissible/mixin-dismissible.js +20 -4
- package/dist/mixins/mixin-field/mixin-field.js +2 -2
- package/dist/mixins/mixin-picker-field/mixin-picker-field.d.ts +15 -3
- package/dist/mixins/mixin-picker-field/mixin-picker-field.js +11 -4
- package/dist/mixins/mixin-segmented-field/mixin-segmented-field.d.ts +1 -1
- package/dist/mixins/mixin-segmented-field/mixin-segmented-field.js +10 -4
- package/dist/utils/audit-name/audit-name-off.d.ts +10 -0
- package/dist/utils/audit-name/audit-name-off.js +1 -0
- package/dist/utils/audit-name/audit-name.d.ts +19 -6
- package/dist/utils/audit-name/audit-name.js +10 -27
- package/dist/utils/calendar/calendar.js +7 -7
- package/dist/utils/draw-icon/draw-icon.d.ts +7 -6
- package/dist/utils/draw-tooltip/draw-tooltip.d.ts +1 -1
- package/dist/utils/draw-tooltip/draw-tooltip.js +3 -1
- package/dist/utils/draw-tooltip/spoken-reading.d.ts +6 -2
- package/dist/utils/draw-tooltip/spoken-reading.js +5 -4
- package/dist/utils/heading-level/heading-level.d.ts +8 -0
- package/dist/utils/heading-level/heading-level.js +4 -0
- package/dist/utils/implicit-submit/implicit-submit.d.ts +25 -0
- package/dist/utils/implicit-submit/implicit-submit.js +52 -0
- package/dist/utils/name-text/name-text.d.ts +12 -0
- package/dist/utils/name-text/name-text.js +25 -0
- package/dist/utils/number-format/number-format.d.ts +2 -1
- package/dist/utils/number-format/number-format.js +13 -5
- package/dist/utils/plain-click/plain-click.d.ts +10 -0
- package/dist/utils/plain-click/plain-click.js +1 -0
- package/dist/utils/press-type/press-type.d.ts +20 -0
- package/dist/utils/press-type/press-type.js +15 -0
- package/dist/utils/range-add/range-add.d.ts +19 -0
- package/dist/utils/range-add/range-add.js +5 -0
- package/dist/utils/reflect-elements/reflect-elements.d.ts +3 -3
- package/dist/utils/report-runtime/report-runtime.d.ts +9 -4
- package/dist/utils/row-data/row-data.d.ts +15 -0
- package/dist/utils/row-data/row-data.js +17 -0
- package/dist/utils/row-order/row-order.d.ts +141 -0
- package/dist/utils/row-order/row-order.js +76 -0
- package/dist/utils/tell-disclosure/tell-disclosure.d.ts +4 -0
- package/dist/utils/tree-arrow/tree-arrow.d.ts +23 -0
- package/dist/utils/tree-arrow/tree-arrow.js +9 -0
- package/dist/utils/typeahead/typeahead.d.ts +67 -0
- package/dist/utils/typeahead/typeahead.js +36 -0
- package/dist/utils/value-as/value-as.d.ts +9 -0
- package/dist/utils/value-as/value-as.js +9 -1
- package/dist/utils/watch-labels/watch-labels.d.ts +16 -0
- package/dist/utils/watch-labels/watch-labels.js +34 -0
- package/dist/utils/words-converter/words-converter.d.ts +14 -0
- package/dist/utils/words-converter/words-converter.js +15 -0
- package/dist/utils/write-time/write-time.d.ts +4 -4
- package/dist/utils/written-list/written-list.d.ts +29 -0
- package/dist/utils/written-list/written-list.js +30 -0
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +18 -5
package/dist/events/events.d.ts
CHANGED
|
@@ -11,1304 +11,115 @@
|
|
|
11
11
|
* for consumers writing plain HTML, who never see the React wrappers.
|
|
12
12
|
* 3. The event name lives on the class as `eventName`, so a listener and a
|
|
13
13
|
* dispatch cannot disagree about the string.
|
|
14
|
-
*/
|
|
15
|
-
/** Detail carried by `helix-before-open` and `helix-before-close`. */
|
|
16
|
-
export interface OpenDetail {
|
|
17
|
-
/** The state the element is moving to. */
|
|
18
|
-
open: boolean;
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* Fired when an element is about to open.
|
|
22
|
-
*
|
|
23
|
-
* Cancelable: `preventDefault()` refuses the change, and the element stays
|
|
24
|
-
* closed. Paired with `helix-before-close` rather than being one event carrying a
|
|
25
|
-
* boolean, so a listener that only cares about one direction says so by which
|
|
26
|
-
* event it listens for.
|
|
27
|
-
*
|
|
28
|
-
* Neither bubbles nor composed. A dialog inside a drawer inside a popover is
|
|
29
|
-
* three overlays, and an inner one opening must not read as the outer one
|
|
30
|
-
* opening.
|
|
31
|
-
*/
|
|
32
|
-
export declare class HelixBeforeOpenEvent extends CustomEvent<OpenDetail> {
|
|
33
|
-
static readonly eventName = "helix-before-open";
|
|
34
|
-
constructor();
|
|
35
|
-
}
|
|
36
|
-
/** Fired when an element is about to close. See `HelixBeforeOpenEvent`. */
|
|
37
|
-
export declare class HelixBeforeCloseEvent extends CustomEvent<OpenDetail> {
|
|
38
|
-
static readonly eventName = "helix-before-close";
|
|
39
|
-
constructor();
|
|
40
|
-
}
|
|
41
|
-
/**
|
|
42
|
-
* Fired when the reader asks for the next thing in a set.
|
|
43
|
-
*
|
|
44
|
-
* Paired with `helix-previous` rather than being one event carrying a
|
|
45
|
-
* direction, which is the reason `helix-before-open` gives for its own pair: a
|
|
46
|
-
* listener that only cares about one direction says so by which event it
|
|
47
|
-
* listens for. The detail carries the direction anyway, so a consumer who does
|
|
48
|
-
* want one handler can have one.
|
|
49
|
-
*
|
|
50
|
-
* Bubbles and is composed, because the thing that answers this is usually not
|
|
51
|
-
* the thing that asked. A video has no notion of a set: it plays one resource,
|
|
52
|
-
* and what comes next is a playlist's business or the consumer's, so the event
|
|
53
|
-
* has to reach a wrapper.
|
|
54
|
-
*
|
|
55
|
-
* Not cancelable. There is no default action to refuse: the component that
|
|
56
|
-
* fires this does nothing on its own, and an event whose `preventDefault` means
|
|
57
|
-
* nothing is an event that lies about what it offers.
|
|
58
|
-
*/
|
|
59
|
-
export declare class HelixNextEvent extends CustomEvent<SkipDetail> {
|
|
60
|
-
static readonly eventName = "helix-next";
|
|
61
|
-
constructor();
|
|
62
|
-
}
|
|
63
|
-
/** Fired when the reader asks for the previous one. See `HelixNextEvent`. */
|
|
64
|
-
export declare class HelixPreviousEvent extends CustomEvent<SkipDetail> {
|
|
65
|
-
static readonly eventName = "helix-previous";
|
|
66
|
-
constructor();
|
|
67
|
-
}
|
|
68
|
-
/** Detail carried by `helix-next` and `helix-previous`. */
|
|
69
|
-
export interface SkipDetail {
|
|
70
|
-
/** Which way the reader asked to go. */
|
|
71
|
-
to: 'next' | 'previous';
|
|
72
|
-
}
|
|
73
|
-
/**
|
|
74
|
-
* Detail carried by a pan request, `helix-map-pan` being the one Map sends.
|
|
75
|
-
*
|
|
76
|
-
* Named for the surface rather than for the map, because the surface is shared:
|
|
77
|
-
* `MixinViewport` is what asks, and a canvas or a graph asking the same question
|
|
78
|
-
* should not be importing a type with `Map` in its name. `MapPanDetail` stays as
|
|
79
|
-
* an alias, that being what a consumer of Map wrote before this was split.
|
|
80
|
-
*/
|
|
81
|
-
export interface ViewportPanDetail {
|
|
82
|
-
/** Which way the reader asked to go, in reading order rather than compass order. */
|
|
83
|
-
to: 'up' | 'down' | 'start' | 'end';
|
|
84
|
-
/** How far, as a fraction of the viewport the map is drawn in. */
|
|
85
|
-
by: number;
|
|
86
|
-
}
|
|
87
|
-
/** Detail carried by a zoom request, named for the surface for the same reason. */
|
|
88
|
-
export interface ViewportZoomDetail {
|
|
89
|
-
/** Which way, `1` in and `-1` out, so a consumer can multiply by their own step. */
|
|
90
|
-
by: number;
|
|
91
|
-
}
|
|
92
|
-
/**
|
|
93
|
-
* The board moved, which on a canvas is a fact rather than a request.
|
|
94
14
|
*
|
|
95
|
-
*
|
|
96
|
-
*
|
|
97
|
-
*
|
|
98
|
-
*
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
}
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
}
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
}
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
}
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
}
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
}
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
*
|
|
202
|
-
*
|
|
203
|
-
* ends itself, the way it writes a card's position onto the card; a page that
|
|
204
|
-
* holds its connections in state refuses this and writes them there.
|
|
205
|
-
*/
|
|
206
|
-
export declare class HelixBeforeReconnectEvent extends CustomEvent<ReconnectDetail> {
|
|
207
|
-
static readonly eventName = "helix-before-reconnect";
|
|
208
|
-
constructor(detail: ReconnectDetail);
|
|
209
|
-
}
|
|
210
|
-
/** A connection's end moved, and the move is finished. */
|
|
211
|
-
export declare class HelixReconnectEvent extends CustomEvent<ReconnectDetail> {
|
|
212
|
-
static readonly eventName = "helix-reconnect";
|
|
213
|
-
constructor(detail: ReconnectDetail);
|
|
214
|
-
}
|
|
215
|
-
/** A label a reader rewrote on a board, and what it said before. */
|
|
216
|
-
export interface RelabelDetail {
|
|
217
|
-
/** What was relabelled: a connection, or a group, whose name the board draws. */
|
|
218
|
-
target: 'edge' | 'group';
|
|
219
|
-
/** Its name on the board. */
|
|
220
|
-
name: string;
|
|
221
|
-
/** A connection's ends, so a page that named none of its connections can find it. */
|
|
222
|
-
from?: string | undefined;
|
|
223
|
-
to?: string | undefined;
|
|
224
|
-
/** The new label, empty for none. */
|
|
225
|
-
label: string;
|
|
226
|
-
/** The label before. */
|
|
227
|
-
was: string;
|
|
228
|
-
}
|
|
229
|
-
/**
|
|
230
|
-
* A label the board draws is about to change, and can be refused.
|
|
231
|
-
*
|
|
232
|
-
* **The board edits what it draws and asks for what it does not.** A
|
|
233
|
-
* connection's label and a group's name are drawn by the board from an
|
|
234
|
-
* attribute, so the board edits them in place and writes the attribute back,
|
|
235
|
-
* the way it writes a card's position; a page holding them in state refuses
|
|
236
|
-
* this and writes them there. A card's own content is the page's, which is why
|
|
237
|
-
* that is `helix-canvas-edit`, a request, rather than this.
|
|
238
|
-
*/
|
|
239
|
-
export declare class HelixBeforeRelabelEvent extends CustomEvent<RelabelDetail> {
|
|
240
|
-
static readonly eventName = "helix-before-relabel";
|
|
241
|
-
constructor(detail: RelabelDetail);
|
|
242
|
-
}
|
|
243
|
-
/** A label the board draws changed. */
|
|
244
|
-
export declare class HelixRelabelEvent extends CustomEvent<RelabelDetail> {
|
|
245
|
-
static readonly eventName = "helix-relabel";
|
|
246
|
-
constructor(detail: RelabelDetail);
|
|
247
|
-
}
|
|
248
|
-
/**
|
|
249
|
-
* A reader asked to edit a card: a double-click, or Enter or F2 on it.
|
|
250
|
-
*
|
|
251
|
-
* **A request, because what a card holds is the page's.** Text, a picture, a
|
|
252
|
-
* chart: the board cannot know what editing any of those means, so it says
|
|
253
|
-
* which card and the page opens its own editor, in place, in a dialog, or in a
|
|
254
|
-
* panel beside the board.
|
|
255
|
-
*/
|
|
256
|
-
export declare class HelixCanvasEditEvent extends CustomEvent<{
|
|
257
|
-
name: string;
|
|
258
|
-
}> {
|
|
259
|
-
static readonly eventName = "helix-canvas-edit";
|
|
260
|
-
constructor(detail: {
|
|
261
|
-
name: string;
|
|
262
|
-
});
|
|
263
|
-
}
|
|
264
|
-
/** Why a file field did not take a file. */
|
|
265
|
-
export type Refusal = 'count' | 'invalid' | 'size' | 'type';
|
|
266
|
-
/** One file a file field did not take, and why. */
|
|
267
|
-
export interface RefusedFile {
|
|
268
|
-
/** The file. */
|
|
269
|
-
readonly file: File;
|
|
270
|
-
/** What the field's `validate` said about it, where it was the one refusing. */
|
|
271
|
-
readonly message?: string;
|
|
272
|
-
/** Why it was not taken. */
|
|
273
|
-
readonly reason: Refusal;
|
|
274
|
-
}
|
|
275
|
-
/** The files a file field refused. */
|
|
276
|
-
export interface RejectDetail {
|
|
277
|
-
/** Each refused file with its reason, in the order they arrived. */
|
|
278
|
-
files: RefusedFile[];
|
|
279
|
-
}
|
|
280
|
-
/**
|
|
281
|
-
* Files arrived at a file field and some were refused: by `accept`, by
|
|
282
|
-
* `max-file-size`, by `max-files`, or by the field's own `validate`.
|
|
283
|
-
*
|
|
284
|
-
* A notification and not a request, because the files are already left out;
|
|
285
|
-
* the event is how a page tells the reader why. Bubbles and is composed, so a
|
|
286
|
-
* form around the field hears it.
|
|
287
|
-
*/
|
|
288
|
-
export declare class HelixRejectEvent extends CustomEvent<RejectDetail> {
|
|
289
|
-
static readonly eventName = "helix-reject";
|
|
290
|
-
constructor(detail: RejectDetail);
|
|
291
|
-
}
|
|
292
|
-
/** What a reader asked to take off the board. */
|
|
293
|
-
export interface RemoveDetail {
|
|
294
|
-
/** The cards, by name. */
|
|
295
|
-
nodes: string[];
|
|
296
|
-
/**
|
|
297
|
-
* The connections, including every one attached to a card being removed,
|
|
298
|
-
* since a line to nothing is not drawn but its element would stay behind.
|
|
299
|
-
* Each carries its ends as well as its name, so a page that named none of
|
|
300
|
-
* its connections can still find them.
|
|
301
|
-
*/
|
|
302
|
-
edges: Array<{
|
|
303
|
-
name: string;
|
|
304
|
-
from: string;
|
|
305
|
-
to: string;
|
|
306
|
-
}>;
|
|
307
|
-
}
|
|
308
|
-
/**
|
|
309
|
-
* A reader asked for cards or connections to be taken away.
|
|
310
|
-
*
|
|
311
|
-
* A request for the reason `helix-connect` is one: the elements are the page's,
|
|
312
|
-
* so the page removes them. Nothing to refuse, because nothing happens unless
|
|
313
|
-
* the page acts.
|
|
314
|
-
*/
|
|
315
|
-
export declare class HelixRemoveEvent extends CustomEvent<RemoveDetail> {
|
|
316
|
-
static readonly eventName = "helix-remove";
|
|
317
|
-
constructor(detail: RemoveDetail);
|
|
318
|
-
}
|
|
319
|
-
/**
|
|
320
|
-
* Where a board is looking: the point at the middle of the view, in the
|
|
321
|
-
* document's own units, and how far it is zoomed.
|
|
322
|
-
*
|
|
323
|
-
* The middle rather than a corner, so a view saved in one box and restored in
|
|
324
|
-
* a box of another size shows the same thing in the middle of it.
|
|
325
|
-
*/
|
|
326
|
-
export interface CanvasView {
|
|
327
|
-
x: number;
|
|
328
|
-
y: number;
|
|
329
|
-
zoom: number;
|
|
330
|
-
}
|
|
331
|
-
/**
|
|
332
|
-
* The board's view changed, however it changed: a drag, the wheel, a press on
|
|
333
|
-
* a control, a card brought into view, or the board fitting itself.
|
|
334
|
-
*
|
|
335
|
-
* **One event for all of them**, because what a consumer keeping a minimap or a
|
|
336
|
-
* saved position in step needs is where the board is now, not which of six
|
|
337
|
-
* gestures put it there; `helix-canvas-pan` and `helix-canvas-zoom` still say
|
|
338
|
-
* which control was pressed. Sent for every step of a drag, the way `input` is.
|
|
339
|
-
*/
|
|
340
|
-
export declare class HelixCanvasViewEvent extends CustomEvent<CanvasView> {
|
|
341
|
-
static readonly eventName = "helix-canvas-view";
|
|
342
|
-
constructor(detail: CanvasView);
|
|
343
|
-
}
|
|
344
|
-
/** What `ViewportPanDetail` was called when only Map had one. */
|
|
345
|
-
export type MapPanDetail = ViewportPanDetail;
|
|
346
|
-
/** What `ViewportZoomDetail` was called when only Map had one. */
|
|
347
|
-
export type MapZoomDetail = ViewportZoomDetail;
|
|
348
|
-
/** Detail carried by `helix-navigate`. */
|
|
349
|
-
export interface NavigateDetail {
|
|
350
|
-
/**
|
|
351
|
-
* The page asked for, as a number, where the component pages by number.
|
|
352
|
-
*
|
|
353
|
-
* Beside `value` rather than in place of it, because a calendar pages by
|
|
354
|
-
* month and its `value` is a month.
|
|
355
|
-
*/
|
|
356
|
-
page?: number;
|
|
357
|
-
/** Where the view is moving to, in whatever the component pages by. */
|
|
358
|
-
value: string;
|
|
359
|
-
}
|
|
360
|
-
/** Detail carried by `helix-filter`. */
|
|
361
|
-
export interface FilterDetail {
|
|
362
|
-
/** What the list is being narrowed to. */
|
|
363
|
-
value: string;
|
|
364
|
-
}
|
|
365
|
-
/**
|
|
366
|
-
* Detail carried by `helix-facet`.
|
|
367
|
-
*
|
|
368
|
-
* **Everything needed to draw the chip, so nothing has to be looked up again.**
|
|
369
|
-
* A consumer hearing this renders a `FilterChip` from it and stops: the labels
|
|
370
|
-
* are the reader's words and the names are their own model's, and both are here
|
|
371
|
-
* because only the thing that read the declarations knows both.
|
|
372
|
-
*/
|
|
373
|
-
export interface FacetDetail {
|
|
374
|
-
/**
|
|
375
|
-
* How many values the comparison in force takes.
|
|
376
|
-
*
|
|
377
|
-
* **What tells an empty filter from no filter.** `values` empty usually means
|
|
378
|
-
* the field is not being filtered any more, and a consumer drops the chip; a
|
|
379
|
-
* comparison of arity `none`, `is empty` or `is set`, is a filter that has no
|
|
380
|
-
* values to carry and never will. Without this the two arrive identical, and
|
|
381
|
-
* the thing that read the declaration is the only thing that could say which.
|
|
382
|
-
*/
|
|
383
|
-
arity: 'many' | 'none' | 'one';
|
|
384
|
-
/** What the consumer's model calls the field. */
|
|
385
|
-
field: string;
|
|
386
|
-
/** What a reader is shown for the field. */
|
|
387
|
-
label: string;
|
|
388
|
-
/** What the consumer's model calls the comparison in force. */
|
|
389
|
-
operator: string;
|
|
390
|
-
/**
|
|
391
|
-
* The comparison as a reader sees it, and **empty for the field's usual one**.
|
|
392
|
-
*
|
|
393
|
-
* Passed straight to a chip's `operator-label`, which draws the segment only
|
|
394
|
-
* where there is one. Deciding it here is the point: the thing that read the
|
|
395
|
-
* field knows which of its operators is the default, and the chip never has
|
|
396
|
-
* to.
|
|
397
|
-
*/
|
|
398
|
-
operatorLabel: string;
|
|
399
|
-
/** What the field is compared to, as the consumer's own values. */
|
|
400
|
-
values: readonly string[];
|
|
401
|
-
}
|
|
402
|
-
/** Detail carried by `helix-read`. */
|
|
403
|
-
export interface ReadDetail {
|
|
404
|
-
/**
|
|
405
|
-
* The state being asked for, as a boolean rather than a word that reads like
|
|
406
|
-
* one, which is `helix-before-toggle`'s rule and for the same reason: `"false"` is
|
|
407
|
-
* truthy and a consumer who forgets that marks everything read.
|
|
408
|
-
*/
|
|
409
|
-
read: boolean;
|
|
410
|
-
}
|
|
411
|
-
/** Detail carried by `helix-send`. */
|
|
412
|
-
export interface SendDetail {
|
|
413
|
-
/** What the reader wrote, as they left it. */
|
|
414
|
-
value: string;
|
|
415
|
-
}
|
|
416
|
-
/** Detail carried by `helix-sort`. */
|
|
417
|
-
export interface SortDetail {
|
|
418
|
-
/**
|
|
419
|
-
* The order being asked for, as `field:direction`.
|
|
420
|
-
*
|
|
421
|
-
* **One string rather than a field and a direction beside it**, because a sort
|
|
422
|
-
* is one fact and two properties holding half of it each is the mistake
|
|
423
|
-
* `helix-table`'s `columns` string already made in this family: the headings
|
|
424
|
-
* and the widths were two halves of one thing kept in two places with nothing
|
|
425
|
-
* holding them together. `name:asc` is also what a URL query carries and what
|
|
426
|
-
* an API takes, so a consumer syncing either does no translation.
|
|
427
|
-
*
|
|
428
|
-
* Empty means unsorted, which is a state a reader can ask for: a third click
|
|
429
|
-
* on a sortable heading returns the set to the order it arrived in, and that
|
|
430
|
-
* order is information the data came with.
|
|
431
|
-
*/
|
|
432
|
-
value: string;
|
|
433
|
-
}
|
|
434
|
-
/** Detail carried by `helix-dismiss`. */
|
|
435
|
-
export interface DismissDetail {
|
|
436
|
-
/** Text content of the element asking to go, for identifying which it was. */
|
|
437
|
-
label: string;
|
|
438
|
-
}
|
|
439
|
-
/** What a stop's own controls ask the tour to do. */
|
|
440
|
-
export interface TourAskDetail {
|
|
441
|
-
/**
|
|
442
|
-
* Which control was pressed.
|
|
443
|
-
*/
|
|
444
|
-
what: 'back' | 'next' | 'skip';
|
|
445
|
-
}
|
|
446
|
-
/**
|
|
447
|
-
* A stop asking the tour to move.
|
|
448
|
-
*
|
|
449
|
-
* Composed and bubbling, because a stop is slotted into the root and the root
|
|
450
|
-
* has to hear it across that boundary.
|
|
451
|
-
*
|
|
452
|
-
* **A class rather than a hand-rolled `CustomEvent`.** A dispatch is matched as
|
|
453
|
-
* `new HelixSomethingEvent(`, so a raw `CustomEvent` is not held to being
|
|
454
|
-
* declared and nothing carries it into the manifest: consumers can hear it and
|
|
455
|
-
* cannot find it.
|
|
456
|
-
*/
|
|
457
|
-
export declare class HelixTourAskEvent extends CustomEvent<TourAskDetail> {
|
|
458
|
-
static readonly eventName = "helix-tour-ask";
|
|
459
|
-
constructor(detail: TourAskDetail);
|
|
460
|
-
}
|
|
461
|
-
/**
|
|
462
|
-
* The eyedropper opening, and closing again.
|
|
463
|
-
*
|
|
464
|
-
* Two events rather than one carrying a flag, because what a consumer does with
|
|
465
|
-
* them is not symmetrical: the surface holding the picker has to get out of the
|
|
466
|
-
* way for the sample and come back afterwards, and those are two moments with
|
|
467
|
-
* different work in each.
|
|
468
|
-
*
|
|
469
|
-
* **A class rather than a bare `Event`.** The check that holds an event to being
|
|
470
|
-
* declared reads `new Event(` as well as `new HelixSomethingEvent(`, so a
|
|
471
|
-
* hand-rolled one is public API a consumer can hear and cannot find.
|
|
472
|
-
*
|
|
473
|
-
* No detail, because there is nothing to say beyond that it happened.
|
|
474
|
-
*/
|
|
475
|
-
export declare class HelixSampleStartEvent extends Event {
|
|
476
|
-
static readonly eventName = "helix-sample-start";
|
|
477
|
-
constructor();
|
|
478
|
-
}
|
|
479
|
-
/** The eyedropper closing, whether or not a color was taken. */
|
|
480
|
-
export declare class HelixSampleEndEvent extends Event {
|
|
481
|
-
static readonly eventName = "helix-sample-end";
|
|
482
|
-
constructor();
|
|
483
|
-
}
|
|
484
|
-
/**
|
|
485
|
-
* Fired when an element asks to be taken away.
|
|
486
|
-
*
|
|
487
|
-
* A request rather than a notification: the element does not remove itself,
|
|
488
|
-
* because the consumer owns the markup it is in and removing the node under
|
|
489
|
-
* them would put their state and the document out of step. Cancelable, so
|
|
490
|
-
* `preventDefault()` is a refusal.
|
|
491
|
-
*
|
|
492
|
-
* One verb for both shapes. A tag leaving a list and an announcement closing
|
|
493
|
-
* itself are the same act from the element's side.
|
|
494
|
-
*/
|
|
495
|
-
export declare class HelixDismissEvent extends CustomEvent<DismissDetail> {
|
|
496
|
-
static readonly eventName = "helix-dismiss";
|
|
497
|
-
constructor(detail: DismissDetail);
|
|
498
|
-
}
|
|
499
|
-
/**
|
|
500
|
-
* Detail carried by every request that proposes a value.
|
|
501
|
-
*
|
|
502
|
-
* **`value` is a string, and the things that are not strings are the rule
|
|
503
|
-
* rather than the exception to it.** Pagination's page, its page size, the
|
|
504
|
-
* splitter's position and the carousel's index all announce through `String()`.
|
|
505
|
-
* That is deliberate: an HTML value is a string, a consumer parses one back
|
|
506
|
-
* with `Number()`, and nothing is lost on the way.
|
|
507
|
-
*
|
|
508
|
-
* A boolean is the case where it *is* lost, because `"false"` is truthy, so a
|
|
509
|
-
* consumer who forgets to compare against the word gets the opposite answer and
|
|
510
|
-
* no error. That is why checkedness has `helix-before-toggle` and its own boolean, and
|
|
511
|
-
* it is the line to hold: **stringify a value, never a fact.** A new control
|
|
512
|
-
* whose state is a boolean wants an event with a typed detail, not a `String()`
|
|
513
|
-
* call here.
|
|
514
|
-
*
|
|
515
|
-
* **There is no `property` field.** Every verb in this file says by itself which
|
|
516
|
-
* property a request is about, and two families sharing a verb are told apart by
|
|
517
|
-
* the element rather than by a field: `composedPath()[0]` survives the retarget
|
|
518
|
-
* that `event.target` does not.
|
|
519
|
-
*/
|
|
520
|
-
export interface ChangeDetail {
|
|
521
|
-
/** The value after the change. */
|
|
522
|
-
value: string;
|
|
523
|
-
}
|
|
524
|
-
/**
|
|
525
|
-
* A set is about to make a different child current, and can be refused.
|
|
526
|
-
*
|
|
527
|
-
* **Not a generic `helix-change`.** `Tabs` moving to another tab, `Tree` marking
|
|
528
|
-
* another row and `Steps` advancing are not a value changing, they are a set
|
|
529
|
-
* choosing, and the platform's word for a committed value would say the wrong
|
|
530
|
-
* thing. `active` names which child is current, so `activate` is the verb, and
|
|
531
|
-
* unlike `change` the platform has no claim on it.
|
|
532
|
-
*
|
|
533
|
-
* **This fires before the state moves.** Inside a handler `currentTarget.active`
|
|
534
|
-
* still holds the previous value, and `detail.value` is a proposal another
|
|
535
|
-
* listener may refuse, so a consumer who only wants to know which child is
|
|
536
|
-
* current listens for `helix-activate` instead. `helix-select` is not that
|
|
537
|
-
* notification either: it fires when an item is *chosen*, not when `active` is
|
|
538
|
-
* assigned.
|
|
539
|
-
*
|
|
540
|
-
* The shape is the one `MixinControllerOpen` already has, a cancelable request
|
|
541
|
-
* and a plain notification after the state has moved.
|
|
542
|
-
*/
|
|
543
|
-
export declare class HelixBeforeActivateEvent extends CustomEvent<ChangeDetail> {
|
|
544
|
-
static readonly eventName = "helix-before-activate";
|
|
545
|
-
constructor(detail: ChangeDetail);
|
|
546
|
-
}
|
|
547
|
-
/**
|
|
548
|
-
* A set has made a different child current.
|
|
549
|
-
*
|
|
550
|
-
* The notification half of `helix-before-activate`, dispatched after the state
|
|
551
|
-
* has moved, so `currentTarget.active` is the new value and the detail is a fact
|
|
552
|
-
* rather than a proposal.
|
|
553
|
-
*
|
|
554
|
-
* **Not cancelable**, for the reason every notification here is not: the
|
|
555
|
-
* decision was taken by the event before it, and a second refusable event for
|
|
556
|
-
* one transition is two answers to one question.
|
|
557
|
-
*
|
|
558
|
-
* **Prefixed, and it has to be.** `activate` unprefixed is not in any
|
|
559
|
-
* `*EventMap` in the DOM library, checked rather than assumed, but the prefix is
|
|
560
|
-
* what stops an event dispatched inside a shadow root and retargeted to the host
|
|
561
|
-
* being mistaken for something the host's own contents sent.
|
|
562
|
-
*/
|
|
563
|
-
export declare class HelixActivateEvent extends CustomEvent<ChangeDetail> {
|
|
564
|
-
static readonly eventName = "helix-activate";
|
|
565
|
-
constructor(detail: ChangeDetail);
|
|
566
|
-
}
|
|
567
|
-
/**
|
|
568
|
-
* The reader asked the map to move, which is as far as this library goes.
|
|
569
|
-
*
|
|
570
|
-
* **Helix draws no map and moves nobody's.** A tile renderer is a library and
|
|
571
|
-
* the frame around it is what this adds, so panning is a request the consumer
|
|
572
|
-
* answers against whatever they slotted: MapLibre, Leaflet, Google, or their
|
|
573
|
-
* own. The direction is in reading order rather than compass order, because the
|
|
574
|
-
* control that sent it is a button a reader pressed and `start` on a
|
|
575
|
-
* right-to-left page is east.
|
|
576
|
-
*
|
|
577
|
-
* Not cancelable. Nothing here moves on its own, and an event whose
|
|
578
|
-
* `preventDefault` means nothing is an event that lies about what it offers.
|
|
579
|
-
*/
|
|
580
|
-
export declare class HelixMapPanEvent extends CustomEvent<ViewportPanDetail> {
|
|
581
|
-
static readonly eventName = "helix-map-pan";
|
|
582
|
-
constructor(detail: MapPanDetail);
|
|
583
|
-
}
|
|
584
|
-
/**
|
|
585
|
-
* The reader asked the map to zoom, and for the same reason it is a request.
|
|
586
|
-
*
|
|
587
|
-
* `by` is a direction rather than a level: a scale a consumer's map understands
|
|
588
|
-
* is the consumer's to decide, and a frame that said "go to zoom 14" would be
|
|
589
|
-
* asserting a numbering that Leaflet, MapLibre and a static tile server do not
|
|
590
|
-
* agree on.
|
|
591
|
-
*/
|
|
592
|
-
export declare class HelixMapZoomEvent extends CustomEvent<ViewportZoomDetail> {
|
|
593
|
-
static readonly eventName = "helix-map-zoom";
|
|
594
|
-
constructor(detail: MapZoomDetail);
|
|
595
|
-
}
|
|
596
|
-
/**
|
|
597
|
-
* The reader asked the graph to move. A request, as a map's is: Helix draws no
|
|
598
|
-
* graph, and the renderer the page slotted, or `connectGraph`, answers it.
|
|
599
|
-
*/
|
|
600
|
-
export declare class HelixGraphPanEvent extends CustomEvent<ViewportPanDetail> {
|
|
601
|
-
static readonly eventName = "helix-graph-pan";
|
|
602
|
-
constructor(detail: ViewportPanDetail);
|
|
603
|
-
}
|
|
604
|
-
/** The reader asked the graph to zoom, a direction and not a level, as a map's is. */
|
|
605
|
-
export declare class HelixGraphZoomEvent extends CustomEvent<ViewportZoomDetail> {
|
|
606
|
-
static readonly eventName = "helix-graph-zoom";
|
|
607
|
-
constructor(detail: ViewportZoomDetail);
|
|
608
|
-
}
|
|
609
|
-
/** Where each note was laid out, by its `id`, in the renderer's own units. */
|
|
610
|
-
export interface GraphLayoutDetail {
|
|
611
|
-
positions: Record<string, {
|
|
612
|
-
x: number;
|
|
613
|
-
y: number;
|
|
614
|
-
z?: number | undefined;
|
|
615
|
-
}>;
|
|
616
|
-
}
|
|
617
|
-
/**
|
|
618
|
-
* A layout settled, with where it put every note. Keep the positions and hand
|
|
619
|
-
* them back as each note's `x` and `y`, and the graph opens where the reader
|
|
620
|
-
* left it, with no layout to run.
|
|
621
|
-
*/
|
|
622
|
-
export declare class HelixGraphLayoutEvent extends CustomEvent<GraphLayoutDetail> {
|
|
623
|
-
static readonly eventName = "helix-graph-layout";
|
|
624
|
-
constructor(detail: GraphLayoutDetail);
|
|
625
|
-
}
|
|
626
|
-
/** What changed on a graph frame that the renderer has to hear. */
|
|
627
|
-
export interface GraphPartChangeDetail {
|
|
628
|
-
/**
|
|
629
|
-
* `data` for the notes or the links, which are drawn again; `focus` for the
|
|
630
|
-
* selected note or the depth, which change what is emphasized and shown;
|
|
631
|
-
* `gestures` for which gestures the renderer takes.
|
|
632
|
-
*/
|
|
633
|
-
kind: 'data' | 'focus' | 'gestures';
|
|
634
|
-
}
|
|
635
|
-
/**
|
|
636
|
-
* The frame's notes, links, selection, depth or gestures changed, which the
|
|
637
|
-
* connector hears and the renderer is told. It stays on the frame, being the
|
|
638
|
-
* family's own bookkeeping rather than news for a page.
|
|
639
|
-
*/
|
|
640
|
-
export declare class HelixGraphPartChangeEvent extends CustomEvent<GraphPartChangeDetail> {
|
|
641
|
-
static readonly eventName = "helix-graph-part-change";
|
|
642
|
-
constructor(detail: GraphPartChangeDetail);
|
|
643
|
-
}
|
|
644
|
-
/** One signal between two notes, as the frame's `signal()` sends it. */
|
|
645
|
-
export interface GraphSignalDetail {
|
|
646
|
-
/** The note the signal leaves, by its `id`. */
|
|
647
|
-
from: string;
|
|
648
|
-
/**
|
|
649
|
-
* What the signal means, which colors it. Where none is given, the signal
|
|
650
|
-
* turns from the first note's color to the second's as it crosses.
|
|
651
|
-
*/
|
|
652
|
-
tone?: 'accent' | 'danger' | 'info' | 'neutral' | 'primary' | 'success' | 'warning' | undefined;
|
|
653
|
-
/** The note the signal reaches, by its `id`. */
|
|
654
|
-
to: string;
|
|
655
|
-
}
|
|
656
|
-
/**
|
|
657
|
-
* Something passed between two notes, which the renderer draws traveling
|
|
658
|
-
* from one to the other. The connector hears it and the renderer draws it; it
|
|
659
|
-
* stays on the frame, being the family's own bookkeeping rather than news for
|
|
660
|
-
* a page.
|
|
661
|
-
*/
|
|
662
|
-
export declare class HelixGraphSignalEvent extends CustomEvent<GraphSignalDetail> {
|
|
663
|
-
static readonly eventName = "helix-graph-signal";
|
|
664
|
-
constructor(detail: GraphSignalDetail);
|
|
665
|
-
}
|
|
666
|
-
/**
|
|
667
|
-
* The graph has been drawn whole, laid out and settled, sent once each time it
|
|
668
|
-
* is connected, from the frame, which then matches `:state(ready)`.
|
|
669
|
-
*/
|
|
670
|
-
export declare class HelixGraphReadyEvent extends Event {
|
|
671
|
-
static readonly eventName = "helix-graph-ready";
|
|
672
|
-
constructor();
|
|
673
|
-
}
|
|
674
|
-
/** Detail carried by `helix-graph-filter`. */
|
|
675
|
-
export interface GraphFilterDetail {
|
|
676
|
-
/** The groups the graph would hide, by name: every group the reader has turned off, after this press. */
|
|
677
|
-
hidden: readonly string[];
|
|
678
|
-
}
|
|
679
|
-
/**
|
|
680
|
-
* A reader pressed a group in the graph's legend, which would show or hide
|
|
681
|
-
* its notes, sent from the frame before it does. Cancelable: cancel it to
|
|
682
|
-
* keep the groups as they were, or to set `hiddenGroups` yourself.
|
|
683
|
-
*/
|
|
684
|
-
export declare class HelixGraphFilterEvent extends CustomEvent<GraphFilterDetail> {
|
|
685
|
-
static readonly eventName = "helix-graph-filter";
|
|
686
|
-
constructor(detail: GraphFilterDetail);
|
|
687
|
-
}
|
|
688
|
-
/** A rotate request: turn by some degrees, or turn to a bearing. */
|
|
689
|
-
export interface MapRotateDetail {
|
|
690
|
-
/** Degrees to turn the map clockwise. Negative turns it counterclockwise. */
|
|
691
|
-
by?: number;
|
|
692
|
-
/** The bearing to turn the map to, in degrees clockwise from north. `0` faces north. */
|
|
693
|
-
to?: number;
|
|
694
|
-
}
|
|
695
|
-
/** A tilt request, in degrees. */
|
|
696
|
-
export interface MapTiltDetail {
|
|
697
|
-
/** Degrees to tilt the map toward the horizon. Negative tilts it back toward flat. */
|
|
698
|
-
by?: number;
|
|
699
|
-
/** The tilt to go to, in degrees from looking straight down. `0` is flat. */
|
|
700
|
-
to?: number;
|
|
701
|
-
}
|
|
702
|
-
/**
|
|
703
|
-
* The user asked the map to rotate, from a rotate button or key. Turn your map
|
|
704
|
-
* in response. Not cancelable, because the frame moves nothing itself.
|
|
705
|
-
*/
|
|
706
|
-
export declare class HelixMapRotateEvent extends CustomEvent<MapRotateDetail> {
|
|
707
|
-
static readonly eventName = "helix-map-rotate";
|
|
708
|
-
constructor(detail: MapRotateDetail);
|
|
709
|
-
}
|
|
710
|
-
/**
|
|
711
|
-
* The user asked the map to tilt, from a tilt button or key. Tilt your map in
|
|
712
|
-
* response. Not cancelable, because the frame moves nothing itself.
|
|
713
|
-
*/
|
|
714
|
-
export declare class HelixMapTiltEvent extends CustomEvent<MapTiltDetail> {
|
|
715
|
-
static readonly eventName = "helix-map-tilt";
|
|
716
|
-
constructor(detail: MapTiltDetail);
|
|
717
|
-
}
|
|
718
|
-
/** What changed on a part of a map: a line or a shape, or something standing on a place. */
|
|
719
|
-
export interface MapPartChangeDetail {
|
|
720
|
-
/**
|
|
721
|
-
* `layer` for a route or an area, which is redrawn; `place` for a marker or
|
|
722
|
-
* a position, which is moved; `cluster` for a marker gathered into another
|
|
723
|
-
* or let go, which moves the frame's tab stop; `menu` for the frame's layers
|
|
724
|
-
* menu opening, which asks for its map-type previews; `gestures` for which
|
|
725
|
-
* gestures the map takes, which the renderer is told.
|
|
726
|
-
*/
|
|
727
|
-
kind: 'cluster' | 'gestures' | 'layer' | 'menu' | 'place';
|
|
728
|
-
}
|
|
729
|
-
/**
|
|
730
|
-
* A marker, a position, a route or an area changed what it says: where it is,
|
|
731
|
-
* its points, its progress, its name.
|
|
732
|
-
*
|
|
733
|
-
* **Said rather than reflected.** The connector and the frame follow the
|
|
734
|
-
* parts, and heard them through their attributes until the parts reflected
|
|
735
|
-
* nothing CSS selects on: a live position's coordinates are state, and a
|
|
736
|
-
* route's points are a payload, neither of which belongs in the markup. It
|
|
737
|
-
* bubbles to the frame, whose light-DOM children the parts are, and goes no
|
|
738
|
-
* further, being the family's own bookkeeping rather than news for a page.
|
|
739
|
-
*/
|
|
740
|
-
export declare class HelixMapPartChangeEvent extends CustomEvent<MapPartChangeDetail> {
|
|
741
|
-
static readonly eventName = "helix-map-part-change";
|
|
742
|
-
constructor(detail: MapPartChangeDetail);
|
|
743
|
-
}
|
|
744
|
-
/** What a cluster a reader pressed holds. */
|
|
745
|
-
export interface MapClusterDetail {
|
|
746
|
-
/**
|
|
747
|
-
* A points layer's count, as the connector keyed it, where the cluster is
|
|
748
|
-
* one the renderer drew rather than one of markers.
|
|
749
|
-
*/
|
|
750
|
-
key?: string | undefined;
|
|
751
|
-
/** The names of the places it stands for, the one it is drawn as first, where they are known. */
|
|
752
|
-
labels: string[];
|
|
753
|
-
}
|
|
754
|
-
/**
|
|
755
|
-
* A reader pressed a cluster, one marker standing for several that would have
|
|
756
|
-
* drawn over each other.
|
|
757
|
-
*
|
|
758
|
-
* **Opened by zooming in**, which the connector does, framing the places the
|
|
759
|
-
* cluster holds, as pressing one does on every map a reader has used. Told
|
|
760
|
-
* rather than asked: a page that lists them in a panel instead connects with
|
|
761
|
-
* `clusterZoom: false`. Sent from the marker the cluster is drawn as, and
|
|
762
|
-
* bubbles through the frame to the page.
|
|
763
|
-
*/
|
|
764
|
-
export declare class HelixMapClusterEvent extends CustomEvent<MapClusterDetail> {
|
|
765
|
-
static readonly eventName = "helix-map-cluster";
|
|
766
|
-
constructor(detail: MapClusterDetail);
|
|
767
|
-
}
|
|
768
|
-
/**
|
|
769
|
-
* The map has been drawn whole: its style, every tile the view needs, and the
|
|
770
|
-
* ground raised where it has terrain. Sent once each time a map is connected,
|
|
771
|
-
* from the frame, which then matches `:state(ready)`.
|
|
772
|
-
*
|
|
773
|
-
* **What a page waits on to show a map that is finished**, where it would
|
|
774
|
-
* otherwise watch it draw in stages: the streets, then the imagery tile by
|
|
775
|
-
* tile, then the ground rising under the markers about half a second in. The
|
|
776
|
-
* shapes the frame draws are left out of "whole", since a route that animates
|
|
777
|
-
* is redrawn every frame and would never count as drawn.
|
|
778
|
-
*/
|
|
779
|
-
export declare class HelixMapReadyEvent extends Event {
|
|
780
|
-
static readonly eventName = "helix-map-ready";
|
|
781
|
-
constructor();
|
|
782
|
-
}
|
|
783
|
-
/** A message is about to be pinned or unpinned, and can be refused. */
|
|
784
|
-
export declare class HelixBeforePinEvent extends CustomEvent<ChangeDetail> {
|
|
785
|
-
static readonly eventName = "helix-before-pin";
|
|
786
|
-
constructor(detail: ChangeDetail);
|
|
787
|
-
}
|
|
788
|
-
/**
|
|
789
|
-
* A transcript was pinned to the bottom, or let go of it.
|
|
790
|
-
*
|
|
791
|
-
* The notification half of `helix-before-pin`, sent once `pinned` has moved,
|
|
792
|
-
* so `currentTarget.pinned` is the new state and `detail.value` says it as
|
|
793
|
-
* `true` or `false`. Not cancelable: the decision was the request's.
|
|
794
|
-
*/
|
|
795
|
-
export declare class HelixPinEvent extends CustomEvent<ChangeDetail> {
|
|
796
|
-
static readonly eventName = "helix-pin";
|
|
797
|
-
constructor(detail: ChangeDetail);
|
|
798
|
-
}
|
|
799
|
-
/** A divider is about to move, and can be refused. */
|
|
800
|
-
export declare class HelixBeforeResizeEvent extends CustomEvent<ChangeDetail> {
|
|
801
|
-
static readonly eventName = "helix-before-resize";
|
|
802
|
-
constructor(detail: ChangeDetail);
|
|
803
|
-
}
|
|
804
|
-
/**
|
|
805
|
-
* A divider settled somewhere new.
|
|
806
|
-
*
|
|
807
|
-
* The notification half of `helix-before-resize`, sent once `position` has
|
|
808
|
-
* moved, with the new position. Not cancelable: the decision was the
|
|
809
|
-
* request's.
|
|
810
|
-
*
|
|
811
|
-
* **Past tense, because `helix-resize` was already taken** by a measurement,
|
|
812
|
-
* the height a sandboxed preview reports for what it drew, and one name cannot
|
|
813
|
-
* carry both.
|
|
814
|
-
*/
|
|
815
|
-
export declare class HelixResizedEvent extends CustomEvent<ChangeDetail> {
|
|
816
|
-
static readonly eventName = "helix-resized";
|
|
817
|
-
constructor(detail: ChangeDetail);
|
|
818
|
-
}
|
|
819
|
-
/**
|
|
820
|
-
* The divider between a sandbox's panes is about to move, and can be refused.
|
|
821
|
-
*
|
|
822
|
-
* Its own verb rather than a `helix-before-resize` carrying which divider moved:
|
|
823
|
-
* a sandbox has two, and they were told apart by a field on a detail every other
|
|
824
|
-
* request in this file also carries.
|
|
825
|
-
*/
|
|
826
|
-
export declare class HelixBeforeSplitEvent extends CustomEvent<ChangeDetail> {
|
|
827
|
-
static readonly eventName = "helix-before-split";
|
|
828
|
-
constructor(detail: ChangeDetail);
|
|
829
|
-
}
|
|
830
|
-
/**
|
|
831
|
-
* A sandbox's panel is about to change height, and can be refused.
|
|
832
|
-
*
|
|
833
|
-
* The sibling of `helix-before-split`, and named for the divider rather than for
|
|
834
|
-
* the axis because a reader binding one of the two is choosing which divider they
|
|
835
|
-
* care about. `value` is pixels here and a percentage there, which is what each
|
|
836
|
-
* property already publishes.
|
|
837
|
-
*/
|
|
838
|
-
export declare class HelixBeforePanelResizeEvent extends CustomEvent<ChangeDetail> {
|
|
839
|
-
static readonly eventName = "helix-before-panel-resize";
|
|
840
|
-
constructor(detail: ChangeDetail);
|
|
841
|
-
}
|
|
842
|
-
/** A pane is about to collapse or reopen, and can be refused. */
|
|
843
|
-
export declare class HelixBeforeCollapseEvent extends CustomEvent<ChangeDetail> {
|
|
844
|
-
static readonly eventName = "helix-before-collapse";
|
|
845
|
-
constructor(detail: ChangeDetail);
|
|
846
|
-
}
|
|
847
|
-
/**
|
|
848
|
-
* A pane shut or reopened.
|
|
849
|
-
*
|
|
850
|
-
* The notification half of `helix-before-collapse`, sent once `collapsed` has
|
|
851
|
-
* moved. `detail.value` is the side that is shut, or empty where both panes
|
|
852
|
-
* are open. Not cancelable: the decision was the request's.
|
|
853
|
-
*/
|
|
854
|
-
export declare class HelixCollapseEvent extends CustomEvent<ChangeDetail> {
|
|
855
|
-
static readonly eventName = "helix-collapse";
|
|
856
|
-
constructor(detail: ChangeDetail);
|
|
857
|
-
}
|
|
858
|
-
/** Source is about to be edited, and can be refused. */
|
|
859
|
-
export declare class HelixBeforeEditEvent extends CustomEvent<ChangeDetail> {
|
|
860
|
-
static readonly eventName = "helix-before-edit";
|
|
861
|
-
constructor(detail: ChangeDetail);
|
|
862
|
-
}
|
|
863
|
-
/**
|
|
864
|
-
* A value is about to change, and the change can be refused.
|
|
865
|
-
*
|
|
866
|
-
* **The request half of every value control.** It announces the value being
|
|
867
|
-
* *proposed*, before anything moves, so a listener calling `preventDefault()`
|
|
868
|
-
* refuses it and the control stays where it was. That is how a consumer takes
|
|
869
|
-
* one decision without declaring a mode, which is what 294 settled: the element
|
|
870
|
-
* always owns and applies its state, and refusing is the way to take it over.
|
|
871
|
-
*
|
|
872
|
-
* **The notification is native and separate.** Once this has gone out and the
|
|
873
|
-
* value has moved, the control announces it again under the platform's own
|
|
874
|
-
* name, `input` while a reader is editing and `change` when they are done, so
|
|
875
|
-
* `onChange` in React and `onchange=` in HTML both reach it and
|
|
876
|
-
* `currentTarget.value` is correct by the time a handler reads it. This event
|
|
877
|
-
* carries the detail because at the moment it fires the value is not on the
|
|
878
|
-
* element yet.
|
|
879
|
-
*
|
|
880
|
-
* **`announcesInput` picks which native notification fires, not which name this
|
|
881
|
-
* carries.** Granularity is the platform's own distinction, `input` against
|
|
882
|
-
* `change`; the request is always this one event.
|
|
883
|
-
*/
|
|
884
|
-
export declare class HelixBeforeChangeEvent extends CustomEvent<ChangeDetail> {
|
|
885
|
-
static readonly eventName = "helix-before-change";
|
|
886
|
-
constructor(detail: ChangeDetail);
|
|
887
|
-
}
|
|
888
|
-
/**
|
|
889
|
-
* A checked state is about to change, and the change can be refused.
|
|
890
|
-
*
|
|
891
|
-
* **Its own event rather than a `helix-before-change` carrying a boolean.**
|
|
892
|
-
* Through the value event the state arrives as `String(checked)`, so a consumer
|
|
893
|
-
* receives the string `"false"`, which is truthy, and a test asserting the value
|
|
894
|
-
* passes on that bug. A control whose state is a boolean wants an event with a
|
|
895
|
-
* typed boolean in it.
|
|
896
|
-
*
|
|
897
|
-
* The notification is native, as it is for a value: the control relays `change`
|
|
898
|
-
* from the inner input and announces `input` beside it, so `onChange` reads
|
|
899
|
-
* `currentTarget.checked` and gets a boolean from the platform.
|
|
900
|
-
*
|
|
901
|
-
* It also ends a collision: Checkbox Group listened for its boxes' change and
|
|
902
|
-
* dispatched its own under the same name from the same host, so it needed
|
|
903
|
-
* `stopImmediatePropagation` to keep a consumer from receiving one box's boolean
|
|
904
|
-
* alongside the whole set. Two names, two facts.
|
|
905
|
-
*/
|
|
906
|
-
export declare class HelixBeforeToggleEvent extends CustomEvent<ToggleDetail> {
|
|
907
|
-
static readonly eventName = "helix-before-toggle";
|
|
908
|
-
constructor(detail: ToggleDetail);
|
|
909
|
-
}
|
|
910
|
-
/** Detail carried by `helix-scrolled`. */
|
|
911
|
-
export interface ScrolledDetail {
|
|
912
|
-
/**
|
|
913
|
-
* Whether the page is scrolled away from the top, as a boolean and not a word
|
|
914
|
-
* that reads like one. Follows `helix-before-toggle`'s rule for the same reason.
|
|
915
|
-
*/
|
|
916
|
-
scrolled: boolean;
|
|
917
|
-
}
|
|
918
|
-
/** Detail carried by `helix-before-toggle`. */
|
|
919
|
-
export interface ToggleDetail {
|
|
920
|
-
/** The state being asked for, as a boolean and not a word that reads like one. */
|
|
921
|
-
checked: boolean;
|
|
922
|
-
}
|
|
923
|
-
/** Detail carried by `helix-create`. */
|
|
924
|
-
export interface CreateDetail {
|
|
925
|
-
/** What the reader typed, which is being offered as a new answer. */
|
|
926
|
-
value: string;
|
|
927
|
-
}
|
|
928
|
-
/**
|
|
929
|
-
* The reader asked for something the list does not hold.
|
|
930
|
-
*
|
|
931
|
-
* Cancelable, and announced before anything is applied, because the options are
|
|
932
|
-
* the consumer's own light DOM and no component here writes into it. What the
|
|
933
|
-
* control can do is say what was asked for and take the value; putting an
|
|
934
|
-
* option in the list, or a row in a database, is the consumer's, and a consumer
|
|
935
|
-
* who validates first refuses this and adds nothing.
|
|
936
|
-
*
|
|
937
|
-
* The detail carries the text as typed, not a slug of it. Trimming or lowering
|
|
938
|
-
* it here would be this element deciding what a name means, and a consumer who
|
|
939
|
-
* wants an identifier can make one from what they were given.
|
|
940
|
-
*/
|
|
941
|
-
export declare class HelixCreateEvent extends CustomEvent<CreateDetail> {
|
|
942
|
-
static readonly eventName = "helix-create";
|
|
943
|
-
constructor(detail: CreateDetail);
|
|
944
|
-
}
|
|
945
|
-
/** Detail carried by `helix-copy`. */
|
|
946
|
-
export interface CopyDetail {
|
|
947
|
-
/** What was put on the clipboard. */
|
|
948
|
-
value: string;
|
|
949
|
-
}
|
|
950
|
-
/**
|
|
951
|
-
* Something was copied to the clipboard.
|
|
952
|
-
*
|
|
953
|
-
* Not cancelable, and deliberately: it is announced after the write, because a
|
|
954
|
-
* clipboard write is a permission the platform may refuse and there is nothing
|
|
955
|
-
* useful to report until it has either happened or not.
|
|
956
|
-
*/
|
|
957
|
-
export declare class HelixCopyEvent extends CustomEvent<CopyDetail> {
|
|
958
|
-
static readonly eventName = "helix-copy";
|
|
959
|
-
constructor(detail: CopyDetail);
|
|
960
|
-
}
|
|
961
|
-
/** Detail carried by `helix-console`. */
|
|
962
|
-
export interface ConsoleDetail {
|
|
963
|
-
/** How the message was logged. */
|
|
964
|
-
level: 'log' | 'info' | 'warn' | 'error';
|
|
965
|
-
/** The message, already flattened to text. */
|
|
966
|
-
text: string;
|
|
967
|
-
}
|
|
968
|
-
/**
|
|
969
|
-
* Fired when something being previewed writes to the console.
|
|
970
|
-
*
|
|
971
|
-
* Carries text rather than the logged values. The preview is a separate
|
|
972
|
-
* document, so what arrives has crossed `postMessage` and been through
|
|
973
|
-
* structured clone: a DOM node or a function does not survive that, and half a
|
|
974
|
-
* value is worse than a string of it.
|
|
975
|
-
*/
|
|
976
|
-
export declare class HelixConsoleEvent extends CustomEvent<ConsoleDetail> {
|
|
977
|
-
static readonly eventName = "helix-console";
|
|
978
|
-
constructor(detail: ConsoleDetail);
|
|
979
|
-
}
|
|
980
|
-
/** Detail carried by `helix-resize`. */
|
|
981
|
-
export interface ResizeDetail {
|
|
982
|
-
/** How tall the content is, in CSS pixels. */
|
|
983
|
-
size: number;
|
|
984
|
-
}
|
|
985
|
-
/**
|
|
986
|
-
* Fired when something reports how much room its content actually needs.
|
|
987
|
-
*
|
|
988
|
-
* **A measurement crossing a boundary the measurer is on the far side of.** A
|
|
989
|
-
* sandboxed preview is its own document: nothing outside it can read the height
|
|
990
|
-
* of what it drew, because the frame is opaque and a box sized from the outside
|
|
991
|
-
* only ever reports the box. So the document measures itself and says so, and
|
|
992
|
-
* this is what it says it with.
|
|
993
|
-
*
|
|
994
|
-
* A number rather than a box, because the width is the container's to decide and
|
|
995
|
-
* only the block size follows the content. A consumer that wants to act on it
|
|
996
|
-
* clamps it: what arrives is what was drawn, which for an empty example is
|
|
997
|
-
* nearly nothing and for a long one is more than a page.
|
|
998
|
-
*/
|
|
999
|
-
export declare class HelixResizeEvent extends CustomEvent<ResizeDetail> {
|
|
1000
|
-
static readonly eventName = "helix-resize";
|
|
1001
|
-
constructor(detail: ResizeDetail);
|
|
1002
|
-
}
|
|
1003
|
-
/**
|
|
1004
|
-
* Fired when a header crosses the threshold between resting at the top of the
|
|
1005
|
-
* page and floating over it.
|
|
1006
|
-
*
|
|
1007
|
-
* **The threshold lives in a custom state, and is announced rather than
|
|
1008
|
-
* reflected.** A `data-scrolled` on the host is an attribute nobody rendered: a
|
|
1009
|
-
* server sends the element without it and the element adds it on upgrade, so a
|
|
1010
|
-
* framework hydrating the page finds markup that no longer matches what it sent.
|
|
1011
|
-
* A custom state is deliberately not in the DOM and therefore not something a
|
|
1012
|
-
* hydration pass can disagree with.
|
|
1013
|
-
*
|
|
1014
|
-
* That closes the observability an attribute would accidentally provide. A
|
|
1015
|
-
* `MutationObserver` can watch an attribute and there is no equivalent for
|
|
1016
|
-
* `ElementInternals.states`, so a component holding a boolean nothing can read
|
|
1017
|
-
* is a component with a private opinion its consumers demonstrably need: the
|
|
1018
|
-
* bar's own backdrop is drawn by the page around it, and the page has to know
|
|
1019
|
-
* when to light it.
|
|
1020
|
-
*
|
|
1021
|
-
* Not cancelable. It reports where the page is rather than asking permission to
|
|
1022
|
-
* be there, and refusing it would leave the state and the announcement
|
|
1023
|
-
* disagreeing.
|
|
1024
|
-
*
|
|
1025
|
-
* The hysteresis stays inside the header, which is the point of announcing at
|
|
1026
|
-
* all: a consumer listening to `scroll` itself would be a second opinion on
|
|
1027
|
-
* when the page counts as scrolled, and the two would part company at the eight
|
|
1028
|
-
* pixels of travel this waits for.
|
|
1029
|
-
*/
|
|
1030
|
-
export declare class HelixScrolledEvent extends CustomEvent<ScrolledDetail> {
|
|
1031
|
-
static readonly eventName = "helix-scrolled";
|
|
1032
|
-
constructor(detail: ScrolledDetail);
|
|
1033
|
-
}
|
|
1034
|
-
/** Detail carried by `helix-caret`. */
|
|
1035
|
-
export interface CaretDetail {
|
|
1036
|
-
/** One-based column, counted in characters from the start of the line. */
|
|
1037
|
-
column: number;
|
|
1038
|
-
/** One-based line. */
|
|
1039
|
-
line: number;
|
|
1040
|
-
}
|
|
1041
|
-
/**
|
|
1042
|
-
* Fired when the cursor moves in a text editor.
|
|
1043
|
-
*
|
|
1044
|
-
* Not cancelable, unlike everything else here. The others announce something
|
|
1045
|
-
* about to happen and a listener can refuse it; this one reports where the
|
|
1046
|
-
* caret already is, and there is nothing left to refuse.
|
|
1047
|
-
*
|
|
1048
|
-
* It fires on every keystroke and every arrow press, which is why the status
|
|
1049
|
-
* bar reads it from the DOM rather than through a framework's state: routing a
|
|
1050
|
-
* caret position through React would re-render the workbench on every cursor
|
|
1051
|
-
* move.
|
|
1052
|
-
*/
|
|
1053
|
-
export declare class HelixCaretEvent extends CustomEvent<CaretDetail> {
|
|
1054
|
-
static readonly eventName = "helix-caret";
|
|
1055
|
-
constructor(detail: CaretDetail);
|
|
1056
|
-
}
|
|
1057
|
-
/** Detail carried by `helix-select`. */
|
|
1058
|
-
export interface SelectDetail {
|
|
1059
|
-
/**
|
|
1060
|
-
* Whether the reader took the row's second destination rather than its first.
|
|
1061
|
-
*
|
|
1062
|
-
* Absent everywhere but a command palette, where a row can carry two: the
|
|
1063
|
-
* value alone would say which was taken, since the two differ, but only by
|
|
1064
|
-
* comparing strings a consumer would have to keep in step with the markup.
|
|
1065
|
-
* A flag says it outright.
|
|
1066
|
-
*/
|
|
1067
|
-
alternate?: boolean;
|
|
1068
|
-
/**
|
|
1069
|
-
* The link of a row that is a link, which the browser follows once the event
|
|
1070
|
-
* is done unless it is canceled. A client-side router cancels it and follows
|
|
1071
|
-
* the link itself.
|
|
1072
|
-
*/
|
|
1073
|
-
href?: string;
|
|
1074
|
-
/** Value of the item the reader chose. */
|
|
1075
|
-
value: string;
|
|
1076
|
-
}
|
|
1077
|
-
/**
|
|
1078
|
-
* Fired when a component moves the view it is showing, rather than its value.
|
|
1079
|
-
*
|
|
1080
|
-
* A calendar paging to another month is not choosing a date, and the two have
|
|
1081
|
-
* to be separable: a consumer driving the view needs to hear that it moved
|
|
1082
|
-
* without being told the answer changed. `helix-change` belongs to the value,
|
|
1083
|
-
* and giving it both jobs would make either one unusable on its own.
|
|
1084
|
-
*/
|
|
1085
|
-
export declare class HelixNavigateEvent extends CustomEvent<NavigateDetail> {
|
|
1086
|
-
static readonly eventName = "helix-navigate";
|
|
1087
|
-
constructor(detail: NavigateDetail);
|
|
1088
|
-
}
|
|
1089
|
-
/** Detail carried by `helix-complete`. */
|
|
1090
|
-
export interface CompleteDetail {
|
|
1091
|
-
/** What the control now holds, in full. */
|
|
1092
|
-
value: string;
|
|
1093
|
-
}
|
|
1094
|
-
/**
|
|
1095
|
-
* Fired when a control that fills up has filled.
|
|
1096
|
-
*
|
|
1097
|
-
* The moment a code entry exists for: a six-character field is worth submitting
|
|
1098
|
-
* the instant the sixth character lands, and a consumer watching `helix-change`
|
|
1099
|
-
* has to know the length and compare it on every keystroke to find that moment
|
|
1100
|
-
* themselves.
|
|
1101
|
-
*
|
|
1102
|
-
* Separate from `helix-change` rather than a flag on it, because they are
|
|
1103
|
-
* answered by different code: one keeps a value in step and the other decides
|
|
1104
|
-
* whether to send a form. A listener that only cares about the second says so by
|
|
1105
|
-
* which event it listens for.
|
|
1106
|
-
*
|
|
1107
|
-
* `complete` is free as a verb. React's synthetic system claims `change`,
|
|
1108
|
-
* `input`, `submit`, `reset`, `copy`, `paste`, `scroll`, `drag`, `focus` and
|
|
1109
|
-
* `blur`, measured, and this is none of them.
|
|
1110
|
-
*
|
|
1111
|
-
* Not cancelable. It reports that something already happened, which is the same
|
|
1112
|
-
* reason `helix-caret` is not: there is nothing left to refuse once the last
|
|
1113
|
-
* character is in the box.
|
|
1114
|
-
*/
|
|
1115
|
-
export declare class HelixCompleteEvent extends CustomEvent<CompleteDetail> {
|
|
1116
|
-
static readonly eventName = "helix-complete";
|
|
1117
|
-
constructor(detail: CompleteDetail);
|
|
1118
|
-
}
|
|
1119
|
-
/**
|
|
1120
|
-
* Fired when the reader offers something they wrote.
|
|
1121
|
-
*
|
|
1122
|
-
* **Cancelable, and the composer clears only when nobody refused.** Sending is a
|
|
1123
|
-
* round trip: a composer that empties itself and then hears the request failed
|
|
1124
|
-
* has thrown away the only copy of what the reader typed, and a reader who has
|
|
1125
|
-
* just written three paragraphs is exactly who cannot afford that. Refusing
|
|
1126
|
-
* leaves the text where it is.
|
|
1127
|
-
*
|
|
1128
|
-
* Not `helix-create`, which is the combobox's event for a value a list does not
|
|
1129
|
-
* hold, and not `helix-change`, because nothing about a value changed: the
|
|
1130
|
-
* reader finished something and handed it over.
|
|
1131
|
-
*/
|
|
1132
|
-
export declare class HelixSendEvent extends CustomEvent<SendDetail> {
|
|
1133
|
-
static readonly eventName = "helix-send";
|
|
1134
|
-
constructor(detail: SendDetail);
|
|
1135
|
-
}
|
|
1136
|
-
/**
|
|
1137
|
-
* Fired when something a user comes back to is marked read, or unread.
|
|
1138
|
-
*
|
|
1139
|
-
* **Read state is reported rather than owned.** Marking a notification read is
|
|
1140
|
-
* usually a round trip, and a component that flips the state itself and then
|
|
1141
|
-
* hears the request failed has already told the reader something untrue. So this
|
|
1142
|
-
* is cancelable, and refusing it leaves the item alone; the component applies
|
|
1143
|
-
* it once nobody has refused, which is the same contract every other axis in
|
|
1144
|
-
* the library uses.
|
|
1145
|
-
*
|
|
1146
|
-
* Bubbles and is composed, so a feed hears its own items: one handler on the
|
|
1147
|
-
* list serves every notification in it, which is what a consumer syncing to a
|
|
1148
|
-
* server actually wants.
|
|
1149
|
-
*/
|
|
1150
|
-
export declare class HelixReadEvent extends CustomEvent<ReadDetail> {
|
|
1151
|
-
static readonly eventName = "helix-read";
|
|
1152
|
-
constructor(detail: ReadDetail);
|
|
1153
|
-
}
|
|
1154
|
-
/**
|
|
1155
|
-
* Fired when the reader asks for a different order.
|
|
1156
|
-
*
|
|
1157
|
-
* Cancelable, and refusing it leaves the order alone, which is what makes a
|
|
1158
|
-
* server-side sort expressible: the consumer refuses the local reorder, fetches,
|
|
1159
|
-
* and hands back a new set. This is the element reporting that a heading was
|
|
1160
|
-
* clicked, before it acts on it.
|
|
1161
|
-
*
|
|
1162
|
-
* Not `helix-change`: nothing about the data changed, only the order it is read
|
|
1163
|
-
* in, and a consumer listening for changes to a value should not hear a sort.
|
|
1164
|
-
* That is the same distinction `helix-filter` is drawn on.
|
|
1165
|
-
*/
|
|
1166
|
-
export declare class HelixSortEvent extends CustomEvent<SortDetail> {
|
|
1167
|
-
static readonly eventName = "helix-sort";
|
|
1168
|
-
constructor(detail: SortDetail);
|
|
1169
|
-
}
|
|
1170
|
-
/**
|
|
1171
|
-
* The rows are in a different order.
|
|
1172
|
-
*
|
|
1173
|
-
* The notification after `helix-sort`, sent once `sort` has moved, with the
|
|
1174
|
-
* order now in force. Not cancelable: the decision was the request's.
|
|
1175
|
-
*
|
|
1176
|
-
* **Past tense, because the plain verb is the request.** `helix-sort` was
|
|
1177
|
-
* cancelable before the library had a word for its notification, and
|
|
1178
|
-
* consumers bind it by that name, so the notification takes the one after it.
|
|
1179
|
-
*/
|
|
1180
|
-
export declare class HelixSortedEvent extends CustomEvent<SortDetail> {
|
|
1181
|
-
static readonly eventName = "helix-sorted";
|
|
1182
|
-
constructor(detail: SortDetail);
|
|
1183
|
-
}
|
|
1184
|
-
/**
|
|
1185
|
-
* Fired when the reader changes which values a field is filtered by.
|
|
1186
|
-
*
|
|
1187
|
-
* **Not `helix-filter`, which is a different thing already taken.** That one
|
|
1188
|
-
* says a list narrowed itself to a string, and `Data Table` and `Listbox` both
|
|
1189
|
-
* dispatch it with exactly that meaning. This one carries a structured filter:
|
|
1190
|
-
* a field, a comparison and a set of values, which is a shape neither of those
|
|
1191
|
-
* has and neither should grow.
|
|
1192
|
-
*
|
|
1193
|
-
* Cancelable, and refusing it is how a consumer takes the decision for one
|
|
1194
|
-
* interaction, the way `requestChange` documents for every stateful change here.
|
|
1195
|
-
*/
|
|
1196
|
-
export declare class HelixFacetEvent extends CustomEvent<FacetDetail> {
|
|
1197
|
-
static readonly eventName = "helix-facet";
|
|
1198
|
-
constructor(detail: FacetDetail);
|
|
1199
|
-
}
|
|
1200
|
-
/**
|
|
1201
|
-
* Fired when a component narrows what it is showing.
|
|
1202
|
-
*
|
|
1203
|
-
* Filtering hides rather than removes, so nothing about the value changes and
|
|
1204
|
-
* `helix-change` would be a lie. What a consumer wants to know is that the list
|
|
1205
|
-
* in front of the reader is no longer the whole list.
|
|
1206
|
-
*/
|
|
1207
|
-
export declare class HelixFilterEvent extends CustomEvent<FilterDetail> {
|
|
1208
|
-
static readonly eventName = "helix-filter";
|
|
1209
|
-
constructor(detail: FilterDetail);
|
|
1210
|
-
}
|
|
1211
|
-
/**
|
|
1212
|
-
* A component is showing a narrower or a wider set.
|
|
1213
|
-
*
|
|
1214
|
-
* The notification after `helix-filter`, sent once the query has moved, with
|
|
1215
|
-
* the query now in force. Not cancelable, and past tense for the reason
|
|
1216
|
-
* `helix-sorted` is.
|
|
1217
|
-
*/
|
|
1218
|
-
export declare class HelixFilteredEvent extends CustomEvent<FilterDetail> {
|
|
1219
|
-
static readonly eventName = "helix-filtered";
|
|
1220
|
-
constructor(detail: FilterDetail);
|
|
1221
|
-
}
|
|
1222
|
-
/** What a shortcut reports when its chord is pressed. */
|
|
1223
|
-
export interface ShortcutDetail {
|
|
1224
|
-
/**
|
|
1225
|
-
* The chord that matched, as it was written.
|
|
1226
|
-
*
|
|
1227
|
-
* Given back rather than left to be remembered, so one handler can serve
|
|
1228
|
-
* several keys and answer by comparing what it was told.
|
|
1229
|
-
*/
|
|
1230
|
-
keys: string;
|
|
1231
|
-
}
|
|
1232
|
-
/**
|
|
1233
|
-
* Fired when a shortcut's chord is pressed.
|
|
1234
|
-
*
|
|
1235
|
-
* Cancelable, and the key event is only consumed where this is not refused: a
|
|
1236
|
-
* consumer that decides the moment is wrong, a dialog is over the control or
|
|
1237
|
-
* the reader is mid-composition, calls `preventDefault()` and the keystroke
|
|
1238
|
-
* goes on to whatever would have had it.
|
|
1239
|
-
*/
|
|
1240
|
-
export declare class HelixShortcutEvent extends CustomEvent<ShortcutDetail> {
|
|
1241
|
-
static readonly eventName = "helix-shortcut";
|
|
1242
|
-
constructor(detail: ShortcutDetail);
|
|
1243
|
-
}
|
|
1244
|
-
/**
|
|
1245
|
-
* Fired when the reader selects an item in a set.
|
|
1246
|
-
*
|
|
1247
|
-
* Bubbles and is composed, because this is how a set coordinates: a tree, a
|
|
1248
|
-
* tab list and a toggle group all learn which of their children was chosen by
|
|
1249
|
-
* hearing it arrive.
|
|
1250
|
-
*/
|
|
1251
|
-
export declare class HelixSelectEvent extends CustomEvent<SelectDetail> {
|
|
1252
|
-
static readonly eventName = "helix-select";
|
|
1253
|
-
constructor(detail: SelectDetail);
|
|
1254
|
-
}
|
|
1255
|
-
/**
|
|
1256
|
-
* A set holds a different selection.
|
|
1257
|
-
*
|
|
1258
|
-
* The notification after a `helix-select` that asked to change what is
|
|
1259
|
-
* selected, sent once the selection has moved, with the selection now in
|
|
1260
|
-
* force. Not cancelable, and past tense for the reason `helix-sorted` is.
|
|
1261
|
-
*/
|
|
1262
|
-
export declare class HelixSelectedEvent extends CustomEvent<SelectDetail> {
|
|
1263
|
-
static readonly eventName = "helix-selected";
|
|
1264
|
-
constructor(detail: SelectDetail);
|
|
1265
|
-
}
|
|
1266
|
-
/**
|
|
1267
|
-
* Fired when the reader asks for the columns in a different order.
|
|
1268
|
-
*
|
|
1269
|
-
* Cancelable, and refusing it leaves the columns where they were, so a consumer
|
|
1270
|
-
* who stores the order, in a URL or a preference, can take the decision the way
|
|
1271
|
-
* a server-side sort takes `helix-sort`. The detail is the whole order as
|
|
1272
|
-
* space-separated fields rather than one move, because the order is the fact a
|
|
1273
|
-
* consumer stores, and a move is only meaningful against an order they would
|
|
1274
|
-
* then have to keep in step.
|
|
1275
|
-
*
|
|
1276
|
-
* Not `helix-sort`: that reorders the rows, this reorders the columns, and a
|
|
1277
|
-
* consumer listening for one should not hear the other.
|
|
1278
|
-
*/
|
|
1279
|
-
export declare class HelixReorderEvent extends CustomEvent<ChangeDetail> {
|
|
1280
|
-
static readonly eventName = "helix-reorder";
|
|
1281
|
-
constructor(detail: ChangeDetail);
|
|
1282
|
-
}
|
|
1283
|
-
/**
|
|
1284
|
-
* The columns are in a different order.
|
|
1285
|
-
*
|
|
1286
|
-
* The notification after `helix-reorder`, sent once the order has moved, with
|
|
1287
|
-
* every field in the new one. Not cancelable, and past tense for the reason
|
|
1288
|
-
* `helix-sorted` is.
|
|
1289
|
-
*/
|
|
1290
|
-
export declare class HelixReorderedEvent extends CustomEvent<ChangeDetail> {
|
|
1291
|
-
static readonly eventName = "helix-reordered";
|
|
1292
|
-
constructor(detail: ChangeDetail);
|
|
1293
|
-
}
|
|
1294
|
-
/**
|
|
1295
|
-
* Fired when a reader reaches the oldest turn a transcript holds, while there are
|
|
1296
|
-
* older ones to fetch.
|
|
1297
|
-
*
|
|
1298
|
-
* **A report of where the reader is, not a request to be granted**, so it is not
|
|
1299
|
-
* cancelable: there is nothing for the transcript to do if nobody refuses, and
|
|
1300
|
-
* nothing to stop if somebody does. The consumer answers by fetching, and says
|
|
1301
|
-
* so through the transcript's `history` while the older turns are on their way.
|
|
1302
|
-
*
|
|
1303
|
-
* No detail. The consumer holds the transcript and knows its oldest turn, which
|
|
1304
|
-
* is the one thing a fetch needs.
|
|
1305
|
-
*/
|
|
1306
|
-
export declare class HelixHistoryEvent extends CustomEvent<Record<string, never>> {
|
|
1307
|
-
static readonly eventName = "helix-history";
|
|
1308
|
-
constructor();
|
|
1309
|
-
}
|
|
1310
|
-
/**
|
|
1311
|
-
* Every event this file publishes, and the one place a new one is added.
|
|
15
|
+
* **One module per class, and this file gathers them.** Each class is in a
|
|
16
|
+
* file of its own beside this one, named after its event (`before-open.ts`
|
|
17
|
+
* holds `HelixBeforeOpenEvent`), and declares its name as `static readonly
|
|
18
|
+
* eventName`, which is how `helix component audit` finds them. What they carry
|
|
19
|
+
* is in `details.ts`, types only. This file re-exports both, keeps the
|
|
20
|
+
* registry, and types `addEventListener`.
|
|
21
|
+
*
|
|
22
|
+
* **Apart because a bundle keeps a class it never uses.** The compiler writes
|
|
23
|
+
* `static readonly eventName` as a static block, and Bun and Rollup both treat
|
|
24
|
+
* one as a side effect, so a class in a shared module stayed in every bundle
|
|
25
|
+
* that imported anything from that module. With the eighty classes in one
|
|
26
|
+
* file, every element shipped all of them, a Badge too. A module whose exports
|
|
27
|
+
* nothing uses is dropped whole, since the package declares no side effects,
|
|
28
|
+
* so a family now ships the classes it dispatches and no others.
|
|
29
|
+
* `events.pure.spec.ts` holds every file to one class.
|
|
30
|
+
*/
|
|
31
|
+
import { HelixActionEvent } from './action.js';
|
|
32
|
+
import { HelixActivateEvent } from './activate.js';
|
|
33
|
+
import { HelixAuraFallbackEvent } from './aura-fallback.js';
|
|
34
|
+
import { HelixBeforeActivateEvent } from './before-activate.js';
|
|
35
|
+
import { HelixBeforeChangeEvent } from './before-change.js';
|
|
36
|
+
import { HelixBeforeCloseEvent } from './before-close.js';
|
|
37
|
+
import { HelixBeforeCollapseEvent } from './before-collapse.js';
|
|
38
|
+
import { HelixBeforeEditEvent } from './before-edit.js';
|
|
39
|
+
import { HelixBeforeMoveEvent } from './before-move.js';
|
|
40
|
+
import { HelixBeforeOpenEvent } from './before-open.js';
|
|
41
|
+
import { HelixBeforePanelResizeEvent } from './before-panel-resize.js';
|
|
42
|
+
import { HelixBeforePinEvent } from './before-pin.js';
|
|
43
|
+
import { HelixBeforeReconnectEvent } from './before-reconnect.js';
|
|
44
|
+
import { HelixBeforeRelabelEvent } from './before-relabel.js';
|
|
45
|
+
import { HelixBeforeResizeEvent } from './before-resize.js';
|
|
46
|
+
import { HelixBeforeSplitEvent } from './before-split.js';
|
|
47
|
+
import { HelixBeforeToggleEvent } from './before-toggle.js';
|
|
48
|
+
import { HelixCanvasEditEvent } from './canvas-edit.js';
|
|
49
|
+
import { HelixCanvasPanEvent } from './canvas-pan.js';
|
|
50
|
+
import { HelixCanvasViewEvent } from './canvas-view.js';
|
|
51
|
+
import { HelixCanvasZoomEvent } from './canvas-zoom.js';
|
|
52
|
+
import { HelixCaretEvent } from './caret.js';
|
|
53
|
+
import { HelixClearEvent } from './clear.js';
|
|
54
|
+
import { HelixCollapseEvent } from './collapse.js';
|
|
55
|
+
import { HelixCompleteEvent } from './complete.js';
|
|
56
|
+
import { HelixConnectEvent } from './connect.js';
|
|
57
|
+
import { HelixConsoleEvent } from './console.js';
|
|
58
|
+
import { HelixCopyEvent } from './copy.js';
|
|
59
|
+
import { HelixCopyErrorEvent } from './copy-error.js';
|
|
60
|
+
import { HelixCreateEvent } from './create.js';
|
|
61
|
+
import { HelixDismissEvent } from './dismiss.js';
|
|
62
|
+
import { HelixEditEvent } from './edit.js';
|
|
63
|
+
import { HelixEndEvent } from './end.js';
|
|
64
|
+
import { HelixExpandEvent } from './expand.js';
|
|
65
|
+
import { HelixFacetEvent } from './facet.js';
|
|
66
|
+
import { HelixFilterEvent } from './filter.js';
|
|
67
|
+
import { HelixFilteredEvent } from './filtered.js';
|
|
68
|
+
import { HelixGraphFilterEvent } from './graph-filter.js';
|
|
69
|
+
import { HelixGraphLayoutEvent } from './graph-layout.js';
|
|
70
|
+
import { HelixGraphPanEvent } from './graph-pan.js';
|
|
71
|
+
import { HelixGraphPartChangeEvent } from './graph-part-change.js';
|
|
72
|
+
import { HelixGraphReadyEvent } from './graph-ready.js';
|
|
73
|
+
import { HelixGraphSignalEvent } from './graph-signal.js';
|
|
74
|
+
import { HelixGraphZoomEvent } from './graph-zoom.js';
|
|
75
|
+
import { HelixHistoryEvent } from './history.js';
|
|
76
|
+
import { HelixLoadEvent } from './load.js';
|
|
77
|
+
import { HelixLoadMoreEvent } from './load-more.js';
|
|
78
|
+
import { HelixMapClusterEvent } from './map-cluster.js';
|
|
79
|
+
import { HelixMapPanEvent } from './map-pan.js';
|
|
80
|
+
import { HelixMapPartChangeEvent } from './map-part-change.js';
|
|
81
|
+
import { HelixMapReadyEvent } from './map-ready.js';
|
|
82
|
+
import { HelixMapRotateEvent } from './map-rotate.js';
|
|
83
|
+
import { HelixMapTiltEvent } from './map-tilt.js';
|
|
84
|
+
import { HelixMapZoomEvent } from './map-zoom.js';
|
|
85
|
+
import { HelixMoveEvent } from './move.js';
|
|
86
|
+
import { HelixNavigateEvent } from './navigate.js';
|
|
87
|
+
import { HelixNextEvent } from './next.js';
|
|
88
|
+
import { HelixPanelResizeEvent } from './panel-resize.js';
|
|
89
|
+
import { HelixPinEvent } from './pin.js';
|
|
90
|
+
import { HelixPressEvent } from './press.js';
|
|
91
|
+
import { HelixPreviewEvent } from './preview.js';
|
|
92
|
+
import { HelixPreviousEvent } from './previous.js';
|
|
93
|
+
import { HelixRangeChangeEvent } from './range-change.js';
|
|
94
|
+
import { HelixReadEvent } from './read.js';
|
|
95
|
+
import { HelixReconnectEvent } from './reconnect.js';
|
|
96
|
+
import { HelixRejectEvent } from './reject.js';
|
|
97
|
+
import { HelixRelabelEvent } from './relabel.js';
|
|
98
|
+
import { HelixRemoveEvent } from './remove.js';
|
|
99
|
+
import { HelixReorderEvent } from './reorder.js';
|
|
100
|
+
import { HelixReorderedEvent } from './reordered.js';
|
|
101
|
+
import { HelixResizeEvent } from './resize.js';
|
|
102
|
+
import { HelixResizedEvent } from './resized.js';
|
|
103
|
+
import { HelixSampleEndEvent } from './sample-end.js';
|
|
104
|
+
import { HelixSampleStartEvent } from './sample-start.js';
|
|
105
|
+
import { HelixScrolledEvent } from './scrolled.js';
|
|
106
|
+
import { HelixSelectEvent } from './select.js';
|
|
107
|
+
import { HelixSelectedEvent } from './selected.js';
|
|
108
|
+
import { HelixSendEvent } from './send.js';
|
|
109
|
+
import { HelixShortcutEvent } from './shortcut.js';
|
|
110
|
+
import { HelixSortEvent } from './sort.js';
|
|
111
|
+
import { HelixSortedEvent } from './sorted.js';
|
|
112
|
+
import { HelixSplitEvent } from './split.js';
|
|
113
|
+
import { HelixToggleEvent } from './toggle.js';
|
|
114
|
+
import { HelixTourAskEvent } from './tour-ask.js';
|
|
115
|
+
import { HelixTourStatusEvent } from './tour-status.js';
|
|
116
|
+
import { HelixTypingEvent } from './typing.js';
|
|
117
|
+
export type { ActivateDetail, AuraFallbackDetail, CanvasView, CaretDetail, ChangeDetail, CompleteDetail, ConnectDetail, ConsoleDetail, CopyDetail, CreateDetail, DismissDetail, FacetDetail, FilterDetail, GraphFilterDetail, GraphLayoutDetail, GraphPartChangeDetail, GraphSignalDetail, MapClusterDetail, MapPanDetail, MapPartChangeDetail, MapRotateDetail, MapTiltDetail, MapZoomDetail, MoveDetail, NavigateDetail, OpenDetail, PressDetail, PressPointerType, RangeDetail, ReadDetail, ReconnectDetail, Refusal, RefusedFile, RejectDetail, RelabelDetail, RemoveDetail, ResizeDetail, ScrolledDetail, SelectDetail, SendDetail, ShortcutDetail, SkipDetail, SortDetail, ToggleDetail, TourAskDetail, TourStatusDetail, TypingDetail, ViewportPanDetail, ViewportZoomDetail, } from './details.js';
|
|
118
|
+
export { helixEventNames } from './names.js';
|
|
119
|
+
export { HelixActionEvent, HelixActivateEvent, HelixAuraFallbackEvent, HelixBeforeActivateEvent, HelixBeforeChangeEvent, HelixBeforeCloseEvent, HelixBeforeCollapseEvent, HelixBeforeEditEvent, HelixBeforeMoveEvent, HelixBeforeOpenEvent, HelixBeforePanelResizeEvent, HelixBeforePinEvent, HelixBeforeReconnectEvent, HelixBeforeRelabelEvent, HelixBeforeResizeEvent, HelixBeforeSplitEvent, HelixBeforeToggleEvent, HelixCanvasEditEvent, HelixCanvasPanEvent, HelixCanvasViewEvent, HelixCanvasZoomEvent, HelixCaretEvent, HelixClearEvent, HelixCollapseEvent, HelixCompleteEvent, HelixConnectEvent, HelixConsoleEvent, HelixCopyErrorEvent, HelixCopyEvent, HelixCreateEvent, HelixDismissEvent, HelixEditEvent, HelixEndEvent, HelixExpandEvent, HelixFacetEvent, HelixFilterEvent, HelixFilteredEvent, HelixGraphFilterEvent, HelixGraphLayoutEvent, HelixGraphPanEvent, HelixGraphPartChangeEvent, HelixGraphReadyEvent, HelixGraphSignalEvent, HelixGraphZoomEvent, HelixHistoryEvent, HelixLoadEvent, HelixLoadMoreEvent, HelixMapClusterEvent, HelixMapPanEvent, HelixMapPartChangeEvent, HelixMapReadyEvent, HelixMapRotateEvent, HelixMapTiltEvent, HelixMapZoomEvent, HelixMoveEvent, HelixNavigateEvent, HelixNextEvent, HelixPanelResizeEvent, HelixPinEvent, HelixPressEvent, HelixPreviewEvent, HelixPreviousEvent, HelixRangeChangeEvent, HelixReadEvent, HelixReconnectEvent, HelixRejectEvent, HelixRelabelEvent, HelixRemoveEvent, HelixReorderEvent, HelixReorderedEvent, HelixResizedEvent, HelixResizeEvent, HelixSampleEndEvent, HelixSampleStartEvent, HelixScrolledEvent, HelixSelectEvent, HelixSelectedEvent, HelixSendEvent, HelixShortcutEvent, HelixSortEvent, HelixSortedEvent, HelixSplitEvent, HelixToggleEvent, HelixTourAskEvent, HelixTourStatusEvent, HelixTypingEvent, };
|
|
120
|
+
/**
|
|
121
|
+
* Every event class, and the one place a new one is registered: a class in a
|
|
122
|
+
* module of its own, imported above, and named here and in `names.ts`.
|
|
1312
123
|
*
|
|
1313
124
|
* The map below is derived from this rather than written beside it, so a class
|
|
1314
125
|
* that is in here is typed and one that is not is absent from both halves at
|
|
@@ -1319,7 +130,9 @@ export declare class HelixHistoryEvent extends CustomEvent<Record<string, never>
|
|
|
1319
130
|
* forgotten.
|
|
1320
131
|
*/
|
|
1321
132
|
declare const registry: {
|
|
133
|
+
readonly HelixActionEvent: typeof HelixActionEvent;
|
|
1322
134
|
readonly HelixActivateEvent: typeof HelixActivateEvent;
|
|
135
|
+
readonly HelixAuraFallbackEvent: typeof HelixAuraFallbackEvent;
|
|
1323
136
|
readonly HelixBeforeActivateEvent: typeof HelixBeforeActivateEvent;
|
|
1324
137
|
readonly HelixBeforeChangeEvent: typeof HelixBeforeChangeEvent;
|
|
1325
138
|
readonly HelixBeforeCloseEvent: typeof HelixBeforeCloseEvent;
|
|
@@ -1339,13 +152,18 @@ declare const registry: {
|
|
|
1339
152
|
readonly HelixCanvasViewEvent: typeof HelixCanvasViewEvent;
|
|
1340
153
|
readonly HelixCanvasZoomEvent: typeof HelixCanvasZoomEvent;
|
|
1341
154
|
readonly HelixCaretEvent: typeof HelixCaretEvent;
|
|
155
|
+
readonly HelixClearEvent: typeof HelixClearEvent;
|
|
1342
156
|
readonly HelixCollapseEvent: typeof HelixCollapseEvent;
|
|
1343
157
|
readonly HelixCompleteEvent: typeof HelixCompleteEvent;
|
|
1344
158
|
readonly HelixConnectEvent: typeof HelixConnectEvent;
|
|
1345
159
|
readonly HelixConsoleEvent: typeof HelixConsoleEvent;
|
|
160
|
+
readonly HelixCopyErrorEvent: typeof HelixCopyErrorEvent;
|
|
1346
161
|
readonly HelixCopyEvent: typeof HelixCopyEvent;
|
|
1347
162
|
readonly HelixCreateEvent: typeof HelixCreateEvent;
|
|
1348
163
|
readonly HelixDismissEvent: typeof HelixDismissEvent;
|
|
164
|
+
readonly HelixEditEvent: typeof HelixEditEvent;
|
|
165
|
+
readonly HelixEndEvent: typeof HelixEndEvent;
|
|
166
|
+
readonly HelixExpandEvent: typeof HelixExpandEvent;
|
|
1349
167
|
readonly HelixFacetEvent: typeof HelixFacetEvent;
|
|
1350
168
|
readonly HelixFilterEvent: typeof HelixFilterEvent;
|
|
1351
169
|
readonly HelixFilteredEvent: typeof HelixFilteredEvent;
|
|
@@ -1357,6 +175,8 @@ declare const registry: {
|
|
|
1357
175
|
readonly HelixGraphSignalEvent: typeof HelixGraphSignalEvent;
|
|
1358
176
|
readonly HelixGraphZoomEvent: typeof HelixGraphZoomEvent;
|
|
1359
177
|
readonly HelixHistoryEvent: typeof HelixHistoryEvent;
|
|
178
|
+
readonly HelixLoadEvent: typeof HelixLoadEvent;
|
|
179
|
+
readonly HelixLoadMoreEvent: typeof HelixLoadMoreEvent;
|
|
1360
180
|
readonly HelixMapClusterEvent: typeof HelixMapClusterEvent;
|
|
1361
181
|
readonly HelixMapPanEvent: typeof HelixMapPanEvent;
|
|
1362
182
|
readonly HelixMapPartChangeEvent: typeof HelixMapPartChangeEvent;
|
|
@@ -1367,8 +187,12 @@ declare const registry: {
|
|
|
1367
187
|
readonly HelixMoveEvent: typeof HelixMoveEvent;
|
|
1368
188
|
readonly HelixNavigateEvent: typeof HelixNavigateEvent;
|
|
1369
189
|
readonly HelixNextEvent: typeof HelixNextEvent;
|
|
190
|
+
readonly HelixPanelResizeEvent: typeof HelixPanelResizeEvent;
|
|
1370
191
|
readonly HelixPinEvent: typeof HelixPinEvent;
|
|
192
|
+
readonly HelixPressEvent: typeof HelixPressEvent;
|
|
193
|
+
readonly HelixPreviewEvent: typeof HelixPreviewEvent;
|
|
1371
194
|
readonly HelixPreviousEvent: typeof HelixPreviousEvent;
|
|
195
|
+
readonly HelixRangeChangeEvent: typeof HelixRangeChangeEvent;
|
|
1372
196
|
readonly HelixReadEvent: typeof HelixReadEvent;
|
|
1373
197
|
readonly HelixReconnectEvent: typeof HelixReconnectEvent;
|
|
1374
198
|
readonly HelixRejectEvent: typeof HelixRejectEvent;
|
|
@@ -1387,16 +211,12 @@ declare const registry: {
|
|
|
1387
211
|
readonly HelixShortcutEvent: typeof HelixShortcutEvent;
|
|
1388
212
|
readonly HelixSortEvent: typeof HelixSortEvent;
|
|
1389
213
|
readonly HelixSortedEvent: typeof HelixSortedEvent;
|
|
214
|
+
readonly HelixSplitEvent: typeof HelixSplitEvent;
|
|
215
|
+
readonly HelixToggleEvent: typeof HelixToggleEvent;
|
|
1390
216
|
readonly HelixTourAskEvent: typeof HelixTourAskEvent;
|
|
217
|
+
readonly HelixTourStatusEvent: typeof HelixTourStatusEvent;
|
|
218
|
+
readonly HelixTypingEvent: typeof HelixTypingEvent;
|
|
1391
219
|
};
|
|
1392
|
-
/**
|
|
1393
|
-
* Every name this library dispatches.
|
|
1394
|
-
*
|
|
1395
|
-
* Exported so a runtime check can ask whether a name is one of ours without
|
|
1396
|
-
* keeping a second list of them. `HelixElement` uses it to tell a consumer that
|
|
1397
|
-
* the handler prop they wrote is attached to nothing.
|
|
1398
|
-
*/
|
|
1399
|
-
export declare const helixEventNames: ReadonlySet<string>;
|
|
1400
220
|
type Registry = typeof registry;
|
|
1401
221
|
/**
|
|
1402
222
|
* The registry keyed by what each class dispatches as.
|
|
@@ -1413,4 +233,3 @@ declare global {
|
|
|
1413
233
|
interface HTMLElementEventMap extends HelixEventMap {
|
|
1414
234
|
}
|
|
1415
235
|
}
|
|
1416
|
-
export {};
|