@fusion.dev/helix-core 0.104.0 → 0.105.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 +256 -164
- package/dist/controllers/floating-controller/floating-controller.d.ts +3 -3
- package/dist/events/events.d.ts +50 -0
- package/dist/events/events.js +24 -0
- package/dist/helix-element/helix-element.d.ts +3 -2
- package/dist/helix-form-element/helix-form-element.d.ts +7 -6
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/mixins/mixin-chart-source/mixin-chart-source.d.ts +11 -10
- package/dist/mixins/mixin-collection/mixin-collection.d.ts +5 -3
- package/dist/mixins/mixin-controller-active/mixin-controller-active.d.ts +6 -3
- package/dist/mixins/mixin-controller-checked/mixin-controller-checked.d.ts +4 -2
- package/dist/mixins/mixin-controller-open/mixin-controller-open.d.ts +3 -2
- package/dist/mixins/mixin-controller-value/mixin-controller-value.d.ts +4 -4
- package/dist/mixins/mixin-dismissible/mixin-dismissible.d.ts +3 -3
- package/dist/mixins/mixin-field/mixin-field.d.ts +8 -6
- package/dist/mixins/mixin-picker-editing/mixin-picker-editing.d.ts +5 -2
- package/dist/mixins/mixin-picker-field/mixin-picker-field.d.ts +2 -2
- package/dist/mixins/mixin-selectable-item/mixin-selectable-item.d.ts +9 -5
- package/dist/mixins/mixin-tokens/mixin-tokens.d.ts +4 -3
- package/dist/mixins/mixin-viewport/mixin-viewport.d.ts +14 -14
- package/package.json +4 -4
|
@@ -123,9 +123,9 @@ export interface FloatingOptions {
|
|
|
123
123
|
* package and none of them is private. the `hooks` rule pairs a documented
|
|
124
124
|
* hook with a rule that reads one, in both directions.
|
|
125
125
|
*
|
|
126
|
-
* @cssproperty --floating-anchor-inline-size -
|
|
127
|
-
* @cssproperty --floating-arrow-x - Where the
|
|
128
|
-
* @cssproperty --floating-arrow-y - Where the
|
|
126
|
+
* @cssproperty --floating-anchor-inline-size - The anchor's width, for a panel that matches it.
|
|
127
|
+
* @cssproperty --floating-arrow-x - Where the arrow meets the anchor, from the panel's left edge in both text directions.
|
|
128
|
+
* @cssproperty --floating-arrow-y - Where the arrow meets the anchor, from the panel's top edge.
|
|
129
129
|
* @cssproperty --floating-available-block-size - How much room is left below, for a panel that scrolls.
|
|
130
130
|
*/
|
|
131
131
|
export declare class FloatingController implements ReactiveController {
|
package/dist/events/events.d.ts
CHANGED
|
@@ -558,6 +558,54 @@ export declare class HelixMapZoomEvent extends CustomEvent<ViewportZoomDetail> {
|
|
|
558
558
|
static readonly eventName = "helix-map-zoom";
|
|
559
559
|
constructor(detail: MapZoomDetail);
|
|
560
560
|
}
|
|
561
|
+
/** What changed on a part of a map: a line or a shape, or something standing on a place. */
|
|
562
|
+
export interface MapPartChangeDetail {
|
|
563
|
+
/**
|
|
564
|
+
* `layer` for a route or an area, which is redrawn; `place` for a marker or
|
|
565
|
+
* a position, which is moved; `cluster` for a marker gathered into another
|
|
566
|
+
* or let go, which moves the frame's tab stop.
|
|
567
|
+
*/
|
|
568
|
+
kind: 'cluster' | 'layer' | 'place';
|
|
569
|
+
}
|
|
570
|
+
/**
|
|
571
|
+
* A marker, a position, a route or an area changed what it says: where it is,
|
|
572
|
+
* its points, its progress, its name.
|
|
573
|
+
*
|
|
574
|
+
* **Said rather than reflected.** The connector and the frame follow the
|
|
575
|
+
* parts, and heard them through their attributes until the parts reflected
|
|
576
|
+
* nothing CSS selects on: a live position's coordinates are state, and a
|
|
577
|
+
* route's points are a payload, neither of which belongs in the markup. It
|
|
578
|
+
* bubbles to the frame, whose light-DOM children the parts are, and goes no
|
|
579
|
+
* further, being the family's own bookkeeping rather than news for a page.
|
|
580
|
+
*/
|
|
581
|
+
export declare class HelixMapPartChangeEvent extends CustomEvent<MapPartChangeDetail> {
|
|
582
|
+
static readonly eventName = "helix-map-part-change";
|
|
583
|
+
constructor(detail: MapPartChangeDetail);
|
|
584
|
+
}
|
|
585
|
+
/** What a cluster a reader pressed holds. */
|
|
586
|
+
export interface MapClusterDetail {
|
|
587
|
+
/**
|
|
588
|
+
* A points layer's count, as the connector keyed it, where the cluster is
|
|
589
|
+
* one the renderer drew rather than one of markers.
|
|
590
|
+
*/
|
|
591
|
+
key?: string | undefined;
|
|
592
|
+
/** The names of the places it stands for, the one it is drawn as first, where they are known. */
|
|
593
|
+
labels: string[];
|
|
594
|
+
}
|
|
595
|
+
/**
|
|
596
|
+
* A reader pressed a cluster, one marker standing for several that would have
|
|
597
|
+
* drawn over each other.
|
|
598
|
+
*
|
|
599
|
+
* **Opened by zooming in**, which the connector does, framing the places the
|
|
600
|
+
* cluster holds, as pressing one does on every map a reader has used. Told
|
|
601
|
+
* rather than asked: a page that lists them in a panel instead connects with
|
|
602
|
+
* `clusterZoom: false`. Sent from the marker the cluster is drawn as, and
|
|
603
|
+
* bubbles through the frame to the page.
|
|
604
|
+
*/
|
|
605
|
+
export declare class HelixMapClusterEvent extends CustomEvent<MapClusterDetail> {
|
|
606
|
+
static readonly eventName = "helix-map-cluster";
|
|
607
|
+
constructor(detail: MapClusterDetail);
|
|
608
|
+
}
|
|
561
609
|
/** A message is about to be pinned or unpinned, and can be refused. */
|
|
562
610
|
export declare class HelixBeforePinEvent extends CustomEvent<ChangeDetail> {
|
|
563
611
|
static readonly eventName = "helix-before-pin";
|
|
@@ -1036,7 +1084,9 @@ declare const registry: {
|
|
|
1036
1084
|
readonly HelixFacetEvent: typeof HelixFacetEvent;
|
|
1037
1085
|
readonly HelixFilterEvent: typeof HelixFilterEvent;
|
|
1038
1086
|
readonly HelixHistoryEvent: typeof HelixHistoryEvent;
|
|
1087
|
+
readonly HelixMapClusterEvent: typeof HelixMapClusterEvent;
|
|
1039
1088
|
readonly HelixMapPanEvent: typeof HelixMapPanEvent;
|
|
1089
|
+
readonly HelixMapPartChangeEvent: typeof HelixMapPartChangeEvent;
|
|
1040
1090
|
readonly HelixMapZoomEvent: typeof HelixMapZoomEvent;
|
|
1041
1091
|
readonly HelixMoveEvent: typeof HelixMoveEvent;
|
|
1042
1092
|
readonly HelixNavigateEvent: typeof HelixNavigateEvent;
|
package/dist/events/events.js
CHANGED
|
@@ -252,6 +252,28 @@ export class HelixMapZoomEvent extends CustomEvent {
|
|
|
252
252
|
});
|
|
253
253
|
}
|
|
254
254
|
}
|
|
255
|
+
export class HelixMapPartChangeEvent extends CustomEvent {
|
|
256
|
+
static { this.eventName = 'helix-map-part-change'; }
|
|
257
|
+
constructor(detail) {
|
|
258
|
+
super(HelixMapPartChangeEvent.eventName, {
|
|
259
|
+
bubbles: true,
|
|
260
|
+
cancelable: false,
|
|
261
|
+
composed: false,
|
|
262
|
+
detail,
|
|
263
|
+
});
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
export class HelixMapClusterEvent extends CustomEvent {
|
|
267
|
+
static { this.eventName = 'helix-map-cluster'; }
|
|
268
|
+
constructor(detail) {
|
|
269
|
+
super(HelixMapClusterEvent.eventName, {
|
|
270
|
+
bubbles: true,
|
|
271
|
+
cancelable: false,
|
|
272
|
+
composed: false,
|
|
273
|
+
detail,
|
|
274
|
+
});
|
|
275
|
+
}
|
|
276
|
+
}
|
|
255
277
|
export class HelixBeforePinEvent extends CustomEvent {
|
|
256
278
|
static { this.eventName = 'helix-before-pin'; }
|
|
257
279
|
constructor(detail) {
|
|
@@ -556,7 +578,9 @@ const registry = {
|
|
|
556
578
|
HelixFacetEvent,
|
|
557
579
|
HelixFilterEvent,
|
|
558
580
|
HelixHistoryEvent,
|
|
581
|
+
HelixMapClusterEvent,
|
|
559
582
|
HelixMapPanEvent,
|
|
583
|
+
HelixMapPartChangeEvent,
|
|
560
584
|
HelixMapZoomEvent,
|
|
561
585
|
HelixMoveEvent,
|
|
562
586
|
HelixNavigateEvent,
|
|
@@ -17,7 +17,7 @@ import { type StaticValue } from 'lit/static-html.js';
|
|
|
17
17
|
* @status experimental
|
|
18
18
|
* @documentation https://fusion.dev/helix/docs/tiers
|
|
19
19
|
*
|
|
20
|
-
* @cssstate settled - Set
|
|
20
|
+
* @cssstate settled - Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
|
|
21
21
|
*/
|
|
22
22
|
export declare class HelixElement extends LitElement {
|
|
23
23
|
/**
|
|
@@ -213,7 +213,8 @@ export declare class HelixElement extends LitElement {
|
|
|
213
213
|
*/
|
|
214
214
|
protected route(child: Element, name: string | undefined): void;
|
|
215
215
|
/**
|
|
216
|
-
*
|
|
216
|
+
* Dispatches an event, after binding the React handler for it, if there is
|
|
217
|
+
* one.
|
|
217
218
|
*
|
|
218
219
|
* Every event this library sends passes through here, the concrete classes in
|
|
219
220
|
* `events.ts` and the relayed native ones alike, and `requestChange`
|
|
@@ -24,7 +24,7 @@ export declare class HelixFormElement extends HelixElement {
|
|
|
24
24
|
/** Opts the element into form ownership, labels, and submission. */
|
|
25
25
|
static readonly formAssociated = true;
|
|
26
26
|
/**
|
|
27
|
-
* Whether the control is
|
|
27
|
+
* Whether the control is disabled and cannot be used.
|
|
28
28
|
*
|
|
29
29
|
* Reflected, because the styled tier selects on it, and mirrored to
|
|
30
30
|
* `aria-disabled` rather than removing the element from the accessibility
|
|
@@ -76,7 +76,7 @@ export declare class HelixFormElement extends HelixElement {
|
|
|
76
76
|
*/
|
|
77
77
|
get isDisabled(): boolean;
|
|
78
78
|
/**
|
|
79
|
-
*
|
|
79
|
+
* Called by the browser when an ancestor fieldset is disabled or enabled.
|
|
80
80
|
*
|
|
81
81
|
* **The argument is the effective state, and taking it whole is what latched
|
|
82
82
|
* every control in the library.** The platform calls this for the element's
|
|
@@ -112,7 +112,8 @@ export declare class HelixFormElement extends HelixElement {
|
|
|
112
112
|
*/
|
|
113
113
|
formDisabledCallback(disabled: boolean): void;
|
|
114
114
|
/**
|
|
115
|
-
*
|
|
115
|
+
* Called by the browser when the form is reset. It does nothing here, and
|
|
116
|
+
* every override calls it.
|
|
116
117
|
*
|
|
117
118
|
* **A chain rather than a leaf**, because more than one layer owes a reset
|
|
118
119
|
* something: the value mixin its default, and the field mixin beneath it the
|
|
@@ -141,7 +142,7 @@ export declare class HelixFormElement extends HelixElement {
|
|
|
141
142
|
*/
|
|
142
143
|
protected announceChange(): void;
|
|
143
144
|
/**
|
|
144
|
-
*
|
|
145
|
+
* The name the control's value is submitted under.
|
|
145
146
|
*
|
|
146
147
|
* **Reflected, and it is the exception to "reflect only what CSS selects
|
|
147
148
|
* on".** The platform builds a form's entry list from the `name` *content
|
|
@@ -160,13 +161,13 @@ export declare class HelixFormElement extends HelixElement {
|
|
|
160
161
|
*/
|
|
161
162
|
name: string;
|
|
162
163
|
/**
|
|
163
|
-
* The form
|
|
164
|
+
* The form the control belongs to, or `null`.
|
|
164
165
|
*
|
|
165
166
|
* @reference https://html.spec.whatwg.org/multipage/custom-elements.html#form-associated-custom-elements form-associated custom elements
|
|
166
167
|
*/
|
|
167
168
|
get form(): HTMLFormElement | null;
|
|
168
169
|
/**
|
|
169
|
-
*
|
|
170
|
+
* The labels associated with the control.
|
|
170
171
|
*
|
|
171
172
|
* @reference https://html.spec.whatwg.org/multipage/custom-elements.html#form-associated-custom-elements form-associated custom elements
|
|
172
173
|
*/
|
package/dist/index.d.ts
CHANGED
|
@@ -20,7 +20,7 @@ export { SourceController, type SourceHost, } from './controllers/source-control
|
|
|
20
20
|
export { type TokenColor, TokenColorController, } from './controllers/token-color-controller/token-color-controller.js';
|
|
21
21
|
export { type Rendered, VirtualizeController, type VirtualizeOptions, type Window as VirtualizeWindow, } from './controllers/virtualize-controller/virtualize-controller.js';
|
|
22
22
|
export { eventsForTag, registerElementEvents } from './events/element-events.js';
|
|
23
|
-
export { type CanvasView, type CaretDetail, type ChangeDetail, type CompleteDetail, type ConnectDetail, type ConsoleDetail, type CopyDetail, type CreateDetail, type DismissDetail, type FacetDetail, type FilterDetail, HelixActivateEvent, HelixBeforeActivateEvent, HelixBeforeChangeEvent, HelixBeforeCloseEvent, HelixBeforeCollapseEvent, HelixBeforeEditEvent, HelixBeforeMoveEvent, HelixBeforeOpenEvent, HelixBeforePanelResizeEvent, HelixBeforePinEvent, HelixBeforeReconnectEvent, HelixBeforeRelabelEvent, HelixBeforeResizeEvent, HelixBeforeSplitEvent, HelixBeforeToggleEvent, HelixCanvasEditEvent, HelixCanvasPanEvent, HelixCanvasViewEvent, HelixCanvasZoomEvent, HelixCaretEvent, HelixCompleteEvent, HelixConnectEvent, HelixConsoleEvent, HelixCopyEvent, HelixCreateEvent, HelixDismissEvent, HelixFacetEvent, HelixFilterEvent, HelixHistoryEvent, HelixMapPanEvent, HelixMapZoomEvent, HelixMoveEvent, HelixNavigateEvent, HelixNextEvent, HelixPreviousEvent, HelixReadEvent, HelixReconnectEvent, HelixRelabelEvent, HelixRemoveEvent, HelixReorderEvent, HelixResizeEvent, HelixSampleEndEvent, HelixSampleStartEvent, HelixScrolledEvent, HelixSelectEvent, HelixSendEvent, HelixShortcutEvent, HelixSortEvent, HelixTourAskEvent, type MapPanDetail, type MapZoomDetail, type MoveDetail, type NavigateDetail, type OpenDetail, type ReadDetail, type ReconnectDetail, type RelabelDetail, type RemoveDetail, type ResizeDetail, type ScrolledDetail, type SelectDetail, type SendDetail, type ShortcutDetail, type SkipDetail, type SortDetail, type ToggleDetail, type ViewportPanDetail, type ViewportZoomDetail, } from './events/events.js';
|
|
23
|
+
export { type CanvasView, type CaretDetail, type ChangeDetail, type CompleteDetail, type ConnectDetail, type ConsoleDetail, type CopyDetail, type CreateDetail, type DismissDetail, type FacetDetail, type FilterDetail, HelixActivateEvent, HelixBeforeActivateEvent, HelixBeforeChangeEvent, HelixBeforeCloseEvent, HelixBeforeCollapseEvent, HelixBeforeEditEvent, HelixBeforeMoveEvent, HelixBeforeOpenEvent, HelixBeforePanelResizeEvent, HelixBeforePinEvent, HelixBeforeReconnectEvent, HelixBeforeRelabelEvent, HelixBeforeResizeEvent, HelixBeforeSplitEvent, HelixBeforeToggleEvent, HelixCanvasEditEvent, HelixCanvasPanEvent, HelixCanvasViewEvent, HelixCanvasZoomEvent, HelixCaretEvent, HelixCompleteEvent, HelixConnectEvent, HelixConsoleEvent, HelixCopyEvent, HelixCreateEvent, HelixDismissEvent, HelixFacetEvent, HelixFilterEvent, HelixHistoryEvent, HelixMapClusterEvent, HelixMapPanEvent, HelixMapPartChangeEvent, HelixMapZoomEvent, HelixMoveEvent, HelixNavigateEvent, HelixNextEvent, HelixPreviousEvent, HelixReadEvent, HelixReconnectEvent, HelixRelabelEvent, HelixRemoveEvent, HelixReorderEvent, HelixResizeEvent, HelixSampleEndEvent, HelixSampleStartEvent, HelixScrolledEvent, HelixSelectEvent, HelixSendEvent, HelixShortcutEvent, HelixSortEvent, HelixTourAskEvent, type MapClusterDetail, type MapPanDetail, type MapPartChangeDetail, type MapZoomDetail, type MoveDetail, type NavigateDetail, type OpenDetail, type ReadDetail, type ReconnectDetail, type RelabelDetail, type RemoveDetail, type ResizeDetail, type ScrolledDetail, type SelectDetail, type SendDetail, type ShortcutDetail, type SkipDetail, type SortDetail, type ToggleDetail, type ViewportPanDetail, type ViewportZoomDetail, } from './events/events.js';
|
|
24
24
|
export { HelixElement, whenHydrated } from './helix-element/helix-element.js';
|
|
25
25
|
export { HelixFormElement } from './helix-form-element/helix-form-element.js';
|
|
26
26
|
export { MixinChartSource, type MixinChartSourceInterface, PALETTE, PLOT_HEIGHT, PLOT_WIDTH, seriesIndex, seriesNames, } from './mixins/mixin-chart-source/mixin-chart-source.js';
|
package/dist/index.js
CHANGED
|
@@ -20,7 +20,7 @@ export { SourceController, } from './controllers/source-controller/source-contro
|
|
|
20
20
|
export { TokenColorController, } from './controllers/token-color-controller/token-color-controller.js';
|
|
21
21
|
export { VirtualizeController, } from './controllers/virtualize-controller/virtualize-controller.js';
|
|
22
22
|
export { eventsForTag, registerElementEvents } from './events/element-events.js';
|
|
23
|
-
export { HelixActivateEvent, HelixBeforeActivateEvent, HelixBeforeChangeEvent, HelixBeforeCloseEvent, HelixBeforeCollapseEvent, HelixBeforeEditEvent, HelixBeforeMoveEvent, HelixBeforeOpenEvent, HelixBeforePanelResizeEvent, HelixBeforePinEvent, HelixBeforeReconnectEvent, HelixBeforeRelabelEvent, HelixBeforeResizeEvent, HelixBeforeSplitEvent, HelixBeforeToggleEvent, HelixCanvasEditEvent, HelixCanvasPanEvent, HelixCanvasViewEvent, HelixCanvasZoomEvent, HelixCaretEvent, HelixCompleteEvent, HelixConnectEvent, HelixConsoleEvent, HelixCopyEvent, HelixCreateEvent, HelixDismissEvent, HelixFacetEvent, HelixFilterEvent, HelixHistoryEvent, HelixMapPanEvent, HelixMapZoomEvent, HelixMoveEvent, HelixNavigateEvent, HelixNextEvent, HelixPreviousEvent, HelixReadEvent, HelixReconnectEvent, HelixRelabelEvent, HelixRemoveEvent, HelixReorderEvent, HelixResizeEvent, HelixSampleEndEvent, HelixSampleStartEvent, HelixScrolledEvent, HelixSelectEvent, HelixSendEvent, HelixShortcutEvent, HelixSortEvent, HelixTourAskEvent, } from './events/events.js';
|
|
23
|
+
export { HelixActivateEvent, HelixBeforeActivateEvent, HelixBeforeChangeEvent, HelixBeforeCloseEvent, HelixBeforeCollapseEvent, HelixBeforeEditEvent, HelixBeforeMoveEvent, HelixBeforeOpenEvent, HelixBeforePanelResizeEvent, HelixBeforePinEvent, HelixBeforeReconnectEvent, HelixBeforeRelabelEvent, HelixBeforeResizeEvent, HelixBeforeSplitEvent, HelixBeforeToggleEvent, HelixCanvasEditEvent, HelixCanvasPanEvent, HelixCanvasViewEvent, HelixCanvasZoomEvent, HelixCaretEvent, HelixCompleteEvent, HelixConnectEvent, HelixConsoleEvent, HelixCopyEvent, HelixCreateEvent, HelixDismissEvent, HelixFacetEvent, HelixFilterEvent, HelixHistoryEvent, HelixMapClusterEvent, HelixMapPanEvent, HelixMapPartChangeEvent, HelixMapZoomEvent, HelixMoveEvent, HelixNavigateEvent, HelixNextEvent, HelixPreviousEvent, HelixReadEvent, HelixReconnectEvent, HelixRelabelEvent, HelixRemoveEvent, HelixReorderEvent, HelixResizeEvent, HelixSampleEndEvent, HelixSampleStartEvent, HelixScrolledEvent, HelixSelectEvent, HelixSendEvent, HelixShortcutEvent, HelixSortEvent, HelixTourAskEvent, } from './events/events.js';
|
|
24
24
|
export { HelixElement, whenHydrated } from './helix-element/helix-element.js';
|
|
25
25
|
export { HelixFormElement } from './helix-form-element/helix-form-element.js';
|
|
26
26
|
export { MixinChartSource, PALETTE, PLOT_HEIGHT, PLOT_WIDTH, seriesIndex, seriesNames, } from './mixins/mixin-chart-source/mixin-chart-source.js';
|
|
@@ -83,7 +83,7 @@ export declare const seriesNames: (list: string | undefined) => string[];
|
|
|
83
83
|
* styled tier, and a consumer on `headless` sets the same names to whatever
|
|
84
84
|
* they like. The headless examples set them to a ramp of grays.
|
|
85
85
|
*
|
|
86
|
-
* @cssproperty --chart-series - The color of the mark
|
|
86
|
+
* @cssproperty --chart-series - The color of the mark it is set on. The component sets it, and the stylesheet reads it.
|
|
87
87
|
* @cssproperty --chart-series-1 - The color of series 1. The styled tier points it at a palette token.
|
|
88
88
|
* @cssproperty --chart-series-2 - The color of series 2. The styled tier points it at a palette token.
|
|
89
89
|
* @cssproperty --chart-series-3 - The color of series 3. The styled tier points it at a palette token.
|
|
@@ -122,39 +122,40 @@ export declare class MixinChartSourceInterface {
|
|
|
122
122
|
*/
|
|
123
123
|
for: string;
|
|
124
124
|
/**
|
|
125
|
-
* The
|
|
125
|
+
* The chart's name, which starts the chart's text summary.
|
|
126
126
|
*
|
|
127
127
|
* Absent falls back to the table's own caption, which is usually the right
|
|
128
128
|
* words and is already written.
|
|
129
129
|
*/
|
|
130
130
|
label: string;
|
|
131
131
|
/**
|
|
132
|
-
* The columns
|
|
132
|
+
* The table's columns, one series each. Empty when there is no table.
|
|
133
133
|
*/
|
|
134
134
|
get series(): Series[];
|
|
135
135
|
/**
|
|
136
|
-
*
|
|
136
|
+
* The chart's name: `label` when it is set, and the table's caption
|
|
137
|
+
* otherwise.
|
|
137
138
|
*/
|
|
138
139
|
get named(): string;
|
|
139
140
|
/**
|
|
140
|
-
* Every row of the table, with each cell's text
|
|
141
|
+
* Every row of the table, with each cell's text and number.
|
|
141
142
|
*/
|
|
142
143
|
get sourceRows(): Row[];
|
|
143
144
|
/**
|
|
144
|
-
*
|
|
145
|
+
* The positions of the cells in a row that hold numbers, in table order.
|
|
145
146
|
*/
|
|
146
147
|
get plottedColumns(): number[];
|
|
147
148
|
/**
|
|
148
|
-
* The palette slot the cell at this
|
|
149
|
-
*
|
|
149
|
+
* The palette slot for the cell at this position in a row, or `undefined`
|
|
150
|
+
* when no series was read from that column.
|
|
150
151
|
*/
|
|
151
152
|
seriesOf(cell: number): number | undefined;
|
|
152
153
|
/**
|
|
153
|
-
*
|
|
154
|
+
* The number of readings, which the pointer position maps onto.
|
|
154
155
|
*/
|
|
155
156
|
get readings(): number;
|
|
156
157
|
/**
|
|
157
|
-
*
|
|
158
|
+
* Finds the reading nearest the pointer, so the tooltip can sit on it.
|
|
158
159
|
*/
|
|
159
160
|
pointer: ChartPointerController;
|
|
160
161
|
}
|
|
@@ -5,11 +5,13 @@ type Constructor<T> = new (...args: any[]) => T;
|
|
|
5
5
|
* The API a collection has for the two states that are not its content.
|
|
6
6
|
*/
|
|
7
7
|
export declare class CollectionElement {
|
|
8
|
-
/** Whether the rows are still
|
|
8
|
+
/** Whether the rows are still loading. */
|
|
9
9
|
loading: boolean;
|
|
10
|
-
/**
|
|
10
|
+
/** The text shown and announced while the rows load. */
|
|
11
11
|
loadingText: string;
|
|
12
|
-
/**
|
|
12
|
+
/**
|
|
13
|
+
* The text shown and announced when there are no rows and none are loading.
|
|
14
|
+
*/
|
|
13
15
|
emptyText: string;
|
|
14
16
|
/**
|
|
15
17
|
* The status line, or nothing where the collection has content to show.
|
|
@@ -9,16 +9,19 @@ type Constructor<T> = new (...args: any[]) => T;
|
|
|
9
9
|
*/
|
|
10
10
|
export declare class MixinControllerActiveInterface {
|
|
11
11
|
/**
|
|
12
|
-
*
|
|
12
|
+
* The `value` of the current item.
|
|
13
13
|
*
|
|
14
14
|
* Reading gives the real one. Writing always applies, and is a seed and a
|
|
15
15
|
* correction rather than a claim of ownership: a consumer who wants the
|
|
16
16
|
* decision refuses the `helix-before-activate`.
|
|
17
17
|
*/
|
|
18
18
|
active: string;
|
|
19
|
-
/**
|
|
19
|
+
/**
|
|
20
|
+
* The `value` of the item declared current in markup. Ignored once `active`
|
|
21
|
+
* is written.
|
|
22
|
+
*/
|
|
20
23
|
defaultActive: string;
|
|
21
|
-
/** Requests a new current item, and
|
|
24
|
+
/** Requests a new current item, and returns whether the change was applied. */
|
|
22
25
|
requestActive(next: string): boolean;
|
|
23
26
|
/**
|
|
24
27
|
* Which item is current, given what there is to choose from.
|
|
@@ -16,10 +16,12 @@ export declare class MixinControllerCheckedInterface {
|
|
|
16
16
|
* decision refuses the `helix-before-toggle`.
|
|
17
17
|
*/
|
|
18
18
|
checked: boolean;
|
|
19
|
-
/**
|
|
19
|
+
/**
|
|
20
|
+
* Whether the control starts checked. A form reset returns it to this state.
|
|
21
|
+
*/
|
|
20
22
|
defaultChecked: boolean;
|
|
21
23
|
/**
|
|
22
|
-
* Requests a checked
|
|
24
|
+
* Requests a change to `checked`, and returns whether it was applied.
|
|
23
25
|
*
|
|
24
26
|
* Announces before it acts: a listener calling `preventDefault()` on the
|
|
25
27
|
* `helix-before-toggle` refuses the change, and nothing moves.
|
|
@@ -8,7 +8,7 @@ type Constructor<T> = new (...args: any[]) => T;
|
|
|
8
8
|
* to this interface keeps the internals private and the build working.
|
|
9
9
|
*/
|
|
10
10
|
export declare class MixinControllerOpenInterface {
|
|
11
|
-
/** Whether the
|
|
11
|
+
/** Whether the element starts open. Ignored once `open` is written. */
|
|
12
12
|
defaultOpen: boolean;
|
|
13
13
|
/**
|
|
14
14
|
* Whether the element is open.
|
|
@@ -19,7 +19,8 @@ export declare class MixinControllerOpenInterface {
|
|
|
19
19
|
*/
|
|
20
20
|
open: boolean;
|
|
21
21
|
/**
|
|
22
|
-
* Requests
|
|
22
|
+
* Requests that the element open or close, and returns whether the change was
|
|
23
|
+
* applied.
|
|
23
24
|
*
|
|
24
25
|
* Announces before it acts: a listener calling `preventDefault()` on the
|
|
25
26
|
* `helix-before-open` or `helix-before-close` refuses the change, and nothing moves.
|
|
@@ -8,14 +8,14 @@ type Constructor<T> = new (...args: any[]) => T;
|
|
|
8
8
|
*/
|
|
9
9
|
export declare class MixinControllerValueInterface {
|
|
10
10
|
/**
|
|
11
|
-
* The value the
|
|
11
|
+
* The value the control starts with. A form reset returns it to this value.
|
|
12
12
|
*
|
|
13
13
|
* Separate from `value`, which is where the control is now, and gone from the
|
|
14
14
|
* reader's view the moment they change anything.
|
|
15
15
|
*/
|
|
16
16
|
defaultValue: string;
|
|
17
17
|
/**
|
|
18
|
-
*
|
|
18
|
+
* The control's current value, which its form submits.
|
|
19
19
|
*
|
|
20
20
|
* Reading gives the real value. Writing always applies, and is a seed and a
|
|
21
21
|
* correction rather than a claim of ownership: a consumer who wants the
|
|
@@ -35,9 +35,9 @@ export declare class MixinControllerValueInterface {
|
|
|
35
35
|
* `input` alone or `input` and `change` together.
|
|
36
36
|
*/
|
|
37
37
|
protected readonly announcesInput: boolean;
|
|
38
|
-
/** Requests a new value, and
|
|
38
|
+
/** Requests a new value, and returns whether the change was applied. */
|
|
39
39
|
requestValue(next: string): boolean;
|
|
40
|
-
/** Returns the control to
|
|
40
|
+
/** Returns the control to its `defaultValue`. */
|
|
41
41
|
formResetCallback(): void;
|
|
42
42
|
/** Restores the value when the browser brings a form back. */
|
|
43
43
|
formStateRestoreCallback(state: string | File | FormData | null): void;
|
|
@@ -5,11 +5,11 @@ type Constructor<T> = new (...args: any[]) => T;
|
|
|
5
5
|
* The API a dismissible surface has, as TypeScript sees it.
|
|
6
6
|
*/
|
|
7
7
|
export declare class DismissibleElement {
|
|
8
|
-
/** Whether
|
|
8
|
+
/** Whether the element shows a control that dismisses it. */
|
|
9
9
|
dismissible: boolean;
|
|
10
|
-
/**
|
|
10
|
+
/** The dismiss control's label, read by screen readers. */
|
|
11
11
|
dismissLabel: string;
|
|
12
|
-
/**
|
|
12
|
+
/** Fires `helix-dismiss`, and returns `false` if a listener cancels it. */
|
|
13
13
|
dismiss(): boolean;
|
|
14
14
|
/** The event, built but not dispatched, for a caller that owns the timing. */
|
|
15
15
|
protected dismissEvent(): HelixDismissEvent;
|
|
@@ -21,7 +21,7 @@ export declare class MixinFieldInterface {
|
|
|
21
21
|
/** Whether a label is drawn at all, in either shape. */
|
|
22
22
|
protected get labeled(): boolean;
|
|
23
23
|
/**
|
|
24
|
-
* Help under the control
|
|
24
|
+
* Help text shown under the control. A validation message replaces it.
|
|
25
25
|
*
|
|
26
26
|
* Fallback content for the `hint` slot, so anything richer replaces it.
|
|
27
27
|
*/
|
|
@@ -34,7 +34,8 @@ export declare class MixinFieldInterface {
|
|
|
34
34
|
*/
|
|
35
35
|
readonly describedBy: string | undefined;
|
|
36
36
|
/**
|
|
37
|
-
*
|
|
37
|
+
* The validation message shown under the control. It replaces the browser's
|
|
38
|
+
* message.
|
|
38
39
|
*
|
|
39
40
|
* Overrides the platform's message. Left empty, the platform's own is shown
|
|
40
41
|
* once the reader has had a go at the field, never before. Either way it
|
|
@@ -42,7 +43,8 @@ export declare class MixinFieldInterface {
|
|
|
42
43
|
*/
|
|
43
44
|
feedback: string;
|
|
44
45
|
/**
|
|
45
|
-
* The
|
|
46
|
+
* The field's label, which is also its accessible name. Content in the
|
|
47
|
+
* `label` slot replaces it.
|
|
46
48
|
*
|
|
47
49
|
* Content rather than configuration, so it is the slot's fallback and never a
|
|
48
50
|
* second thing rendered beside it.
|
|
@@ -64,7 +66,7 @@ export declare class MixinFieldInterface {
|
|
|
64
66
|
protected renderGroupLabel(): TemplateResult | typeof nothing;
|
|
65
67
|
/** A label above the control, pointing at it with a real `for`. */
|
|
66
68
|
protected renderLabel(): TemplateResult | typeof nothing;
|
|
67
|
-
/** Whether the
|
|
69
|
+
/** Whether the field needs a value before the form can submit. */
|
|
68
70
|
required: boolean;
|
|
69
71
|
/**
|
|
70
72
|
* Re-reads the platform's verdict, for a control that has just reported one.
|
|
@@ -87,9 +89,9 @@ export declare class MixinFieldInterface {
|
|
|
87
89
|
* words where it gave some.
|
|
88
90
|
*/
|
|
89
91
|
protected copyValidity(control: HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement): void;
|
|
90
|
-
/** The message
|
|
92
|
+
/** The validation message shown: yours, the browser's, or none. */
|
|
91
93
|
readonly resolvedFeedback: string;
|
|
92
|
-
/**
|
|
94
|
+
/** The message shown when the field is required and empty. */
|
|
93
95
|
valueMissingMessage: string | undefined;
|
|
94
96
|
}
|
|
95
97
|
/**
|
|
@@ -22,10 +22,13 @@ export declare class MixinPickerEditingInterface {
|
|
|
22
22
|
/** Focusing the field opens the picker, and only from outside the element. */
|
|
23
23
|
protected readonly handleFocus: (event: FocusEvent) => void;
|
|
24
24
|
/**
|
|
25
|
-
* Whether the
|
|
25
|
+
* Whether the value is locked. A read-only control still submits its value.
|
|
26
26
|
*/
|
|
27
27
|
readOnly: boolean;
|
|
28
|
-
/**
|
|
28
|
+
/**
|
|
29
|
+
* Requests a new value. While `readOnly` is set, nothing changes and it
|
|
30
|
+
* returns `false`.
|
|
31
|
+
*/
|
|
29
32
|
requestValue(next: string): boolean;
|
|
30
33
|
}
|
|
31
34
|
/**
|
|
@@ -17,7 +17,7 @@ type PickerBase = HelixFormElement & MixinControllerOpenInterface & MixinControl
|
|
|
17
17
|
* to this interface keeps the internals private and the build working.
|
|
18
18
|
*/
|
|
19
19
|
export declare class MixinPickerFieldInterface {
|
|
20
|
-
/**
|
|
20
|
+
/** The message shown when the field holds text the picker cannot read. */
|
|
21
21
|
badInputMessage: string | undefined;
|
|
22
22
|
/**
|
|
23
23
|
* What the label points at and focus lands on.
|
|
@@ -43,7 +43,7 @@ export declare class MixinPickerFieldInterface {
|
|
|
43
43
|
* value either way. What `restore` puts back is whichever the family says.
|
|
44
44
|
*/
|
|
45
45
|
protected get display(): string;
|
|
46
|
-
/** Puts the caret in the field,
|
|
46
|
+
/** Puts the caret in the field, as clicking its label does. */
|
|
47
47
|
focus(options?: FocusOptions): void;
|
|
48
48
|
/** Escape shuts the panel without moving the value. */
|
|
49
49
|
protected readonly handleKeydown: (event: KeyboardEvent) => void;
|
|
@@ -8,9 +8,9 @@ type Constructor<T> = new (...args: any[]) => T;
|
|
|
8
8
|
* to this interface keeps the internals private and the build working.
|
|
9
9
|
*/
|
|
10
10
|
export declare class MixinSelectableItemInterface {
|
|
11
|
-
/** Whether
|
|
11
|
+
/** Whether the item is disabled and cannot be chosen. */
|
|
12
12
|
disabled: boolean;
|
|
13
|
-
/** Moves focus to the control
|
|
13
|
+
/** Moves focus to the item's control, for the set's arrow keys. */
|
|
14
14
|
focusItem(): void;
|
|
15
15
|
/**
|
|
16
16
|
* The part `focusItem` focuses, which each family names for itself.
|
|
@@ -21,7 +21,8 @@ export declare class MixinSelectableItemInterface {
|
|
|
21
21
|
*/
|
|
22
22
|
protected itemPart: string;
|
|
23
23
|
/**
|
|
24
|
-
*
|
|
24
|
+
* Selects the item and fires `helix-select`. Returns `false` if the item is
|
|
25
|
+
* disabled or a listener cancels the event.
|
|
25
26
|
*
|
|
26
27
|
* `MixinDismissible.dismiss` next door has the same shape and for the same
|
|
27
28
|
* reason: a mixin has no family, so the answer to a cancelable event it
|
|
@@ -29,9 +30,12 @@ export declare class MixinSelectableItemInterface {
|
|
|
29
30
|
* offers the second refusal on its own root.
|
|
30
31
|
*/
|
|
31
32
|
select(): boolean;
|
|
32
|
-
/** Whether
|
|
33
|
+
/** Whether the item is selected. The parent set updates it. */
|
|
33
34
|
selected: boolean;
|
|
34
|
-
/**
|
|
35
|
+
/**
|
|
36
|
+
* The item's value, which identifies it in its set and is what a form
|
|
37
|
+
* submits.
|
|
38
|
+
*/
|
|
35
39
|
value: string;
|
|
36
40
|
}
|
|
37
41
|
/**
|
|
@@ -25,7 +25,7 @@ export declare class MixinTokensInterface {
|
|
|
25
25
|
*/
|
|
26
26
|
maxTags: number;
|
|
27
27
|
/**
|
|
28
|
-
* Whether the count is a
|
|
28
|
+
* Whether the count is a button that shows the hidden tokens.
|
|
29
29
|
*
|
|
30
30
|
* **Off by default, and that is about focus rather than caution.** The count
|
|
31
31
|
* becomes a real button when this is set, which is a new stop in the tab
|
|
@@ -39,11 +39,12 @@ export declare class MixinTokensInterface {
|
|
|
39
39
|
*/
|
|
40
40
|
expandable: boolean;
|
|
41
41
|
/**
|
|
42
|
-
*
|
|
42
|
+
* The count button's label, read by screen readers. Its visible text, such
|
|
43
|
+
* as `+3`, does not say what it does.
|
|
43
44
|
*/
|
|
44
45
|
expandLabel: string;
|
|
45
46
|
/**
|
|
46
|
-
*
|
|
47
|
+
* The button's label, read by screen readers, once every token is showing.
|
|
47
48
|
*
|
|
48
49
|
* **The name and not the words on it**, which are a caret: expanded there is
|
|
49
50
|
* no longer a number to show, and a phrase in its place would translate badly
|
|
@@ -11,33 +11,33 @@ export type ViewportControlsPlacement = 'top-start' | 'top-end' | 'bottom-start'
|
|
|
11
11
|
* The API a pan-and-zoom surface has, as TypeScript sees it.
|
|
12
12
|
*/
|
|
13
13
|
export declare class ViewportElement {
|
|
14
|
-
/** Which
|
|
14
|
+
/** Which controls to show, as a list of `pan`, `zoom`, and `fullscreen`, or `none`. */
|
|
15
15
|
controls?: string;
|
|
16
16
|
/** Which corner the controls sit in. */
|
|
17
17
|
controlsPlacement?: ViewportControlsPlacement;
|
|
18
|
-
/**
|
|
18
|
+
/** The fullscreen button's label. */
|
|
19
19
|
fullscreenLabel: string;
|
|
20
|
-
/** How long the
|
|
20
|
+
/** How long, in milliseconds, before the header and footer hide when the user is inactive. `0` keeps them visible. */
|
|
21
21
|
idleDelay: number;
|
|
22
|
-
/**
|
|
22
|
+
/** The pan down button's label. */
|
|
23
23
|
panDownLabel: string;
|
|
24
|
-
/**
|
|
24
|
+
/** The pan left button's label. */
|
|
25
25
|
panLeftLabel: string;
|
|
26
|
-
/**
|
|
26
|
+
/** The pan right button's label. */
|
|
27
27
|
panRightLabel: string;
|
|
28
|
-
/** How far one press
|
|
28
|
+
/** How far one press pans the view, as a fraction of its size. */
|
|
29
29
|
panStep: number;
|
|
30
|
-
/**
|
|
30
|
+
/** The pan up button's label. */
|
|
31
31
|
panUpLabel: string;
|
|
32
|
-
/**
|
|
32
|
+
/** The zoom in button's label. */
|
|
33
33
|
zoomInLabel: string;
|
|
34
|
-
/**
|
|
34
|
+
/** The zoom out button's label. */
|
|
35
35
|
zoomOutLabel: string;
|
|
36
|
-
/**
|
|
36
|
+
/** Pans the view one step in a direction. */
|
|
37
37
|
pan(to: ViewportWay): void;
|
|
38
|
-
/**
|
|
38
|
+
/** Zooms the view one step: `1` zooms in and `-1` zooms out. */
|
|
39
39
|
zoom(by: number): void;
|
|
40
|
-
/**
|
|
40
|
+
/** Turns fullscreen on or off. */
|
|
41
41
|
toggleFullscreen(): void;
|
|
42
42
|
/** Whether the reader has been still long enough to hide the chrome. */
|
|
43
43
|
protected resting: boolean;
|
|
@@ -49,7 +49,7 @@ export declare class ViewportElement {
|
|
|
49
49
|
protected readonly fullscreen: FullscreenController;
|
|
50
50
|
/** The key relay, bound by the family's own frame. */
|
|
51
51
|
protected handleKeydown: (event: KeyboardEvent) => void;
|
|
52
|
-
/**
|
|
52
|
+
/** The name of the group of controls, read by screen readers. */
|
|
53
53
|
controlsLabel: string | undefined;
|
|
54
54
|
/** What the group of controls is called where the page does not say, which each family says for itself. */
|
|
55
55
|
protected get restingControlsLabel(): string;
|