@fusion.dev/helix-headless 0.105.0 → 0.106.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 +7324 -3890
- package/dist/accordion/item/accordion-item.d.ts +17 -16
- package/dist/accordion/root/accordion-root.d.ts +13 -17
- package/dist/announcement/root/announcement-root.d.ts +24 -31
- package/dist/app-header/root/app-header-root.d.ts +14 -14
- package/dist/area-chart/root/area-chart-root.d.ts +29 -48
- package/dist/avatar/group/avatar-group.d.ts +6 -8
- package/dist/avatar/root/avatar-root.d.ts +11 -11
- package/dist/badge/root/badge-root.d.ts +14 -15
- package/dist/bar-chart/root/bar-chart-root.d.ts +40 -44
- package/dist/blockquote/root/blockquote-root.d.ts +5 -7
- package/dist/breadcrumbs/breadcrumb/breadcrumb.d.ts +25 -33
- package/dist/breadcrumbs/root/breadcrumbs-root.d.ts +12 -11
- package/dist/button/root/button-root.d.ts +16 -17
- package/dist/button-group/root/button-group-root.d.ts +9 -10
- package/dist/callout/root/callout-root.d.ts +10 -15
- package/dist/canvas/edge/canvas-edge.d.ts +21 -21
- package/dist/canvas/node/canvas-node.d.ts +43 -45
- package/dist/canvas/root/canvas-root.d.ts +100 -99
- package/dist/card/root/card-root.d.ts +10 -12
- package/dist/carousel/root/carousel-root.d.ts +32 -33
- package/dist/chat/composer/chat-composer.d.ts +24 -26
- package/dist/chat/message/chat-message.d.ts +30 -33
- package/dist/chat/root/chat-root.d.ts +63 -80
- package/dist/checkbox/root/checkbox-root.d.ts +30 -32
- package/dist/checkbox-group/root/checkbox-group-root.d.ts +25 -25
- package/dist/code/root/code-root.d.ts +6 -10
- package/dist/code-block/root/code-block-root.d.ts +35 -48
- package/dist/color-input/root/color-input-root.d.ts +52 -56
- package/dist/color-picker/root/color-picker-root.d.ts +49 -49
- package/dist/combobox/root/combobox-root.d.ts +52 -53
- package/dist/command/root/command-root.d.ts +35 -40
- package/dist/copy-button/root/copy-button-root.d.ts +24 -26
- package/dist/data-table/root/data-table-root.d.ts +106 -107
- package/dist/date-input/root/date-input-root.d.ts +54 -53
- package/dist/date-picker/root/date-picker-root.d.ts +25 -21
- package/dist/description-list/item/description-list-item.d.ts +7 -7
- package/dist/description-list/root/description-list-root.d.ts +10 -15
- package/dist/dialog/root/dialog-root.d.ts +22 -19
- package/dist/divider/root/divider-root.d.ts +12 -13
- package/dist/donut-chart/root/donut-chart-root.d.ts +19 -20
- package/dist/drawer/root/drawer-root.d.ts +19 -18
- package/dist/drilldown/item/drilldown-item.d.ts +28 -28
- package/dist/drilldown/root/drilldown-root.d.ts +22 -28
- package/dist/element-events.generated.js +7 -0
- package/dist/empty/root/empty-root.d.ts +16 -19
- package/dist/file-input/root/file-input-root.d.ts +32 -32
- package/dist/filter-input/chip/filter-chip.d.ts +36 -39
- package/dist/filter-input/field/filter-field.d.ts +25 -31
- package/dist/filter-input/menu/filter-menu.d.ts +50 -47
- package/dist/filter-input/operator/filter-operator.d.ts +15 -20
- package/dist/filter-input/root/filter-input-root.d.ts +80 -98
- package/dist/format-date/root/format-date-root.d.ts +19 -27
- package/dist/heatmap/root/heatmap-root.d.ts +40 -41
- package/dist/icon/root/icon-root.d.ts +21 -23
- package/dist/icon-button/root/icon-button-root.d.ts +12 -14
- package/dist/image/root/image-root.d.ts +30 -30
- package/dist/input/root/input-root.d.ts +36 -35
- package/dist/kbd/root/kbd-root.d.ts +13 -15
- package/dist/legend/root/legend-root.d.ts +18 -16
- package/dist/lightbox/item/lightbox-item.d.ts +13 -15
- package/dist/lightbox/root/lightbox-root.d.ts +40 -41
- package/dist/line-chart/root/line-chart-root.d.ts +20 -29
- package/dist/list/item/list-item.d.ts +17 -22
- package/dist/list/root/list-root.d.ts +6 -7
- package/dist/listbox/root/listbox-root.d.ts +42 -41
- package/dist/loader/root/loader-root.d.ts +16 -20
- package/dist/map/area/map-area.d.ts +6 -0
- package/dist/map/area/map-area.js +3 -0
- package/dist/map/buildings/map-buildings.d.ts +45 -0
- package/dist/map/buildings/map-buildings.js +37 -0
- package/dist/map/contours/map-contours.d.ts +61 -0
- package/dist/map/contours/map-contours.js +54 -0
- package/dist/map/index.d.ts +7 -0
- package/dist/map/index.js +5 -0
- package/dist/map/landcover/map-landcover.d.ts +47 -0
- package/dist/map/landcover/map-landcover.js +37 -0
- package/dist/map/marker/map-marker.d.ts +11 -4
- package/dist/map/marker/map-marker.js +13 -1
- package/dist/map/points/map-points.d.ts +7 -1
- package/dist/map/points/map-points.js +3 -0
- package/dist/map/raster/map-raster.d.ts +84 -0
- package/dist/map/raster/map-raster.js +96 -0
- package/dist/map/root/map-root.d.ts +169 -7
- package/dist/map/root/map-root.js +352 -4
- package/dist/map/route/map-route.d.ts +6 -0
- package/dist/map/route/map-route.js +3 -0
- package/dist/map/terrain/map-terrain.d.ts +68 -0
- package/dist/map/terrain/map-terrain.js +58 -0
- package/dist/megamenu/root/megamenu-root.d.ts +27 -25
- package/dist/menu/item/menu-item.d.ts +30 -31
- package/dist/menu/root/menu-root.d.ts +25 -29
- package/dist/meter/root/meter-root.d.ts +22 -21
- package/dist/navigation/root/navigation-root.d.ts +13 -16
- package/dist/notifications/group/notification-group.d.ts +27 -28
- package/dist/notifications/notification/notification.d.ts +35 -42
- package/dist/notifications/root/notifications-root.d.ts +22 -24
- package/dist/number-input/root/number-input-root.d.ts +46 -50
- package/dist/object-inspector/root/object-inspector-root.d.ts +46 -58
- package/dist/option/group/option-group.d.ts +11 -11
- package/dist/option/root/option-root.d.ts +28 -33
- package/dist/outline/root/outline-root.d.ts +18 -17
- package/dist/pagination/root/pagination-root.d.ts +37 -39
- package/dist/pagination/size/pagination-size.d.ts +37 -43
- package/dist/pagination/summary/pagination-summary.d.ts +12 -14
- package/dist/pin-input/root/pin-input-root.d.ts +32 -38
- package/dist/popover/root/popover-root.d.ts +16 -21
- package/dist/progress/root/progress-root.d.ts +16 -14
- package/dist/qr-code/root/qr-code-root.d.ts +22 -25
- package/dist/quote/root/quote-root.d.ts +5 -6
- package/dist/radio/group/radio-group.d.ts +26 -28
- package/dist/radio/root/radio-root.d.ts +24 -28
- package/dist/rating/root/rating-root.d.ts +27 -30
- package/dist/scatter-chart/root/scatter-chart-root.d.ts +43 -55
- package/dist/scroll-area/root/scroll-area-root.d.ts +15 -21
- package/dist/select/root/select-root.d.ts +41 -44
- package/dist/skeleton/root/skeleton-root.d.ts +7 -8
- package/dist/skip-link/root/skip-link-root.d.ts +21 -28
- package/dist/slider/root/slider-root.d.ts +36 -39
- package/dist/sparkline/root/sparkline-root.d.ts +22 -28
- package/dist/speed-dial/item/speed-dial-item.d.ts +21 -21
- package/dist/speed-dial/root/speed-dial-root.d.ts +25 -27
- package/dist/splitter/root/splitter-root.d.ts +37 -41
- package/dist/stat/group/stat-group.d.ts +4 -4
- package/dist/stat/root/stat-root.d.ts +8 -9
- package/dist/steps/root/steps-root.d.ts +11 -14
- package/dist/steps/step/step.d.ts +22 -29
- package/dist/switch/root/switch-root.d.ts +20 -24
- package/dist/table/cell/table-cell.d.ts +18 -8
- package/dist/table/cell/table-cell.js +5 -1
- package/dist/table/column/table-column.d.ts +62 -55
- package/dist/table/root/table-root.d.ts +16 -17
- package/dist/table/row/table-row.d.ts +3 -3
- package/dist/tabs/panel/tab-panel.d.ts +3 -3
- package/dist/tabs/root/tabs-root.d.ts +19 -17
- package/dist/tabs/tab/tab.d.ts +6 -6
- package/dist/tag/root/tag-root.d.ts +11 -12
- package/dist/textarea/root/textarea-root.d.ts +29 -32
- package/dist/time-input/root/time-input-root.d.ts +70 -69
- package/dist/time-picker/root/time-picker-root.d.ts +58 -66
- package/dist/timeline/item/timeline-item.d.ts +18 -24
- package/dist/timeline/root/timeline-root.d.ts +13 -21
- package/dist/toast/item/toast-item.d.ts +21 -22
- package/dist/toast/root/toast-root.d.ts +18 -23
- package/dist/toggle/group/toggle-group.d.ts +23 -25
- package/dist/toggle/root/toggle-root.d.ts +8 -8
- package/dist/toolbar/root/toolbar-root.d.ts +7 -10
- package/dist/tooltip/root/tooltip-root.d.ts +41 -47
- package/dist/tour/root/tour-root.d.ts +24 -26
- package/dist/tour/stop/tour-stop.d.ts +39 -48
- package/dist/tree/item/tree-item.d.ts +23 -25
- package/dist/tree/root/tree-root.d.ts +13 -12
- package/dist/trend/root/trend-root.d.ts +18 -19
- package/dist/video/root/video-root.d.ts +108 -101
- package/dist/video-playlist/item/video-playlist-item.d.ts +23 -28
- package/dist/video-playlist/menu/video-playlist-menu.d.ts +17 -21
- package/dist/video-playlist/root/video-playlist-root.d.ts +21 -25
- package/dist/virtual-list/root/virtual-list-root.d.ts +27 -26
- package/package.json +5 -5
- package/types/jsx.d.ts +10363 -9520
- package/types/svelte.d.ts +5 -0
- package/types/vue.d.ts +1440 -1032
|
@@ -2,23 +2,26 @@ import { HelixFormElement } from '@fusion.dev/helix-core';
|
|
|
2
2
|
import { type PropertyValues, type TemplateResult } from 'lit';
|
|
3
3
|
declare const HelixHeadlessDatePicker_base: (new (...args: any[]) => import("@fusion.dev/helix-core").MixinControllerValueInterface) & typeof HelixFormElement;
|
|
4
4
|
/**
|
|
5
|
-
* @summary
|
|
5
|
+
* @summary A month calendar for choosing one or more dates.
|
|
6
6
|
*
|
|
7
7
|
* @description
|
|
8
|
-
* A grid of days
|
|
9
|
-
* move by day and week, `PageUp` and `PageDown` by month, `Home` and `End` to
|
|
10
|
-
* the ends of the week. Only the focused cell is in the tab sequence.
|
|
8
|
+
* A grid of days that follows the APG date grid pattern:
|
|
11
9
|
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
10
|
+
* - The grid is one tab stop. Only the focused cell is in the tab sequence.
|
|
11
|
+
* - Arrow keys move by day and by week.
|
|
12
|
+
* - `PageUp` and `PageDown` move by month.
|
|
13
|
+
* - `Home` and `End` move to the start and end of the week.
|
|
14
14
|
*
|
|
15
|
-
* `
|
|
16
|
-
*
|
|
15
|
+
* **Dates are `YYYY-MM-DD` strings, and every calculation is in UTC**, because
|
|
16
|
+
* a local-time `Date` shifts across a time zone or daylight-saving boundary.
|
|
17
|
+
*
|
|
18
|
+
* `month` sets which month the grid shows, separately from `value`, so paging
|
|
19
|
+
* selects nothing and you can control the view. When unset, it follows the
|
|
17
20
|
* first selected date, then the current month.
|
|
18
21
|
*
|
|
19
|
-
* `mode`
|
|
20
|
-
*
|
|
21
|
-
* write the same comma-separated `value`.
|
|
22
|
+
* `mode` sets how many dates are held. Unset holds one, `range` holds two and
|
|
23
|
+
* marks the dates between them, and `multiple` toggles each date. All three
|
|
24
|
+
* read and write the same comma-separated `value`.
|
|
22
25
|
*
|
|
23
26
|
* @since 0.1.0
|
|
24
27
|
* @status stable
|
|
@@ -29,16 +32,16 @@ declare const HelixHeadlessDatePicker_base: (new (...args: any[]) => import("@fu
|
|
|
29
32
|
* @slot next-icon - The glyph on the control that moves forward a month, usually a caret.
|
|
30
33
|
* @slot previous-icon - The glyph on the control that moves back a month, usually a caret.
|
|
31
34
|
*
|
|
32
|
-
* @event {Event} change -
|
|
35
|
+
* @event {Event} change - Fired after the value changes.
|
|
33
36
|
* @event {HelixBeforeChangeEvent} helix-before-change - Fired before the dates change, and cancelable.
|
|
34
37
|
* @event {HelixNavigateEvent} helix-navigate - Fired before the month on show changes, and cancelable.
|
|
35
|
-
* @event {Event} input -
|
|
38
|
+
* @event {Event} input - Fired after the value changes.
|
|
36
39
|
*
|
|
37
|
-
* @csspart cell - One column of a row
|
|
40
|
+
* @csspart cell - One column of a week row. A range is painted on the cells.
|
|
38
41
|
* @csspart cell-range-end - The cell of a range's last day, beside `cell`.
|
|
39
42
|
* @csspart cell-range-middle - A cell between a range's ends, beside `cell`.
|
|
40
43
|
* @csspart cell-range-start - The cell of a range's first day, beside `cell`.
|
|
41
|
-
* @csspart day - The shape inside a cell
|
|
44
|
+
* @csspart day - The shape inside a cell. A single chosen date is painted on it.
|
|
42
45
|
* @csspart day-disabled - A day that cannot be chosen, beside `day`.
|
|
43
46
|
* @csspart day-outside - A day from a neighboring month, filling the grid out, beside `day`.
|
|
44
47
|
* @csspart day-selected - The chosen day, or either end of a chosen range, beside `day`.
|
|
@@ -59,7 +62,7 @@ declare const HelixHeadlessDatePicker_base: (new (...args: any[]) => import("@fu
|
|
|
59
62
|
*/
|
|
60
63
|
export declare class HelixHeadlessDatePicker extends HelixHeadlessDatePicker_base {
|
|
61
64
|
/**
|
|
62
|
-
*
|
|
65
|
+
* The validation message for a value that is not a date.
|
|
63
66
|
*
|
|
64
67
|
* **Every sentence a control raises in the browser's bubble is a property**,
|
|
65
68
|
* named for the validity flag it reports, so a form in another language
|
|
@@ -67,7 +70,7 @@ export declare class HelixHeadlessDatePicker extends HelixHeadlessDatePicker_bas
|
|
|
67
70
|
*/
|
|
68
71
|
badInputMessage?: string;
|
|
69
72
|
/**
|
|
70
|
-
*
|
|
73
|
+
* The month to open on when `month` is not set.
|
|
71
74
|
*/
|
|
72
75
|
defaultMonth: string;
|
|
73
76
|
/**
|
|
@@ -111,7 +114,8 @@ export declare class HelixHeadlessDatePicker extends HelixHeadlessDatePicker_bas
|
|
|
111
114
|
/** The month on show, whoever set it, and `undefined` until somebody has. */
|
|
112
115
|
private monthState;
|
|
113
116
|
/**
|
|
114
|
-
* The month
|
|
117
|
+
* The month shown, as `YYYY-MM`. When it is not set, it follows `value`,
|
|
118
|
+
* then the current month.
|
|
115
119
|
*
|
|
116
120
|
* Separate from `value` on purpose, so paging selects nothing and a consumer
|
|
117
121
|
* can drive the view. Reading gives the month on show; writing sets it, and
|
|
@@ -137,7 +141,7 @@ export declare class HelixHeadlessDatePicker extends HelixHeadlessDatePicker_bas
|
|
|
137
141
|
*/
|
|
138
142
|
previousLabel: string;
|
|
139
143
|
/**
|
|
140
|
-
*
|
|
144
|
+
* Blocks changes to the dates. The value is still submitted with the form.
|
|
141
145
|
*
|
|
142
146
|
* **Enforced by refusing every request in one place**, which is the seam this
|
|
143
147
|
* component already has: `requestValue` is what every path here comes through,
|
|
@@ -218,7 +222,7 @@ export declare class HelixHeadlessDatePicker extends HelixHeadlessDatePicker_bas
|
|
|
218
222
|
connectedCallback(): void;
|
|
219
223
|
disconnectedCallback(): void;
|
|
220
224
|
/**
|
|
221
|
-
*
|
|
225
|
+
* Stops the form from submitting while no date is chosen.
|
|
222
226
|
*/
|
|
223
227
|
required: boolean;
|
|
224
228
|
/** Refuses every change while read-only. See `readOnly`. */
|
|
@@ -238,7 +242,7 @@ export declare class HelixHeadlessDatePicker extends HelixHeadlessDatePicker_bas
|
|
|
238
242
|
*/
|
|
239
243
|
step: number;
|
|
240
244
|
/**
|
|
241
|
-
*
|
|
245
|
+
* The validation message for a required date picker with no date chosen.
|
|
242
246
|
*/
|
|
243
247
|
valueMissingMessage?: string;
|
|
244
248
|
/**
|
|
@@ -4,13 +4,13 @@ import { type TemplateResult } from 'lit';
|
|
|
4
4
|
* @summary One label and its value.
|
|
5
5
|
*
|
|
6
6
|
* @description
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
7
|
+
* Each pair is its own element: the label is the `<dt>` and the value its
|
|
8
|
+
* `<dd>`, and a screen reader hears them together however the list lays them
|
|
9
|
+
* out.
|
|
10
10
|
*
|
|
11
|
-
* The value is the default slot,
|
|
12
|
-
*
|
|
13
|
-
*
|
|
11
|
+
* The value is the default slot, because it varies and is often more than text,
|
|
12
|
+
* such as a tag, an avatar, or a link. The label is almost always text, so it
|
|
13
|
+
* is also a property.
|
|
14
14
|
*
|
|
15
15
|
* @since 0.1.0
|
|
16
16
|
* @status stable
|
|
@@ -24,7 +24,7 @@ import { type TemplateResult } from 'lit';
|
|
|
24
24
|
*/
|
|
25
25
|
export declare class HelixHeadlessDescriptionListItem extends HelixElement {
|
|
26
26
|
/**
|
|
27
|
-
*
|
|
27
|
+
* The label, when it is plain text.
|
|
28
28
|
*
|
|
29
29
|
* The fallback of the `label` slot, so slotted content replaces it rather than
|
|
30
30
|
* appearing beside it. The value itself is the default slot: it is the half
|
|
@@ -1,24 +1,19 @@
|
|
|
1
1
|
import { HelixElement } from '@fusion.dev/helix-core';
|
|
2
2
|
import { type TemplateResult } from 'lit';
|
|
3
3
|
/**
|
|
4
|
-
* @summary
|
|
5
|
-
* product has.
|
|
4
|
+
* @summary A list of labels and their values, such as a details panel.
|
|
6
5
|
*
|
|
7
6
|
* @description
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
* a `<dl>`, with each item's label a `<dt>` and its value a `<dd>`.
|
|
7
|
+
* Renders a `<dl>`, with each item's label as a `<dt>` and its value as a
|
|
8
|
+
* `<dd>`, for panels such as "Owner: Ada, Region: us-east, Created: 3 days
|
|
9
|
+
* ago". A screen reader announces which label goes with which value and how
|
|
10
|
+
* many pairs there are.
|
|
13
11
|
*
|
|
14
|
-
* **
|
|
15
|
-
* through its slot. The accessibility tree is built from the flattened
|
|
16
|
-
* the pairs
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
* holding term and definition pairs, node for node what a plain `<dl>` with the
|
|
20
|
-
* same content produces, with a slotted label and with an item drawn as
|
|
21
|
-
* `display: contents` alike.
|
|
12
|
+
* **Each item renders its own term and description**, and the list takes the
|
|
13
|
+
* items through its slot. The accessibility tree is built from the flattened
|
|
14
|
+
* tree, so the pairs appear inside the list. Measured in Chromium, the result
|
|
15
|
+
* matches a plain `<dl>` with the same content node for node, both with a
|
|
16
|
+
* slotted label and with an item set to `display: contents`.
|
|
22
17
|
*
|
|
23
18
|
* @since 0.1.0
|
|
24
19
|
* @status stable
|
|
@@ -2,20 +2,22 @@ import { CommandController, HelixElement } from '@fusion.dev/helix-core';
|
|
|
2
2
|
import { type PropertyValues, type TemplateResult } from 'lit';
|
|
3
3
|
declare const HelixHeadlessDialog_base: (new (...args: any[]) => import("@fusion.dev/helix-core").MixinControllerOpenInterface) & typeof HelixElement;
|
|
4
4
|
/**
|
|
5
|
-
* @summary A modal window
|
|
5
|
+
* @summary A modal window built on the native `<dialog>` element.
|
|
6
6
|
*
|
|
7
7
|
* @description
|
|
8
|
-
*
|
|
9
|
-
* hand-built trap. The platform gives four things that are each a day's work to
|
|
10
|
-
* reimplement: the top layer, so the dialog is above everything whatever
|
|
11
|
-
* `z-index` anyone wrote; a real backdrop; Escape; and inert-behind, so the
|
|
12
|
-
* page underneath is unreachable by pointer, keyboard or virtual cursor.
|
|
8
|
+
* Renders a native `<dialog>` opened with `showModal()`. The platform provides:
|
|
13
9
|
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
10
|
+
* - the top layer, so the dialog is above everything whatever the `z-index`
|
|
11
|
+
* - a backdrop
|
|
12
|
+
* - closing with Escape
|
|
13
|
+
* - an inert page behind the dialog, unreachable by pointer, keyboard, or
|
|
14
|
+
* virtual cursor
|
|
15
|
+
*
|
|
16
|
+
* `open` calls `showModal()`, and every way the dialog closes goes through
|
|
17
|
+
* `requestOpen`. A native dialog closes three ways: the property, Escape, and a
|
|
18
|
+
* `<form method="dialog">` submit. Routing all three through `requestOpen`
|
|
19
|
+
* keeps your state in step, so the dialog never closes while your state still
|
|
20
|
+
* says it is open, which would leave it impossible to reopen.
|
|
19
21
|
*
|
|
20
22
|
* @since 0.1.0
|
|
21
23
|
* @status stable
|
|
@@ -24,14 +26,14 @@ declare const HelixHeadlessDialog_base: (new (...args: any[]) => import("@fusion
|
|
|
24
26
|
* @documentation https://fusion.dev/helix/components/dialog
|
|
25
27
|
*
|
|
26
28
|
* @slot - The dialog's content.
|
|
27
|
-
* @slot footer - The actions.
|
|
29
|
+
* @slot footer - The dialog's actions.
|
|
28
30
|
* @slot header - The title, and anything beside it.
|
|
29
|
-
* @slot icon -
|
|
31
|
+
* @slot icon - An icon above the title, for a warning dialog.
|
|
30
32
|
*
|
|
31
|
-
* @event {Event} close -
|
|
33
|
+
* @event {Event} close - Sent from the host after the dialog closes, because the native `close` event does not leave the shadow root.
|
|
32
34
|
* @event {HelixBeforeCloseEvent} helix-before-close - Fired before it closes, and cancelable.
|
|
33
35
|
* @event {HelixBeforeOpenEvent} helix-before-open - Fired before it opens, and cancelable.
|
|
34
|
-
* @event {Event} toggle -
|
|
36
|
+
* @event {Event} toggle - Sent when the dialog opens or closes, with `newState` and `oldState`.
|
|
35
37
|
*
|
|
36
38
|
* @csspart dialog - The native dialog element.
|
|
37
39
|
*
|
|
@@ -39,7 +41,7 @@ declare const HelixHeadlessDialog_base: (new (...args: any[]) => import("@fusion
|
|
|
39
41
|
*/
|
|
40
42
|
export declare class HelixHeadlessDialog extends HelixHeadlessDialog_base {
|
|
41
43
|
/**
|
|
42
|
-
* Which close requests the browser
|
|
44
|
+
* Which close requests the browser handles on its own.
|
|
43
45
|
*
|
|
44
46
|
* `<dialog closedby>`, forwarded, and safe to forward because every path it
|
|
45
47
|
* opens still comes back through this element: a close request fires `cancel`
|
|
@@ -57,7 +59,7 @@ export declare class HelixHeadlessDialog extends HelixHeadlessDialog_base {
|
|
|
57
59
|
label: string;
|
|
58
60
|
protected readonly commands: CommandController;
|
|
59
61
|
/**
|
|
60
|
-
*
|
|
62
|
+
* Stops Escape and a press on the backdrop from closing the dialog.
|
|
61
63
|
*
|
|
62
64
|
* Off for a dialog that must be answered. It does not disable the close
|
|
63
65
|
* control a consumer slots in: refusing to be dismissed is not the same as
|
|
@@ -86,10 +88,11 @@ export declare class HelixHeadlessDialog extends HelixHeadlessDialog_base {
|
|
|
86
88
|
private returned;
|
|
87
89
|
/** The native dialog, or nothing where there is no DOM to hold one. */
|
|
88
90
|
private get dialog();
|
|
89
|
-
/**
|
|
91
|
+
/** Opens the dialog, moves focus into it, and makes the rest of the page inert. */
|
|
90
92
|
show(): void;
|
|
91
93
|
/**
|
|
92
|
-
*
|
|
94
|
+
* Requests that the dialog close. A `helix-before-close` listener can cancel
|
|
95
|
+
* the request.
|
|
93
96
|
*
|
|
94
97
|
* Takes what the dialog closed with, the way `<dialog>.close(value)` does, so
|
|
95
98
|
* the button that dismissed it can say which one it was. Set before the
|
|
@@ -1,18 +1,17 @@
|
|
|
1
1
|
import { HelixElement } from '@fusion.dev/helix-core';
|
|
2
2
|
import { type PropertyValues, type TemplateResult } from 'lit';
|
|
3
3
|
/**
|
|
4
|
-
* @summary
|
|
4
|
+
* @summary A line that separates content into groups.
|
|
5
5
|
*
|
|
6
6
|
* @description
|
|
7
|
-
* The separator role
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
* runs.
|
|
7
|
+
* The separator role is on the rule inside the shadow root. A role does not
|
|
8
|
+
* need to cross the shadow boundary the way an IDREF does, so it can sit on the
|
|
9
|
+
* rendered element. The semantics are then in the server-rendered markup, with
|
|
10
|
+
* no attribute written by script after the element connects.
|
|
12
11
|
*
|
|
13
12
|
* Use `orientation="vertical"` between items on one line, such as inside a
|
|
14
|
-
* toolbar. A vertical divider stretches to its flex parent
|
|
15
|
-
*
|
|
13
|
+
* toolbar. A vertical divider stretches to fit its flex parent and sets no
|
|
14
|
+
* height of its own.
|
|
16
15
|
*
|
|
17
16
|
* @since 0.1.0
|
|
18
17
|
* @status stable
|
|
@@ -20,14 +19,14 @@ import { type PropertyValues, type TemplateResult } from 'lit';
|
|
|
20
19
|
* @aliases Separator, Rule
|
|
21
20
|
* @documentation https://fusion.dev/helix/components/divider
|
|
22
21
|
*
|
|
23
|
-
* @slot - Content set into the
|
|
22
|
+
* @slot - Content set into the line, such as a word between two sections.
|
|
24
23
|
*
|
|
25
|
-
* @csspart content -
|
|
26
|
-
* @csspart line - The
|
|
24
|
+
* @csspart content - The content set into the line.
|
|
25
|
+
* @csspart line - The line, or each half of it when content is set into it.
|
|
27
26
|
*/
|
|
28
27
|
export declare class HelixHeadlessDivider extends HelixElement {
|
|
29
28
|
/**
|
|
30
|
-
* Whether
|
|
29
|
+
* Whether screen readers announce the line as a separator.
|
|
31
30
|
*
|
|
32
31
|
* Off by default, and out of the accessibility tree. Most rules on a page
|
|
33
32
|
* separate nothing: they underline a heading or close a section that space
|
|
@@ -42,7 +41,7 @@ export declare class HelixHeadlessDivider extends HelixElement {
|
|
|
42
41
|
*/
|
|
43
42
|
announced: boolean;
|
|
44
43
|
/**
|
|
45
|
-
*
|
|
44
|
+
* The direction the line runs: `horizontal` or `vertical`.
|
|
46
45
|
*/
|
|
47
46
|
orientation?: 'horizontal' | 'vertical';
|
|
48
47
|
/**
|
|
@@ -3,18 +3,17 @@ import { nothing, type TemplateResult } from 'lit';
|
|
|
3
3
|
import '../../tooltip/index.js';
|
|
4
4
|
declare const HelixHeadlessDonutChart_base: typeof HelixElement & (new (...args: any[]) => import("@fusion.dev/helix-core").MixinChartSourceInterface);
|
|
5
5
|
/**
|
|
6
|
-
* @summary
|
|
6
|
+
* @summary A chart that shows parts of a whole as a ring, read from a table.
|
|
7
7
|
*
|
|
8
8
|
* @description
|
|
9
|
-
*
|
|
9
|
+
* A donut chart divides one whole into parts, so the component reads one
|
|
10
|
+
* column.
|
|
10
11
|
*
|
|
11
|
-
* **
|
|
12
|
-
*
|
|
13
|
-
* column of numbers is the series and each row is a slice.
|
|
12
|
+
* **The first column of numbers is the series, and each row is a slice.** Other
|
|
13
|
+
* Helix charts take one column per series.
|
|
14
14
|
*
|
|
15
|
-
* **
|
|
16
|
-
*
|
|
17
|
-
* dropped. Those rows are skipped and the total is of what is left.
|
|
15
|
+
* **Negative values are skipped.** An arc cannot show a negative number, so
|
|
16
|
+
* those rows are left out and the total is the sum of the remaining rows.
|
|
18
17
|
*
|
|
19
18
|
* @since 0.1.0
|
|
20
19
|
* @status stable
|
|
@@ -22,28 +21,28 @@ declare const HelixHeadlessDonutChart_base: typeof HelixElement & (new (...args:
|
|
|
22
21
|
* @aliases Pie Chart, Ring Chart, Share Chart
|
|
23
22
|
* @documentation https://fusion.dev/helix/components/donut-chart
|
|
24
23
|
*
|
|
25
|
-
* @slot -
|
|
24
|
+
* @slot - Content in the middle of the ring, usually a total.
|
|
26
25
|
*
|
|
27
26
|
* @csspart center - The middle of the ring, holding whatever is slotted.
|
|
28
27
|
* @csspart mark - The invisible point the tooltip is anchored to.
|
|
29
28
|
* @csspart plot - The drawing.
|
|
30
29
|
* @csspart segment - One slice.
|
|
31
|
-
* @csspart segment-active - The slice under the pointer
|
|
32
|
-
* @csspart segment-edge - One slice as a closed shape,
|
|
30
|
+
* @csspart segment-active - The slice under the pointer. Set alongside `segment`.
|
|
31
|
+
* @csspart segment-edge - One slice as a closed shape, used to draw its outline.
|
|
33
32
|
* @csspart tooltip - The bubble, forwarded from `Tooltip`.
|
|
34
33
|
* @csspart tooltip-anchor - The `Tooltip` element itself.
|
|
35
34
|
* @csspart tooltip-arrow - The bubble's point, forwarded from `Tooltip`.
|
|
36
|
-
* @csspart tooltip-arrow-bottom - The point while the bubble is below the reading,
|
|
37
|
-
* @csspart tooltip-arrow-left - The point while the bubble is left of the reading,
|
|
38
|
-
* @csspart tooltip-arrow-right - The point while the bubble is right of the reading,
|
|
39
|
-
* @csspart tooltip-arrow-top - The point while the bubble is above the reading,
|
|
40
|
-
* @csspart tooltip-bottom - The bubble while it is below the reading
|
|
35
|
+
* @csspart tooltip-arrow-bottom - The point while the bubble is below the reading, on its top edge. Set alongside `tooltip-arrow`.
|
|
36
|
+
* @csspart tooltip-arrow-left - The point while the bubble is left of the reading, on its right edge. Set alongside `tooltip-arrow`.
|
|
37
|
+
* @csspart tooltip-arrow-right - The point while the bubble is right of the reading, on its left edge. Set alongside `tooltip-arrow`.
|
|
38
|
+
* @csspart tooltip-arrow-top - The point while the bubble is above the reading, on its bottom edge. Set alongside `tooltip-arrow`.
|
|
39
|
+
* @csspart tooltip-bottom - The bubble while it is below the reading. Set alongside `tooltip`.
|
|
41
40
|
* @csspart tooltip-cell - One column's name and value inside the tooltip.
|
|
42
41
|
* @csspart tooltip-label - The slice's own name inside the tooltip.
|
|
43
|
-
* @csspart tooltip-left - The bubble while it is left of the reading
|
|
42
|
+
* @csspart tooltip-left - The bubble while it is left of the reading. Set alongside `tooltip`.
|
|
44
43
|
* @csspart tooltip-name - A column's name inside the tooltip.
|
|
45
|
-
* @csspart tooltip-right - The bubble while it is right of the reading
|
|
46
|
-
* @csspart tooltip-top - The bubble while it is above the reading
|
|
44
|
+
* @csspart tooltip-right - The bubble while it is right of the reading. Set alongside `tooltip`.
|
|
45
|
+
* @csspart tooltip-top - The bubble while it is above the reading. Set alongside `tooltip`.
|
|
47
46
|
* @csspart tooltip-value - A column's value inside the tooltip.
|
|
48
47
|
* @csspart track - The ring the slices are drawn on.
|
|
49
48
|
*
|
|
@@ -67,7 +66,7 @@ export declare class HelixHeadlessDonutChart extends HelixHeadlessDonutChart_bas
|
|
|
67
66
|
*/
|
|
68
67
|
connectedCallback(): void;
|
|
69
68
|
/**
|
|
70
|
-
*
|
|
69
|
+
* The size of the hole in the middle of the ring.
|
|
71
70
|
*
|
|
72
71
|
* Absent is a ring with room for a total in it. `small` and `large` move the
|
|
73
72
|
* hole without moving the outer edge, so a chart keeps its footprint.
|
|
@@ -5,23 +5,24 @@ declare const HelixHeadlessDrawer_base: (new (...args: any[]) => import("@fusion
|
|
|
5
5
|
* @summary A panel that slides in from an edge.
|
|
6
6
|
*
|
|
7
7
|
* @description
|
|
8
|
-
*
|
|
9
|
-
* `helix-before-open` and `helix-before-close`
|
|
10
|
-
*
|
|
8
|
+
* Uses `MixinControllerOpen`, so `open`, `defaultOpen`, and the
|
|
9
|
+
* `helix-before-open` and `helix-before-close` events work the same way as on
|
|
10
|
+
* an accordion item.
|
|
11
11
|
*
|
|
12
|
-
*
|
|
13
|
-
* trapped inside, Escape and an outside press close it, and the page behind is
|
|
14
|
-
* covered. A panel with the look of a modal and none of its behavior is worse
|
|
15
|
-
* than an inline one, because it invites the reader to treat it as blocking.
|
|
12
|
+
* The drawer is modal by default, which means three things:
|
|
16
13
|
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
* `aria-modal` and the scrim come from the element too, and
|
|
21
|
-
* `drawer-root.ssr.spec.ts` asserts the panel carries no hand-written `inert`
|
|
22
|
-
* and no hand-written `role`.
|
|
14
|
+
* - focus is trapped inside
|
|
15
|
+
* - Escape and a press outside close it
|
|
16
|
+
* - the page behind is covered
|
|
23
17
|
*
|
|
24
|
-
*
|
|
18
|
+
* Content stays mounted when the drawer is closed, so it is in the server
|
|
19
|
+
* markup and can animate. A closed `<dialog>` is already out of the tab order
|
|
20
|
+
* and the accessibility tree, so the drawer does not write `inert`. The `role`,
|
|
21
|
+
* `aria-modal`, and the scrim also come from the `<dialog>` element.
|
|
22
|
+
* `drawer-root.ssr.spec.ts` checks that the panel has no hand-written `inert`
|
|
23
|
+
* or `role`.
|
|
24
|
+
*
|
|
25
|
+
* Open the drawer declaratively with the platform's invoker attributes:
|
|
25
26
|
*
|
|
26
27
|
* ```html
|
|
27
28
|
* <helix-headless-button commandfor="nav" command="--toggle">Menu</helix-headless-button>
|
|
@@ -37,10 +38,10 @@ declare const HelixHeadlessDrawer_base: (new (...args: any[]) => import("@fusion
|
|
|
37
38
|
* @slot - The drawer's content.
|
|
38
39
|
* @slot header - Content pinned above the scrolling area.
|
|
39
40
|
*
|
|
40
|
-
* @event {Event} close -
|
|
41
|
+
* @event {Event} close - Sent from the host after the drawer closes, because the native `close` event does not leave the shadow root.
|
|
41
42
|
* @event {HelixBeforeCloseEvent} helix-before-close - Fired before the panel closes, and cancelable.
|
|
42
|
-
* @event {HelixBeforeOpenEvent} helix-before-open - Fired before the panel opens.
|
|
43
|
-
* @event {Event} toggle -
|
|
43
|
+
* @event {HelixBeforeOpenEvent} helix-before-open - Fired before the panel opens, and cancelable. Canceling it keeps the panel closed.
|
|
44
|
+
* @event {Event} toggle - Sent when the drawer opens or closes, with `newState` and `oldState`.
|
|
44
45
|
*
|
|
45
46
|
* @csspart content - The scrolling content region.
|
|
46
47
|
* @csspart header - The header region.
|
|
@@ -51,7 +52,7 @@ declare const HelixHeadlessDrawer_base: (new (...args: any[]) => import("@fusion
|
|
|
51
52
|
export declare class HelixHeadlessDrawer extends HelixHeadlessDrawer_base {
|
|
52
53
|
protected readonly commands: CommandController;
|
|
53
54
|
/**
|
|
54
|
-
* Which close requests the browser
|
|
55
|
+
* Which close requests the browser handles on its own.
|
|
55
56
|
*
|
|
56
57
|
* `<dialog closedby>`, forwarded, and safe to forward because every path it
|
|
57
58
|
* opens still comes back through this element: a close request fires `cancel`
|
|
@@ -1,43 +1,43 @@
|
|
|
1
1
|
import { HelixElement } from '@fusion.dev/helix-core';
|
|
2
2
|
import { nothing, type PropertyValues, type TemplateResult } from 'lit';
|
|
3
3
|
/**
|
|
4
|
-
* @summary One row of a drill-down, which
|
|
4
|
+
* @summary One row of a drill-down, which can open a page of its own.
|
|
5
5
|
*
|
|
6
6
|
* @description
|
|
7
|
-
* A row that opens a page
|
|
8
|
-
* children, assigned to the `page` slot.
|
|
9
|
-
*
|
|
7
|
+
* A row that opens a page contains that page: the page's rows are this row's
|
|
8
|
+
* own children, assigned to the `page` slot. There are no ids to wire, and
|
|
9
|
+
* moving a row moves its page with it.
|
|
10
10
|
*
|
|
11
|
-
*
|
|
12
|
-
* rather than its own. On the page showing, it is a row. Showing its own page,
|
|
13
|
-
* it contributes that page's rows and nothing else, because its row belongs to
|
|
14
|
-
* the page above. On neither, it renders nothing at all: the rows are in the
|
|
15
|
-
* light DOM and come back untouched, so there is no state to keep and nothing
|
|
16
|
-
* to hide with an attribute this element would have to write onto itself.
|
|
11
|
+
* What the item renders depends on the stack:
|
|
17
12
|
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
13
|
+
* - On the page that is showing, it renders its row.
|
|
14
|
+
* - When its own page is showing, it renders only that page's rows. Its row
|
|
15
|
+
* belongs to the page above.
|
|
16
|
+
* - Otherwise it renders nothing. The rows stay in the light DOM untouched, so
|
|
17
|
+
* there is no state to keep.
|
|
20
18
|
*
|
|
21
|
-
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
24
|
-
*
|
|
19
|
+
* Choosing a row dispatches an event, and the stack decides whether that drills
|
|
20
|
+
* in or runs a command.
|
|
21
|
+
*
|
|
22
|
+
* A row that opens a page shows a caret after its text and sets
|
|
23
|
+
* `aria-haspopup`, the same way `Menu` marks a row with a submenu. The server
|
|
24
|
+
* render leaves both out, because the server cannot see the children.
|
|
25
25
|
*
|
|
26
26
|
* @since 0.1.0
|
|
27
27
|
* @status stable
|
|
28
28
|
* @aliases Panel item, Drill row
|
|
29
29
|
* @documentation https://fusion.dev/helix/components/drilldown
|
|
30
30
|
*
|
|
31
|
-
* @slot - The
|
|
32
|
-
* @slot end -
|
|
33
|
-
* @slot page - The rows of the page this
|
|
34
|
-
* @slot start -
|
|
31
|
+
* @slot - The row's label.
|
|
32
|
+
* @slot end - Content after the label, usually an icon or a count.
|
|
33
|
+
* @slot page - The rows of the page this row opens.
|
|
34
|
+
* @slot start - Content before the label, usually an icon.
|
|
35
35
|
*
|
|
36
|
-
* @event {HelixSelectEvent} helix-select - Fired when the row is chosen. Cancelable:
|
|
36
|
+
* @event {HelixSelectEvent} helix-select - Fired when the row is chosen. Cancelable: canceling it stops the change and leaves the decision to you.
|
|
37
37
|
*
|
|
38
38
|
* @csspart item - The row itself.
|
|
39
|
-
* @csspart label - The
|
|
40
|
-
* @csspart mark - The caret at the end of a row that opens a page, after the `end` slot.
|
|
39
|
+
* @csspart label - The row's label.
|
|
40
|
+
* @csspart mark - The caret at the end of a row that opens a page, after the `end` slot. The caret points, so a stylesheet mirrors it in a right-to-left document.
|
|
41
41
|
*/
|
|
42
42
|
export declare class HelixHeadlessDrilldownItem extends HelixElement {
|
|
43
43
|
/**
|
|
@@ -45,7 +45,7 @@ export declare class HelixHeadlessDrilldownItem extends HelixElement {
|
|
|
45
45
|
*/
|
|
46
46
|
disabled: boolean;
|
|
47
47
|
/**
|
|
48
|
-
* Whether this row holds the region's tab stop.
|
|
48
|
+
* Whether this row holds the region's tab stop. Set by the drill-down.
|
|
49
49
|
*
|
|
50
50
|
* A drill-down keeps one stop and moves within it on the arrows, so every
|
|
51
51
|
* other row is at `-1`. Leave it off every row, including the first, and
|
|
@@ -77,7 +77,7 @@ export declare class HelixHeadlessDrilldownItem extends HelixElement {
|
|
|
77
77
|
*/
|
|
78
78
|
showingPage: boolean;
|
|
79
79
|
/**
|
|
80
|
-
* Identifies the row to
|
|
80
|
+
* Identifies the row to your event listeners.
|
|
81
81
|
*/
|
|
82
82
|
value: string;
|
|
83
83
|
/**
|
|
@@ -112,8 +112,8 @@ export declare class HelixHeadlessDrilldownItem extends HelixElement {
|
|
|
112
112
|
/** Moves focus onto the row itself. */
|
|
113
113
|
focusItem(): void;
|
|
114
114
|
/**
|
|
115
|
-
* Whether this is the row
|
|
116
|
-
*
|
|
115
|
+
* Whether this is the current row, which in a drill-down is the row with
|
|
116
|
+
* focus.
|
|
117
117
|
*
|
|
118
118
|
* A radio group's selection is an answer it holds; a page of rows has no
|
|
119
119
|
* answer, only the row a reader has walked to, so focus is the whole of what
|
|
@@ -129,7 +129,7 @@ export declare class HelixHeadlessDrilldownItem extends HelixElement {
|
|
|
129
129
|
* dereferences what it ran out of.
|
|
130
130
|
*/
|
|
131
131
|
get selected(): boolean;
|
|
132
|
-
/**
|
|
132
|
+
/** Fires `helix-select` for this row. */
|
|
133
133
|
select(): void;
|
|
134
134
|
protected render(): TemplateResult | typeof nothing;
|
|
135
135
|
}
|