@fusion.dev/helix 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 +8259 -4085
- package/dist/accordion/item/accordion-item.d.ts +9 -10
- package/dist/accordion/root/accordion-root.d.ts +8 -9
- package/dist/announcement/root/announcement-root.d.ts +7 -7
- package/dist/app-header/root/app-header-root.d.ts +14 -12
- package/dist/area-chart/root/area-chart-root.d.ts +23 -32
- package/dist/aura/root/aura-root.d.ts +32 -31
- package/dist/avatar/group/avatar-group.d.ts +8 -11
- package/dist/avatar/root/avatar-root.d.ts +4 -5
- package/dist/badge/root/badge-root.d.ts +7 -8
- package/dist/bar-chart/root/bar-chart-root.d.ts +17 -16
- package/dist/blockquote/root/blockquote-root.d.ts +4 -5
- package/dist/breadcrumbs/breadcrumb/breadcrumb.d.ts +7 -7
- package/dist/breadcrumbs/root/breadcrumbs-root.d.ts +2 -2
- package/dist/button/root/button-root.d.ts +16 -13
- package/dist/button-group/root/button-group-root.d.ts +6 -6
- package/dist/callout/root/callout-root.d.ts +8 -8
- package/dist/canvas/edge/canvas-edge.d.ts +3 -3
- package/dist/canvas/node/canvas-node.d.ts +17 -18
- package/dist/canvas/root/canvas-root.d.ts +18 -19
- package/dist/card/root/card-root.d.ts +14 -14
- package/dist/carousel/root/carousel-root.d.ts +11 -14
- package/dist/chat/composer/chat-composer.d.ts +10 -11
- package/dist/chat/message/chat-message.d.ts +18 -18
- package/dist/chat/root/chat-root.d.ts +15 -18
- package/dist/checkbox/root/checkbox-root.d.ts +17 -16
- package/dist/checkbox-group/root/checkbox-group-root.d.ts +6 -5
- package/dist/code/root/code-root.d.ts +9 -9
- package/dist/code-block/root/code-block-root.d.ts +14 -15
- package/dist/color-input/root/color-input-root.d.ts +13 -18
- package/dist/color-picker/root/color-picker-root.d.ts +26 -27
- package/dist/combobox/root/combobox-root.css.js +3 -2
- package/dist/combobox/root/combobox-root.d.ts +8 -8
- package/dist/command/root/command-root.d.ts +5 -6
- package/dist/copy-button/root/copy-button-root.d.ts +4 -5
- package/dist/data-table/root/data-table-root.d.ts +30 -37
- package/dist/date-input/root/date-input-root.d.ts +15 -17
- package/dist/date-picker/root/date-picker-root.d.ts +11 -12
- package/dist/description-list/item/description-list-item.d.ts +2 -2
- package/dist/description-list/root/description-list-root.d.ts +13 -14
- package/dist/dialog/root/dialog-root.d.ts +9 -10
- package/dist/divider/root/divider-root.d.ts +11 -12
- package/dist/donut-chart/root/donut-chart-root.d.ts +12 -15
- package/dist/drawer/root/drawer-root.d.ts +14 -13
- package/dist/drilldown/item/drilldown-item.d.ts +3 -4
- package/dist/drilldown/root/drilldown-root.d.ts +6 -9
- package/dist/element-events.generated.js +7 -0
- package/dist/empty/root/empty-root.d.ts +3 -4
- package/dist/file-input/root/file-input-root.d.ts +8 -12
- package/dist/filter-input/chip/filter-chip.d.ts +11 -10
- package/dist/filter-input/field/filter-field.d.ts +7 -8
- package/dist/filter-input/menu/filter-menu.d.ts +7 -8
- package/dist/filter-input/operator/filter-operator.d.ts +5 -5
- package/dist/filter-input/root/filter-input-root.d.ts +25 -27
- package/dist/flex/root/flex-root.d.ts +9 -14
- package/dist/format-date/root/format-date-root.d.ts +5 -8
- package/dist/grid/root/grid-root.d.ts +13 -11
- package/dist/heatmap/root/heatmap-root.d.ts +34 -31
- package/dist/icon/root/icon-root.d.ts +6 -6
- package/dist/icon-button/root/icon-button-root.d.ts +9 -10
- package/dist/image/root/image-root.d.ts +10 -10
- package/dist/input/root/input-root.d.ts +10 -13
- package/dist/kbd/root/kbd-root.d.ts +6 -7
- package/dist/legend/root/legend-root.d.ts +19 -20
- package/dist/lightbox/item/lightbox-item.d.ts +4 -5
- package/dist/lightbox/root/lightbox-root.d.ts +13 -16
- package/dist/line-chart/root/line-chart-root.d.ts +24 -25
- package/dist/list/item/list-item.d.ts +7 -8
- package/dist/list/root/list-root.d.ts +7 -9
- package/dist/listbox/root/listbox-root.d.ts +8 -9
- package/dist/loader/root/loader-root.d.ts +5 -7
- package/dist/map/buildings/map-buildings.css.d.ts +1 -0
- package/dist/map/buildings/map-buildings.css.js +27 -0
- package/dist/map/buildings/map-buildings.d.ts +28 -0
- package/dist/map/buildings/map-buildings.js +20 -0
- package/dist/map/contours/map-contours.css.d.ts +1 -0
- package/dist/map/contours/map-contours.css.js +8 -0
- package/dist/map/contours/map-contours.d.ts +25 -0
- package/dist/map/contours/map-contours.js +16 -0
- package/dist/map/index.d.ts +5 -0
- package/dist/map/index.js +5 -0
- package/dist/map/landcover/map-landcover.css.d.ts +1 -0
- package/dist/map/landcover/map-landcover.css.js +5 -0
- package/dist/map/landcover/map-landcover.d.ts +25 -0
- package/dist/map/landcover/map-landcover.js +16 -0
- package/dist/map/marker/map-marker.css.js +5 -0
- package/dist/map/position/map-position.css.js +5 -0
- package/dist/map/raster/map-raster.css.d.ts +1 -0
- package/dist/map/raster/map-raster.css.js +4 -0
- package/dist/map/raster/map-raster.d.ts +23 -0
- package/dist/map/raster/map-raster.js +16 -0
- package/dist/map/root/map-root.css.js +218 -1
- package/dist/map/terrain/map-terrain.css.d.ts +1 -0
- package/dist/map/terrain/map-terrain.css.js +12 -0
- package/dist/map/terrain/map-terrain.d.ts +27 -0
- package/dist/map/terrain/map-terrain.js +16 -0
- package/dist/megamenu/root/megamenu-root.d.ts +14 -14
- package/dist/menu/item/menu-item.d.ts +8 -8
- package/dist/menu/root/menu-root.d.ts +9 -9
- package/dist/meter/root/meter-root.d.ts +29 -38
- package/dist/navigation/root/navigation-root.d.ts +4 -5
- package/dist/notifications/group/notification-group.d.ts +9 -13
- package/dist/notifications/notification/notification.d.ts +27 -33
- package/dist/notifications/root/notifications-root.d.ts +9 -11
- package/dist/number-input/root/number-input-root.d.ts +16 -18
- package/dist/object-inspector/root/object-inspector-root.d.ts +11 -12
- package/dist/option/group/option-group.d.ts +3 -4
- package/dist/option/root/option-root.d.ts +7 -8
- package/dist/orb/root/orb-root.d.ts +30 -36
- package/dist/outline/root/outline-root.d.ts +8 -10
- package/dist/pagination/root/pagination-root.d.ts +13 -23
- package/dist/pagination/size/pagination-size.d.ts +7 -7
- package/dist/pagination/summary/pagination-summary.d.ts +3 -4
- package/dist/pin-input/root/pin-input-root.d.ts +8 -11
- package/dist/popover/root/popover-root.d.ts +14 -16
- package/dist/progress/root/progress-root.d.ts +10 -13
- package/dist/qr-code/root/qr-code-root.d.ts +13 -14
- package/dist/quote/root/quote-root.d.ts +2 -2
- package/dist/radio/group/radio-group.d.ts +6 -6
- package/dist/radio/root/radio-root.d.ts +16 -19
- package/dist/rating/root/rating-root.d.ts +9 -9
- package/dist/sandbox/preview/sandbox-preview.d.ts +18 -19
- package/dist/sandbox/root/sandbox-root.d.ts +27 -27
- package/dist/sandbox/source/sandbox-source.d.ts +9 -12
- package/dist/sandbox/status-bar/sandbox-status-bar.d.ts +9 -11
- package/dist/sandbox/terminal/sandbox-terminal.d.ts +13 -15
- package/dist/sandbox/toolbar/sandbox-toolbar.d.ts +8 -9
- package/dist/scatter-chart/root/scatter-chart-root.d.ts +18 -29
- package/dist/scroll-area/root/scroll-area-root.d.ts +13 -13
- package/dist/select/root/select-root.d.ts +14 -14
- package/dist/shared/mixin-control-surface/mixin-control-surface.d.ts +8 -2
- package/dist/shared/viewport/viewport.css.js +5 -1
- package/dist/skeleton/root/skeleton-root.d.ts +6 -7
- package/dist/skip-link/root/skip-link-root.d.ts +16 -19
- package/dist/slider/root/slider-root.d.ts +16 -18
- package/dist/sparkline/root/sparkline-root.d.ts +16 -24
- package/dist/speed-dial/item/speed-dial-item.d.ts +5 -5
- package/dist/speed-dial/root/speed-dial-root.d.ts +3 -4
- package/dist/splitter/root/splitter-root.d.ts +23 -32
- package/dist/stat/group/stat-group.d.ts +4 -5
- package/dist/stat/root/stat-root.d.ts +4 -5
- package/dist/steps/root/steps-root.d.ts +12 -13
- package/dist/switch/root/switch-root.d.ts +13 -17
- package/dist/table/cell/table-cell.css.js +5 -0
- package/dist/table/cell/table-cell.d.ts +4 -4
- package/dist/table/column/table-column.d.ts +3 -4
- package/dist/table/root/table-root.d.ts +5 -6
- package/dist/table/row/table-row.d.ts +3 -3
- package/dist/tabs/panel/tab-panel.d.ts +2 -3
- package/dist/tabs/root/tabs-root.d.ts +12 -11
- package/dist/tabs/tab/tab.d.ts +4 -4
- package/dist/tag/root/tag-root.d.ts +10 -11
- package/dist/text/root/text-root.d.ts +22 -30
- package/dist/textarea/root/textarea-root.d.ts +4 -5
- package/dist/time-input/root/time-input-root.d.ts +12 -14
- package/dist/time-picker/root/time-picker-root.d.ts +8 -10
- package/dist/timeline/item/timeline-item.d.ts +2 -2
- package/dist/timeline/root/timeline-root.d.ts +3 -3
- package/dist/toast/item/toast-item.d.ts +7 -8
- package/dist/toast/root/toast-root.d.ts +10 -12
- package/dist/toggle/group/toggle-group.d.ts +10 -12
- package/dist/toggle/root/toggle-root.d.ts +2 -3
- package/dist/toolbar/root/toolbar-root.d.ts +3 -3
- package/dist/tooltip/root/tooltip-root.d.ts +10 -10
- package/dist/tour/root/tour-root.d.ts +5 -6
- package/dist/tour/stop/tour-stop.d.ts +14 -14
- package/dist/tree/item/tree-item.d.ts +6 -9
- package/dist/tree/root/tree-root.d.ts +7 -8
- package/dist/trend/root/trend-root.d.ts +12 -19
- package/dist/video/root/video-root.d.ts +15 -21
- package/dist/video-playlist/item/video-playlist-item.d.ts +4 -4
- package/dist/video-playlist/menu/video-playlist-menu.d.ts +14 -16
- package/dist/video-playlist/root/video-playlist-root.d.ts +5 -5
- package/dist/virtual-list/root/virtual-list-root.d.ts +6 -8
- package/package.json +6 -6
- package/types/jsx.d.ts +10064 -8833
- package/types/svelte.d.ts +5 -0
- package/types/vue.d.ts +1909 -1480
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
import { HelixHeadlessDivider } from '@fusion.dev/helix-headless/divider';
|
|
2
2
|
import type { CSSResultGroup } from 'lit';
|
|
3
3
|
/**
|
|
4
|
-
* @summary
|
|
4
|
+
* @summary A line that separates content into groups.
|
|
5
5
|
*
|
|
6
6
|
* @description
|
|
7
|
-
* A one-pixel rule in the border color
|
|
8
|
-
* default. A vertical divider stretches to its flex parent
|
|
9
|
-
*
|
|
10
|
-
* tall that is.
|
|
7
|
+
* A one-pixel rule in the border color that spans the full inline size by
|
|
8
|
+
* default. A vertical divider stretches to fit its flex parent, so it matches
|
|
9
|
+
* the height of what it sits beside.
|
|
11
10
|
*
|
|
12
11
|
* @since 0.1.0
|
|
13
12
|
* @status stable
|
|
@@ -15,14 +14,14 @@ import type { CSSResultGroup } from 'lit';
|
|
|
15
14
|
* @aliases Separator, Rule
|
|
16
15
|
* @documentation https://fusion.dev/helix/components/divider
|
|
17
16
|
*
|
|
18
|
-
* @csspart line - The
|
|
17
|
+
* @csspart line - The line.
|
|
19
18
|
*
|
|
20
|
-
* @cssproperty --divider-color -
|
|
21
|
-
* @cssproperty --divider-length -
|
|
22
|
-
* @cssproperty --divider-padding -
|
|
23
|
-
* @cssproperty --divider-padding-end -
|
|
24
|
-
* @cssproperty --divider-padding-start -
|
|
25
|
-
* @cssproperty --divider-thickness -
|
|
19
|
+
* @cssproperty --divider-color - The color of the line.
|
|
20
|
+
* @cssproperty --divider-length - The length of a vertical line. A horizontal line takes the divider's width.
|
|
21
|
+
* @cssproperty --divider-padding - The space removed from both ends of the line.
|
|
22
|
+
* @cssproperty --divider-padding-end - The space removed from the end of the line only.
|
|
23
|
+
* @cssproperty --divider-padding-start - The space removed from the start of the line only.
|
|
24
|
+
* @cssproperty --divider-thickness - The thickness of the line.
|
|
26
25
|
*/
|
|
27
26
|
export declare class HelixDivider extends HelixHeadlessDivider {
|
|
28
27
|
static styles: CSSResultGroup;
|
|
@@ -2,25 +2,22 @@ import { HelixHeadlessDonutChart } from '@fusion.dev/helix-headless/donut-chart'
|
|
|
2
2
|
import type { CSSResultGroup } from 'lit';
|
|
3
3
|
import '../../tooltip/index.js';
|
|
4
4
|
/**
|
|
5
|
-
* @summary
|
|
5
|
+
* @summary A chart that shows parts of a whole as a ring, read from a table.
|
|
6
6
|
*
|
|
7
7
|
* @description
|
|
8
|
-
* The slices take the series palette in order, so a legend beside
|
|
9
|
-
* same twenty-four.
|
|
8
|
+
* The slices take the series palette in order, so a legend beside the chart
|
|
9
|
+
* uses the same twenty-four colors.
|
|
10
10
|
*
|
|
11
|
-
* The ring starts at twelve o'clock
|
|
12
|
-
*
|
|
13
|
-
* is a fact about the picture, not about the numbers.
|
|
11
|
+
* The ring starts at twelve o'clock. The styled tier applies that as a
|
|
12
|
+
* rotation.
|
|
14
13
|
*
|
|
15
|
-
* A track is drawn under the slices, so
|
|
16
|
-
*
|
|
14
|
+
* A track is drawn under the slices, so when the values do not fill the ring,
|
|
15
|
+
* the gap shows as part of the ring.
|
|
17
16
|
*
|
|
18
|
-
* **
|
|
19
|
-
* and the ring's radius
|
|
20
|
-
* setting one in CSS
|
|
21
|
-
*
|
|
22
|
-
* units thick whatever its `hole`, so a pie was a small ring with a hole in it
|
|
23
|
-
* and `large` was drawn larger than the default.
|
|
17
|
+
* **Set the ring's thickness with `hole`.** There is no CSS hook for it,
|
|
18
|
+
* because the stroke width and the ring's radius must agree: the outer edge is
|
|
19
|
+
* `r + width / 2`, and setting one in CSS while the markup derives the other
|
|
20
|
+
* draws the ring wrong.
|
|
24
21
|
*
|
|
25
22
|
* @since 0.1.0
|
|
26
23
|
* @status stable
|
|
@@ -53,7 +50,7 @@ export declare class HelixDonutChart extends HelixHeadlessDonutChart {
|
|
|
53
50
|
*/
|
|
54
51
|
static tier: string;
|
|
55
52
|
/**
|
|
56
|
-
* How
|
|
53
|
+
* How strongly the slices are drawn.
|
|
57
54
|
*
|
|
58
55
|
* `solid` is the resting arrangement and selects nothing: a slice at full
|
|
59
56
|
* strength is what the base rule already draws. `subtle` is the ring as a wash
|
|
@@ -4,9 +4,9 @@ import type { CSSResultGroup } from 'lit';
|
|
|
4
4
|
* @summary A panel that slides in from an edge.
|
|
5
5
|
*
|
|
6
6
|
* @description
|
|
7
|
-
* The panel
|
|
8
|
-
*
|
|
9
|
-
*
|
|
7
|
+
* The panel slides and the scrim fades, animating only `transform` and
|
|
8
|
+
* `opacity`. At rest the surface is flat, and the motion shows that the drawer
|
|
9
|
+
* opened or closed.
|
|
10
10
|
*
|
|
11
11
|
* @since 0.1.0
|
|
12
12
|
* @status stable
|
|
@@ -22,25 +22,26 @@ import type { CSSResultGroup } from 'lit';
|
|
|
22
22
|
* @csspart panel - The sliding panel.
|
|
23
23
|
*
|
|
24
24
|
* @cssproperty --drawer-backdrop - Filter applied behind a `frosted` or `glass` drawer.
|
|
25
|
-
* Follows the theme's material policy
|
|
25
|
+
* Follows the theme's material policy. Set it to change the strength on one drawer.
|
|
26
26
|
* @cssproperty --drawer-background-color - Surface behind the panel.
|
|
27
27
|
* @cssproperty --drawer-border-color - Color of the panel's edge.
|
|
28
28
|
* @cssproperty --drawer-border-width - Width of the panel's edge. Follows
|
|
29
|
-
* `--helix-border-floating`, which is `0`, so the panel
|
|
30
|
-
* theme
|
|
29
|
+
* `--helix-border-floating`, which is `0`, so the panel stands out by its shadow unless your
|
|
30
|
+
* theme sets a border.
|
|
31
31
|
* @cssproperty --drawer-padding - Padding inside the panel.
|
|
32
|
-
* @cssproperty --drawer-padding-block-start - Padding above the header
|
|
33
|
-
* the other three so the first line clears the window's
|
|
34
|
-
* `--drawer-padding`, so setting that alone
|
|
32
|
+
* @cssproperty --drawer-padding-block-start - Padding above the header. It is one step larger than
|
|
33
|
+
* the other three sides, so the first line clears the window's edge. Falls back to
|
|
34
|
+
* `--drawer-padding`, so setting that alone sets all four sides.
|
|
35
35
|
* @cssproperty --drawer-radius - Corner radius on the edges that face the page.
|
|
36
|
-
* @cssproperty --drawer-scrim - The
|
|
37
|
-
* @cssproperty --drawer-shadow -
|
|
38
|
-
* floating surface
|
|
36
|
+
* @cssproperty --drawer-scrim - The tint over the page behind the drawer. Set it on the host, because a `var()` written inside `::backdrop` cannot read a token.
|
|
37
|
+
* @cssproperty --drawer-shadow - Shadow under the panel. Follows `--helix-shadow-floating`. A
|
|
38
|
+
* floating surface can sit over any content, so it has a shadow by default.
|
|
39
39
|
* @cssproperty --drawer-size - Width or height of the panel.
|
|
40
40
|
*/
|
|
41
41
|
export declare class HelixDrawer extends HelixHeadlessDrawer {
|
|
42
42
|
/**
|
|
43
|
-
*
|
|
43
|
+
* Makes the panel translucent, as `frosted` or `glass`. When it is not set,
|
|
44
|
+
* the panel is opaque.
|
|
44
45
|
*
|
|
45
46
|
* **The same pair `Card` and `App Header` draw**, and one attribute for the
|
|
46
47
|
* same reason: a backdrop filter behind an opaque ground filters nothing and a
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import { HelixHeadlessDrilldownItem } from '@fusion.dev/helix-headless/drilldown';
|
|
2
2
|
import type { CSSResultGroup } 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
|
-
*
|
|
8
|
-
* select
|
|
9
|
-
* lines up with the edge the eye is already following down the list.
|
|
7
|
+
* Each row is a full-width band that reaches both edges of the panel, like the
|
|
8
|
+
* options in a select, so the highlight lines up with the edge of the list.
|
|
10
9
|
*
|
|
11
10
|
* @since 0.1.0
|
|
12
11
|
* @status stable
|
|
@@ -1,18 +1,15 @@
|
|
|
1
1
|
import { HelixHeadlessDrilldown } from '@fusion.dev/helix-headless/drilldown';
|
|
2
2
|
import type { CSSResultGroup } from 'lit';
|
|
3
3
|
/**
|
|
4
|
-
* @summary A stack of pages
|
|
4
|
+
* @summary A stack of pages that shows one at a time, with a back button.
|
|
5
5
|
*
|
|
6
6
|
* @description
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
* deeper or came back: the panel simply holds different words. Sliding in the
|
|
10
|
-
* direction of travel says which happened, and it is most of the reason this is
|
|
11
|
-
* a component rather than a menu with its trigger removed.
|
|
7
|
+
* Pages slide in the direction of travel, so you can tell whether you went
|
|
8
|
+
* deeper or came back. Without motion, the panel only shows different text.
|
|
12
9
|
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
* `prefers-reduced-motion`
|
|
10
|
+
* The slide is a CSS animation, because the arriving page was not in the DOM on
|
|
11
|
+
* the previous frame, so there is nothing to transition from. Under
|
|
12
|
+
* `prefers-reduced-motion` the pages swap instantly, as they do in `Menu`.
|
|
16
13
|
*
|
|
17
14
|
* @since 0.1.0
|
|
18
15
|
* @status stable
|
|
@@ -105,13 +105,20 @@ registerElementEvents({
|
|
|
105
105
|
'helix-map-cluster',
|
|
106
106
|
'helix-map-pan',
|
|
107
107
|
'helix-map-part-change',
|
|
108
|
+
'helix-map-rotate',
|
|
109
|
+
'helix-map-tilt',
|
|
108
110
|
'helix-map-zoom',
|
|
109
111
|
],
|
|
110
112
|
'helix-map-area': ['helix-map-part-change'],
|
|
113
|
+
'helix-map-buildings': ['helix-map-part-change'],
|
|
114
|
+
'helix-map-contours': ['helix-map-part-change'],
|
|
115
|
+
'helix-map-landcover': ['helix-map-part-change'],
|
|
111
116
|
'helix-map-marker': ['helix-map-cluster', 'helix-map-part-change'],
|
|
112
117
|
'helix-map-points': ['helix-activate', 'helix-map-cluster', 'helix-map-part-change'],
|
|
113
118
|
'helix-map-position': ['helix-map-part-change'],
|
|
119
|
+
'helix-map-raster': ['helix-map-part-change'],
|
|
114
120
|
'helix-map-route': ['helix-map-part-change'],
|
|
121
|
+
'helix-map-terrain': ['helix-map-part-change'],
|
|
115
122
|
'helix-megamenu': ['helix-before-close', 'helix-before-open', 'toggle'],
|
|
116
123
|
'helix-menu': ['helix-before-close', 'helix-before-open', 'helix-select', 'toggle'],
|
|
117
124
|
'helix-menu-item': ['helix-select'],
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import { HelixHeadlessEmpty } from '@fusion.dev/helix-headless/empty';
|
|
2
2
|
import type { CSSResultGroup } from 'lit';
|
|
3
3
|
/**
|
|
4
|
-
* @summary
|
|
4
|
+
* @summary A message that a region has nothing in it, and the next step to take.
|
|
5
5
|
*
|
|
6
6
|
* @description
|
|
7
|
-
* Centered
|
|
8
|
-
*
|
|
9
|
-
* empty.
|
|
7
|
+
* Centered with space around it. An empty view is the only thing on screen, and
|
|
8
|
+
* pressed against the top edge it looks broken.
|
|
10
9
|
*
|
|
11
10
|
* @since 0.1.0
|
|
12
11
|
* @status stable
|
|
@@ -3,22 +3,18 @@ import type { CSSResultGroup } from 'lit';
|
|
|
3
3
|
import '../../icon/index.js';
|
|
4
4
|
import '../../tag/index.js';
|
|
5
5
|
/**
|
|
6
|
-
* @summary A
|
|
6
|
+
* @summary A field for choosing files from a picker or by dropping them on it.
|
|
7
7
|
*
|
|
8
8
|
* @description
|
|
9
|
-
* The field is a box
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
* only affordance one has before anything is being dragged.
|
|
9
|
+
* The field is a box, because nothing is typed into it and the whole area is
|
|
10
|
+
* the target. The dashed border marks it as a drop target before anything is
|
|
11
|
+
* dragged.
|
|
13
12
|
*
|
|
14
|
-
* The native input is
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
* out of the form, and a script clicking a hidden input is the same thing with
|
|
18
|
-
* more moving parts.
|
|
13
|
+
* The native input is laid over the field at zero opacity, so a click anywhere
|
|
14
|
+
* on the box lands on the input and opens the picker. `display: none` would
|
|
15
|
+
* remove the input from the tab order and from the form.
|
|
19
16
|
*
|
|
20
|
-
* The focus ring is drawn on the field, because the
|
|
21
|
-
* invisible.
|
|
17
|
+
* The focus ring is drawn on the field, because the input is invisible.
|
|
22
18
|
*
|
|
23
19
|
* @since 0.1.0
|
|
24
20
|
* @status stable
|
|
@@ -1,16 +1,17 @@
|
|
|
1
1
|
import { HelixHeadlessFilterChip } from '@fusion.dev/helix-headless/filter-input';
|
|
2
2
|
import type { CSSResultGroup } from 'lit';
|
|
3
3
|
/**
|
|
4
|
-
* @summary One filter
|
|
4
|
+
* @summary One active filter: a field, a comparison, and the values it is compared to.
|
|
5
5
|
*
|
|
6
6
|
* @description
|
|
7
|
-
*
|
|
8
|
-
* The field is the quietest
|
|
9
|
-
*
|
|
10
|
-
*
|
|
7
|
+
* Draws three segments and a remove control, with the values most prominent.
|
|
8
|
+
* The field is the quietest segment, because the user picked it. The values
|
|
9
|
+
* carry the most weight, because a row of chips is scanned for what each filter
|
|
10
|
+
* is set to.
|
|
11
11
|
*
|
|
12
|
-
* The operator segment is drawn only
|
|
13
|
-
*
|
|
12
|
+
* The operator segment is drawn only when there is an operator, so the common
|
|
13
|
+
* chip shows only the field and the values. The headless element documents the
|
|
14
|
+
* rule.
|
|
14
15
|
*
|
|
15
16
|
* @since 0.23.0
|
|
16
17
|
* @status stable
|
|
@@ -18,9 +19,9 @@ import type { CSSResultGroup } from 'lit';
|
|
|
18
19
|
* @aliases FilterToken, FacetChip
|
|
19
20
|
* @documentation https://fusion.dev/helix/components/filter-input
|
|
20
21
|
*
|
|
21
|
-
* @cssproperty --filter-input-chip-background-color -
|
|
22
|
-
* @cssproperty --filter-input-chip-border-color -
|
|
23
|
-
* @cssproperty --filter-input-chip-radius -
|
|
22
|
+
* @cssproperty --filter-input-chip-background-color - The fill behind the chip.
|
|
23
|
+
* @cssproperty --filter-input-chip-border-color - The color of the chip's border.
|
|
24
|
+
* @cssproperty --filter-input-chip-radius - The corner radius of the chip.
|
|
24
25
|
*/
|
|
25
26
|
export declare class HelixFilterChip extends HelixHeadlessFilterChip {
|
|
26
27
|
static styles: CSSResultGroup;
|
|
@@ -1,17 +1,16 @@
|
|
|
1
1
|
import { HelixHeadlessFilterField } from '@fusion.dev/helix-headless/filter-input';
|
|
2
2
|
import type { CSSResultGroup } from 'lit';
|
|
3
3
|
/**
|
|
4
|
-
* @summary
|
|
4
|
+
* @summary A field that a filter can apply to, with its comparisons and values.
|
|
5
5
|
*
|
|
6
6
|
* @description
|
|
7
|
-
*
|
|
8
|
-
*
|
|
7
|
+
* Declares a filter field. It renders nothing, and the filter input reads it to
|
|
8
|
+
* build its menu. The headless element documents the model.
|
|
9
9
|
*
|
|
10
|
-
* The stylesheet
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
* away from its neighbors.
|
|
10
|
+
* The stylesheet has one rule, `display: none`, as a guard. Inside a filter
|
|
11
|
+
* input, the element is never assigned to a slot and never renders. Anywhere
|
|
12
|
+
* else, it would be an empty inline box that still counts as a flex item and
|
|
13
|
+
* gets `gap` spacing.
|
|
15
14
|
*
|
|
16
15
|
* @since 0.23.0
|
|
17
16
|
* @status stable
|
|
@@ -3,16 +3,15 @@ import type { CSSResultGroup } from 'lit';
|
|
|
3
3
|
import '../../divider/index.js';
|
|
4
4
|
import '../../menu/index.js';
|
|
5
5
|
/**
|
|
6
|
-
* @summary
|
|
6
|
+
* @summary A menu for building a filter by picking a field and checking its values.
|
|
7
7
|
*
|
|
8
8
|
* @description
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
* stylesheet is one rule, and it is `display: contents`.
|
|
9
|
+
* Draws nothing of its own. The trigger is yours, and the pages are `Menu`'s,
|
|
10
|
+
* whose reserved tick column keeps ticked and unticked values aligned. The
|
|
11
|
+
* element's stylesheet has one rule: `display: contents`.
|
|
13
12
|
*
|
|
14
|
-
* The headless
|
|
15
|
-
* immediately and why the
|
|
13
|
+
* The headless element documents the model, including why a tick applies a
|
|
14
|
+
* filter immediately and why the menu decides the operator.
|
|
16
15
|
*
|
|
17
16
|
* @since 0.25.0
|
|
18
17
|
* @status stable
|
|
@@ -20,7 +19,7 @@ import '../../menu/index.js';
|
|
|
20
19
|
* @aliases FacetPicker, FilterBuilder
|
|
21
20
|
* @documentation https://fusion.dev/helix/components/filter-input
|
|
22
21
|
*
|
|
23
|
-
* @event {HelixFacetEvent} helix-facet - Fired when a field's values change. Cancelable:
|
|
22
|
+
* @event {HelixFacetEvent} helix-facet - Fired when a field's values change. Cancelable: call `preventDefault()` to keep the previous values.
|
|
24
23
|
*/
|
|
25
24
|
export declare class HelixFilterMenu extends HelixHeadlessFilterMenu {
|
|
26
25
|
static tier: string;
|
|
@@ -4,12 +4,12 @@ import type { CSSResultGroup } from 'lit';
|
|
|
4
4
|
* @summary One way a filter can compare a field to its values.
|
|
5
5
|
*
|
|
6
6
|
* @description
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
* words are
|
|
7
|
+
* Declares an operator. It renders nothing, and the field it is written under
|
|
8
|
+
* reads it. The headless element documents the model, including why the
|
|
9
|
+
* operator words are yours.
|
|
10
10
|
*
|
|
11
|
-
* The stylesheet
|
|
12
|
-
*
|
|
11
|
+
* The stylesheet has one rule, `display: none`, as a guard, for the reason
|
|
12
|
+
* given on `FilterField`.
|
|
13
13
|
*
|
|
14
14
|
* @since 0.23.0
|
|
15
15
|
* @status stable
|
|
@@ -3,27 +3,24 @@ import type { CSSResultGroup } from 'lit';
|
|
|
3
3
|
import '../../icon/index.js';
|
|
4
4
|
import '../../option/index.js';
|
|
5
5
|
/**
|
|
6
|
-
* @summary A field
|
|
6
|
+
* @summary A text field for filters, with the active filters shown in it as tokens.
|
|
7
7
|
*
|
|
8
8
|
* @description
|
|
9
|
-
* The frame is
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
* arrangement Combobox takes when it is holding a selection.
|
|
9
|
+
* The frame is drawn around the field, so the tokens sit in the same box as the
|
|
10
|
+
* text and one focus ring surrounds the whole control. The field grows one line
|
|
11
|
+
* at a time as tokens are added, as Combobox does when it holds a selection.
|
|
13
12
|
*
|
|
14
|
-
*
|
|
15
|
-
* them
|
|
16
|
-
*
|
|
13
|
+
* Tokens are your own elements, so the only rule for them keeps their size and
|
|
14
|
+
* stops them running past the field. A `Tag` slotted into `tags` already looks
|
|
15
|
+
* like a token.
|
|
17
16
|
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
* straight through it. That is why this surface scrolls where Combobox's does
|
|
23
|
-
* not: there is no list inside to do it.
|
|
17
|
+
* The suggestion panel is this element's own box with `role="listbox"`, and the
|
|
18
|
+
* options pass their own `helix-select` through it. Combobox puts a
|
|
19
|
+
* `helix-listbox` in its panel, which scrolls, because Combobox owns the
|
|
20
|
+
* selection. This panel has no list inside it, so the panel itself scrolls.
|
|
24
21
|
*
|
|
25
|
-
* Height comes from the region, like every other control
|
|
26
|
-
*
|
|
22
|
+
* Height comes from the region, like every other control. Set `data-density` on
|
|
23
|
+
* a container. The element has no `size`.
|
|
27
24
|
*
|
|
28
25
|
* @since 0.1.0
|
|
29
26
|
* @status stable
|
|
@@ -31,17 +28,18 @@ import '../../option/index.js';
|
|
|
31
28
|
* @aliases SearchField, FacetInput, TokenInput
|
|
32
29
|
* @documentation https://fusion.dev/helix/components/filter-input
|
|
33
30
|
*
|
|
34
|
-
* @cssproperty --filter-input-action-padding-inline -
|
|
35
|
-
* @cssproperty --filter-input-action-size -
|
|
36
|
-
* @cssproperty --filter-input-background-color -
|
|
37
|
-
* @cssproperty --filter-input-border-color -
|
|
38
|
-
* @cssproperty --filter-input-border-width -
|
|
39
|
-
* @cssproperty --filter-input-control-size -
|
|
40
|
-
* @cssproperty --filter-input-lead-border-color - The
|
|
41
|
-
* @cssproperty --filter-input-panel-size -
|
|
42
|
-
* @cssproperty --filter-input-shadow -
|
|
43
|
-
* floating
|
|
44
|
-
*
|
|
31
|
+
* @cssproperty --filter-input-action-padding-inline - The space on either side of a slotted control's label. It follows `--helix-space-xs`, the space a token uses.
|
|
32
|
+
* @cssproperty --filter-input-action-size - The height of a control slotted at either end. It follows `--helix-size-tag`, so it matches the height of the tokens beside it.
|
|
33
|
+
* @cssproperty --filter-input-background-color - The fill behind the field.
|
|
34
|
+
* @cssproperty --filter-input-border-color - The color of the suggestion panel's border.
|
|
35
|
+
* @cssproperty --filter-input-border-width - The width of the suggestion panel's border. It follows `--helix-border-floating`.
|
|
36
|
+
* @cssproperty --filter-input-control-size - The smallest width the text keeps as tokens fill the line. Below it, the text wraps to its own line.
|
|
37
|
+
* @cssproperty --filter-input-lead-border-color - The color of the line between the leading box and the text.
|
|
38
|
+
* @cssproperty --filter-input-panel-size - The width of the suggestion panel. It matches the field by default.
|
|
39
|
+
* @cssproperty --filter-input-shadow - The shadow under the panel. It follows
|
|
40
|
+
* `--helix-shadow-floating`. The panel can sit over any content, so it has a
|
|
41
|
+
* shadow by default.
|
|
42
|
+
* @cssproperty --filter-input-size - The height of the empty field. The field grows from this height.
|
|
45
43
|
*/
|
|
46
44
|
export declare class HelixFilterInput extends HelixHeadlessFilterInput {
|
|
47
45
|
static styles: CSSResultGroup;
|
|
@@ -1,22 +1,17 @@
|
|
|
1
1
|
import { HelixElement } from '@fusion.dev/helix-core';
|
|
2
2
|
import type { CSSResultGroup, TemplateResult } from 'lit';
|
|
3
3
|
/**
|
|
4
|
-
* @summary
|
|
4
|
+
* @summary A layout that places its children in a row or a column.
|
|
5
5
|
*
|
|
6
6
|
* @description
|
|
7
|
-
* The host is the flex container
|
|
8
|
-
*
|
|
9
|
-
* replaces.
|
|
7
|
+
* The host is the flex container and its only child is a slot, so
|
|
8
|
+
* `<helix-flex>` adds no box beyond the `<div>` it replaces.
|
|
10
9
|
*
|
|
11
|
-
* There is no separate Stack.
|
|
12
|
-
* second element whose whole definition is one default of the first is a name
|
|
13
|
-
* to learn rather than a capability to gain.
|
|
10
|
+
* There is no separate Stack component. For a stack, set `direction="column"`.
|
|
14
11
|
*
|
|
15
|
-
*
|
|
16
|
-
* scale. A layout that can say `gap="13px"` is one that will.
|
|
12
|
+
* `gap` takes a space token name, so spacing stays on the scale.
|
|
17
13
|
*
|
|
18
|
-
*
|
|
19
|
-
* behavior separate from styling, and this is entirely styling.
|
|
14
|
+
* Flex is presentation only, so it has no headless tier.
|
|
20
15
|
*
|
|
21
16
|
* @since 0.1.0
|
|
22
17
|
* @status stable
|
|
@@ -28,7 +23,7 @@ import type { CSSResultGroup, TemplateResult } from 'lit';
|
|
|
28
23
|
*/
|
|
29
24
|
export declare class HelixFlex extends HelixElement {
|
|
30
25
|
/**
|
|
31
|
-
*
|
|
26
|
+
* How items align across the direction, set as `align-items`.
|
|
32
27
|
*
|
|
33
28
|
* **Named for the CSS property it sets, because it is that property.** A flex
|
|
34
29
|
* container is the one place where the box-alignment words are already the
|
|
@@ -55,11 +50,11 @@ export declare class HelixFlex extends HelixElement {
|
|
|
55
50
|
*/
|
|
56
51
|
gap?: 'none' | '2xs' | 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl' | '3xl';
|
|
57
52
|
/**
|
|
58
|
-
* Flows with surrounding text
|
|
53
|
+
* Flows with the surrounding text, taking only the width of its items.
|
|
59
54
|
*/
|
|
60
55
|
inline: boolean;
|
|
61
56
|
/**
|
|
62
|
-
*
|
|
57
|
+
* How items are spread along the direction, set as `justify-content`.
|
|
63
58
|
*
|
|
64
59
|
* Named for the property it sets, the way `alignItems` is. `between` and
|
|
65
60
|
* `around` drop the `space-` prefix and nothing else does, because those two
|
|
@@ -1,16 +1,13 @@
|
|
|
1
1
|
import { HelixHeadlessFormatDate } from '@fusion.dev/helix-headless/format-date';
|
|
2
2
|
import type { CSSResultGroup } from 'lit';
|
|
3
3
|
/**
|
|
4
|
-
* @summary A timestamp,
|
|
4
|
+
* @summary A timestamp, formatted for the user's locale.
|
|
5
5
|
*
|
|
6
6
|
* @description
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
* edge as it does, which in a feed is a whole column shifting whenever any row
|
|
12
|
-
* in it ticks over. `tabular-nums` in that mode and not in the other, because a
|
|
13
|
-
* date is written once and should sit in the text like the text.
|
|
7
|
+
* Takes the font family, size, and color of the surrounding text. In `elapsed`
|
|
8
|
+
* mode it uses `tabular-nums`, so a column of readings in a feed does not shift
|
|
9
|
+
* as they count up. A date keeps proportional figures, so it sits in the text
|
|
10
|
+
* like the words around it.
|
|
14
11
|
*
|
|
15
12
|
* @since 0.1.0
|
|
16
13
|
* @status stable
|
|
@@ -1,15 +1,17 @@
|
|
|
1
1
|
import { HelixElement } from '@fusion.dev/helix-core';
|
|
2
2
|
import type { CSSResultGroup, PropertyValues, TemplateResult } from 'lit';
|
|
3
3
|
/**
|
|
4
|
-
* @summary
|
|
4
|
+
* @summary A layout that places its children on a grid.
|
|
5
5
|
*
|
|
6
6
|
* @description
|
|
7
|
-
*
|
|
8
|
-
* `min` fills as many equal columns as fit above that width, which is a
|
|
9
|
-
* responsive layout with no breakpoint to maintain. Setting `min` wins, because
|
|
10
|
-
* a fixed count that also reflows is two intentions in one element.
|
|
7
|
+
* Set columns in one of two ways:
|
|
11
8
|
*
|
|
12
|
-
*
|
|
9
|
+
* - `columns` sets a fixed count.
|
|
10
|
+
* - `min` fits as many equal columns as there is room for at that width, so the
|
|
11
|
+
* layout responds with no breakpoints to maintain.
|
|
12
|
+
*
|
|
13
|
+
* If you set both, `min` wins. The grid is presentation only, so there is no
|
|
14
|
+
* headless tier.
|
|
13
15
|
*
|
|
14
16
|
* @since 0.1.0
|
|
15
17
|
* @status stable
|
|
@@ -19,11 +21,11 @@ import type { CSSResultGroup, PropertyValues, TemplateResult } from 'lit';
|
|
|
19
21
|
*
|
|
20
22
|
* @slot - The items to lay out.
|
|
21
23
|
*
|
|
22
|
-
* @cssproperty --grid-columns - An explicit track list
|
|
24
|
+
* @cssproperty --grid-columns - An explicit track list. It overrides `min` and `columns`. Use it for tracks of unequal widths, which neither attribute can set.
|
|
23
25
|
*/
|
|
24
26
|
export declare class HelixGrid extends HelixElement {
|
|
25
27
|
/**
|
|
26
|
-
*
|
|
28
|
+
* How each cell aligns within its row. Sets `align-items`.
|
|
27
29
|
*
|
|
28
30
|
* **Named for the CSS property it sets**, the way `Flex` is, and the same
|
|
29
31
|
* property on a grid: it places every cell in its row's track rather than
|
|
@@ -39,15 +41,15 @@ export declare class HelixGrid extends HelixElement {
|
|
|
39
41
|
*/
|
|
40
42
|
alignItems?: 'start' | 'center' | 'end' | 'stretch';
|
|
41
43
|
/**
|
|
42
|
-
*
|
|
44
|
+
* A fixed number of equal columns.
|
|
43
45
|
*/
|
|
44
46
|
columns?: number;
|
|
45
47
|
/**
|
|
46
|
-
*
|
|
48
|
+
* The space between cells, as a step on the space scale.
|
|
47
49
|
*/
|
|
48
50
|
gap?: 'none' | '2xs' | 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl' | '3xl';
|
|
49
51
|
/**
|
|
50
|
-
*
|
|
52
|
+
* The minimum column width. The grid fits as many columns as the width allows.
|
|
51
53
|
*
|
|
52
54
|
* Takes precedence over `columns`: a grid that both fixes a count and reflows
|
|
53
55
|
* is two intentions in one element.
|