@fusion.dev/helix 0.2.0 → 0.3.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 -256
- package/dist/accordion/item/accordion-item.css.js +0 -1
- package/dist/accordion/item/accordion-item.js +0 -29
- package/dist/accordion/root/accordion-root.css.js +0 -1
- package/dist/accordion/root/accordion-root.js +0 -20
- package/dist/announcement/root/announcement-root.css.js +0 -1
- package/dist/announcement/root/announcement-root.js +0 -16
- package/dist/app-header/root/app-header-root.css.js +0 -1
- package/dist/app-header/root/app-header-root.js +0 -45
- package/dist/aura/root/aura-axis.js +0 -58
- package/dist/aura/root/aura-root.css.js +0 -1
- package/dist/aura/root/aura-root.js +0 -520
- package/dist/aura/root/aura-shader.js +0 -35
- package/dist/avatar/group/avatar-group.css.js +0 -1
- package/dist/avatar/group/avatar-group.js +0 -24
- package/dist/avatar/root/avatar-root.css.js +0 -1
- package/dist/avatar/root/avatar-root.js +0 -23
- package/dist/badge/root/badge-root.css.js +0 -1
- package/dist/badge/root/badge-root.d.ts +2 -6
- package/dist/badge/root/badge-root.js +0 -18
- package/dist/bar-chart/root/bar-chart-root.css.js +0 -1
- package/dist/bar-chart/root/bar-chart-root.js +0 -50
- package/dist/blockquote/root/blockquote-root.css.js +0 -1
- package/dist/blockquote/root/blockquote-root.js +0 -17
- package/dist/breadcrumbs/breadcrumb/breadcrumb.css.js +0 -1
- package/dist/breadcrumbs/breadcrumb/breadcrumb.js +0 -28
- package/dist/breadcrumbs/root/breadcrumbs-root.css.js +0 -1
- package/dist/breadcrumbs/root/breadcrumbs-root.js +0 -19
- package/dist/button/root/button-root.css.js +0 -1
- package/dist/button/root/button-root.js +0 -38
- package/dist/button-group/root/button-group-root.css.js +0 -1
- package/dist/button-group/root/button-group-root.js +0 -24
- package/dist/callout/root/callout-root.css.js +0 -1
- package/dist/callout/root/callout-root.js +0 -26
- package/dist/card/root/card-root.css.js +0 -1
- package/dist/card/root/card-root.js +0 -45
- package/dist/carousel/root/carousel-root.css.js +0 -1
- package/dist/carousel/root/carousel-root.js +0 -24
- package/dist/chat/composer/chat-composer.css.js +0 -1
- package/dist/chat/composer/chat-composer.js +0 -26
- package/dist/chat/message/chat-message.css.js +0 -1
- package/dist/chat/message/chat-message.js +0 -29
- package/dist/chat/root/chat-root.css.js +0 -1
- package/dist/chat/root/chat-root.js +0 -38
- package/dist/checkbox/root/checkbox-root.css.js +0 -1
- package/dist/checkbox/root/checkbox-root.js +0 -26
- package/dist/checkbox-group/root/checkbox-group-root.css.js +0 -1
- package/dist/checkbox-group/root/checkbox-group-root.js +0 -15
- package/dist/code/root/code-root.css.js +0 -1
- package/dist/code/root/code-root.js +0 -21
- package/dist/code-block/root/code-block-root.css.js +0 -1
- package/dist/code-block/root/code-block-root.js +0 -19
- package/dist/color-input/root/color-input-root.css.js +0 -1
- package/dist/color-input/root/color-input-root.js +0 -42
- package/dist/color-picker/root/color-picker-root.css.js +0 -1
- package/dist/color-picker/root/color-picker-root.js +0 -42
- package/dist/combobox/root/combobox-root.css.js +0 -1
- package/dist/combobox/root/combobox-root.js +0 -28
- package/dist/command/root/command-root.css.js +0 -1
- package/dist/command/root/command-root.js +0 -21
- package/dist/copy-button/root/copy-button-root.css.js +0 -1
- package/dist/copy-button/root/copy-button-root.js +0 -14
- package/dist/data-table/root/data-table-root.css.js +0 -1
- package/dist/data-table/root/data-table-root.js +0 -39
- package/dist/date-input/root/date-input-root.css.js +0 -1
- package/dist/date-input/root/date-input-root.js +0 -38
- package/dist/date-picker/root/date-picker-root.css.js +0 -1
- package/dist/date-picker/root/date-picker-root.js +0 -28
- package/dist/dialog/root/dialog-root.css.js +0 -1
- package/dist/dialog/root/dialog-root.js +0 -31
- package/dist/divider/root/divider-root.css.js +0 -1
- package/dist/divider/root/divider-root.js +0 -24
- package/dist/donut-chart/root/donut-chart-root.css.js +0 -1
- package/dist/donut-chart/root/donut-chart-root.js +0 -49
- package/dist/drawer/root/drawer-root.css.js +0 -1
- package/dist/drawer/root/drawer-root.js +0 -38
- package/dist/drilldown/item/drilldown-item.css.js +0 -1
- package/dist/drilldown/item/drilldown-item.js +0 -15
- package/dist/drilldown/root/drilldown-root.css.js +0 -1
- package/dist/drilldown/root/drilldown-root.js +0 -23
- package/dist/element-events.generated.js +0 -5
- package/dist/empty/root/empty-root.css.js +0 -1
- package/dist/empty/root/empty-root.js +0 -16
- package/dist/file-input/root/file-input-root.css.js +0 -1
- package/dist/file-input/root/file-input-root.js +0 -30
- package/dist/flex/root/flex-root.css.js +0 -1
- package/dist/flex/root/flex-root.js +0 -32
- package/dist/format-date/root/format-date-root.css.js +0 -1
- package/dist/format-date/root/format-date-root.js +0 -17
- package/dist/grid/root/grid-root.css.js +0 -1
- package/dist/grid/root/grid-root.js +0 -69
- package/dist/heatmap/root/heatmap-root.css.js +0 -1
- package/dist/heatmap/root/heatmap-root.d.ts +9 -11
- package/dist/heatmap/root/heatmap-root.js +0 -73
- package/dist/icon/glyph.css.js +0 -1
- package/dist/icon/root/icon-root.css.js +0 -1
- package/dist/icon/root/icon-root.js +0 -19
- package/dist/icon-button/root/icon-button-root.css.js +0 -1
- package/dist/icon-button/root/icon-button-root.js +0 -35
- package/dist/image/root/image-root.css.js +0 -1
- package/dist/image/root/image-root.js +0 -28
- package/dist/index.js +0 -5
- package/dist/input/root/input-root.css.js +0 -1
- package/dist/input/root/input-root.js +0 -28
- package/dist/kbd/root/kbd-root.css.js +0 -1
- package/dist/kbd/root/kbd-root.js +0 -20
- package/dist/legend/root/legend-root.css.js +0 -1
- package/dist/legend/root/legend-root.js +0 -35
- package/dist/line-chart/root/line-chart-root.css.js +0 -1
- package/dist/line-chart/root/line-chart-root.js +0 -47
- package/dist/list/item/list-item.css.js +0 -1
- package/dist/list/item/list-item.js +0 -38
- package/dist/list/root/list-root.css.js +0 -1
- package/dist/list/root/list-root.js +0 -23
- package/dist/listbox/root/listbox-root.css.js +0 -1
- package/dist/listbox/root/listbox-root.js +0 -22
- package/dist/loader/root/loader-root.css.js +0 -1
- package/dist/loader/root/loader-root.js +0 -19
- package/dist/megamenu/root/megamenu-root.css.js +0 -1
- package/dist/megamenu/root/megamenu-root.js +0 -24
- package/dist/menu/item/menu-item.css.js +0 -1
- package/dist/menu/item/menu-item.js +0 -16
- package/dist/menu/root/menu-root.css.js +0 -1
- package/dist/menu/root/menu-root.js +0 -26
- package/dist/meter/root/meter-root.css.js +0 -1
- package/dist/meter/root/meter-root.js +0 -50
- package/dist/mixins/mixin-control-surface/mixin-control-surface.js +0 -3
- package/dist/navigation/root/navigation-root.css.js +0 -1
- package/dist/navigation/root/navigation-root.js +0 -18
- package/dist/notifications/notification/notification.css.js +0 -1
- package/dist/notifications/notification/notification.js +0 -53
- package/dist/notifications/root/notifications-root.css.js +0 -1
- package/dist/notifications/root/notifications-root.js +0 -31
- package/dist/number-input/root/number-input-root.css.js +0 -1
- package/dist/number-input/root/number-input-root.js +0 -31
- package/dist/option/group/option-group.css.js +0 -1
- package/dist/option/group/option-group.js +0 -13
- package/dist/option/root/option-root.css.js +0 -1
- package/dist/option/root/option-root.js +0 -20
- package/dist/outline/root/outline-root.css.js +0 -1
- package/dist/outline/root/outline-root.js +0 -21
- package/dist/pagination/root/pagination-root.css.js +0 -1
- package/dist/pagination/root/pagination-root.js +0 -49
- package/dist/pagination/size/pagination-size.css.js +0 -1
- package/dist/pagination/size/pagination-size.js +0 -25
- package/dist/pagination/summary/pagination-summary.css.js +0 -1
- package/dist/pagination/summary/pagination-summary.js +0 -13
- package/dist/pin-input/root/pin-input-root.css.js +0 -1
- package/dist/pin-input/root/pin-input-root.js +0 -27
- package/dist/popover/root/popover-root.css.js +0 -1
- package/dist/popover/root/popover-root.js +0 -30
- package/dist/progress/root/progress-root.css.js +0 -1
- package/dist/progress/root/progress-root.js +0 -25
- package/dist/qr-code/root/qr-code-root.css.js +0 -1
- package/dist/qr-code/root/qr-code-root.js +0 -27
- package/dist/quote/root/quote-root.css.js +0 -1
- package/dist/quote/root/quote-root.js +0 -15
- package/dist/radio/group/radio-group.css.js +0 -1
- package/dist/radio/group/radio-group.js +0 -16
- package/dist/radio/root/radio-root.css.js +0 -1
- package/dist/radio/root/radio-root.js +0 -46
- package/dist/rating/root/rating-root.css.js +0 -1
- package/dist/rating/root/rating-root.js +0 -22
- package/dist/sandbox/index.js +0 -14
- package/dist/sandbox/preview/sandbox-preview.css.js +0 -1
- package/dist/sandbox/preview/sandbox-preview.js +0 -182
- package/dist/sandbox/root/sandbox-root.css.js +0 -1
- package/dist/sandbox/root/sandbox-root.js +1 -295
- package/dist/sandbox/source/sandbox-source.css.js +0 -1
- package/dist/sandbox/source/sandbox-source.js +0 -77
- package/dist/sandbox/status-bar/sandbox-status-bar.css.js +0 -1
- package/dist/sandbox/status-bar/sandbox-status-bar.js +0 -38
- package/dist/sandbox/terminal/sandbox-terminal.css.js +0 -1
- package/dist/sandbox/terminal/sandbox-terminal.js +0 -54
- package/dist/sandbox/toolbar/sandbox-toolbar.css.js +0 -1
- package/dist/sandbox/toolbar/sandbox-toolbar.js +0 -29
- package/dist/scroll-area/root/scroll-area-root.css.js +0 -1
- package/dist/scroll-area/root/scroll-area-root.js +0 -24
- package/dist/select/root/select-root.css.js +0 -1
- package/dist/select/root/select-root.js +0 -33
- package/dist/shared/chart/series.css.js +0 -1
- package/dist/shared/chart/terminus.css.js +0 -1
- package/dist/shared/field/field-inline.css.js +0 -1
- package/dist/shared/field/field-stacked.css.js +0 -1
- package/dist/shared/field/field.css.js +0 -1
- package/dist/skeleton/root/skeleton-root.css.js +0 -1
- package/dist/skeleton/root/skeleton-root.js +0 -18
- package/dist/slider/root/slider-root.css.js +0 -1
- package/dist/slider/root/slider-root.js +0 -32
- package/dist/sparkline/root/sparkline-root.css.js +0 -1
- package/dist/sparkline/root/sparkline-root.js +0 -40
- package/dist/speed-dial/item/speed-dial-item.css.js +0 -1
- package/dist/speed-dial/item/speed-dial-item.js +0 -16
- package/dist/speed-dial/root/speed-dial-root.css.js +0 -1
- package/dist/speed-dial/root/speed-dial-root.js +0 -16
- package/dist/splitter/root/splitter-root.css.js +0 -1
- package/dist/splitter/root/splitter-root.js +0 -50
- package/dist/stat/group/stat-group.css.js +0 -1
- package/dist/stat/group/stat-group.js +0 -19
- package/dist/stat/root/stat-root.css.js +0 -1
- package/dist/stat/root/stat-root.js +0 -17
- package/dist/steps/root/steps-root.css.js +0 -1
- package/dist/steps/root/steps-root.js +0 -26
- package/dist/steps/step/step.css.js +0 -1
- package/dist/steps/step/step.js +0 -12
- package/dist/switch/root/switch-root.css.js +0 -1
- package/dist/switch/root/switch-root.js +0 -32
- package/dist/table/cell/table-cell.css.js +0 -1
- package/dist/table/cell/table-cell.js +0 -14
- package/dist/table/column/table-column.css.js +0 -1
- package/dist/table/column/table-column.js +0 -13
- package/dist/table/root/table-root.css.js +0 -1
- package/dist/table/root/table-root.js +0 -19
- package/dist/table/row/table-row.css.js +0 -1
- package/dist/table/row/table-row.js +0 -14
- package/dist/tabs/panel/tab-panel.css.js +0 -1
- package/dist/tabs/panel/tab-panel.js +0 -16
- package/dist/tabs/root/tabs-root.css.js +0 -1
- package/dist/tabs/root/tabs-root.js +0 -19
- package/dist/tabs/tab/tab.css.js +0 -1
- package/dist/tabs/tab/tab.js +0 -16
- package/dist/tag/root/tag-root.css.js +0 -1
- package/dist/tag/root/tag-root.js +0 -25
- package/dist/text/root/text-root.css.js +0 -1
- package/dist/text/root/text-root.js +0 -48
- package/dist/textarea/root/textarea-root.css.js +0 -1
- package/dist/textarea/root/textarea-root.js +0 -17
- package/dist/time-input/root/time-input-root.css.js +0 -1
- package/dist/time-input/root/time-input-root.js +0 -31
- package/dist/time-picker/root/time-picker-root.css.js +0 -1
- package/dist/time-picker/root/time-picker-root.js +0 -29
- package/dist/timeline/item/timeline-item.css.js +0 -1
- package/dist/timeline/item/timeline-item.js +0 -17
- package/dist/timeline/root/timeline-root.css.js +0 -1
- package/dist/timeline/root/timeline-root.js +0 -15
- package/dist/toast/item/toast-item.css.js +0 -1
- package/dist/toast/item/toast-item.js +0 -21
- package/dist/toast/root/toast-root.css.js +0 -1
- package/dist/toast/root/toast-root.js +0 -27
- package/dist/toggle/group/toggle-group.css.js +0 -1
- package/dist/toggle/group/toggle-group.js +0 -25
- package/dist/toggle/root/toggle-root.css.js +0 -1
- package/dist/toggle/root/toggle-root.js +0 -18
- package/dist/toolbar/root/toolbar-root.css.js +0 -1
- package/dist/toolbar/root/toolbar-root.js +0 -19
- package/dist/tooltip/root/tooltip-root.css.js +0 -1
- package/dist/tooltip/root/tooltip-root.js +0 -22
- package/dist/tour/root/tour-root.css.js +0 -1
- package/dist/tour/root/tour-root.js +0 -14
- package/dist/tour/stop/tour-stop.css.js +0 -1
- package/dist/tour/stop/tour-stop.js +0 -22
- package/dist/tree/item/tree-item.css.js +0 -1
- package/dist/tree/item/tree-item.js +0 -34
- package/dist/tree/root/tree-root.css.js +0 -1
- package/dist/tree/root/tree-root.js +0 -27
- package/dist/trend/root/trend-root.css.js +0 -1
- package/dist/trend/root/trend-root.js +0 -34
- package/dist/video/root/video-root.css.js +0 -1
- package/dist/video/root/video-root.js +0 -37
- package/dist/video-playlist/item/video-playlist-item.css.js +0 -1
- package/dist/video-playlist/item/video-playlist-item.js +0 -15
- package/dist/video-playlist/menu/video-playlist-menu.css.js +0 -1
- package/dist/video-playlist/menu/video-playlist-menu.js +0 -36
- package/dist/video-playlist/root/video-playlist-root.css.js +0 -1
- package/dist/video-playlist/root/video-playlist-root.js +0 -16
- package/dist/virtual-list/root/virtual-list-root.css.js +0 -1
- package/dist/virtual-list/root/virtual-list-root.js +0 -21
- package/jsx.d.ts +1538 -2818
- package/package.json +7 -7
- package/vue.d.ts +3 -7
|
@@ -8,35 +8,6 @@ import { customElement } from '@fusion.dev/helix-core';
|
|
|
8
8
|
import { HelixHeadlessChatMessage } from '@fusion.dev/helix-headless/chat';
|
|
9
9
|
import { property } from 'lit/decorators.js';
|
|
10
10
|
import { styles } from './chat-message.css.js';
|
|
11
|
-
/**
|
|
12
|
-
* @summary One turn in a conversation, and what has happened to it.
|
|
13
|
-
*
|
|
14
|
-
* @description
|
|
15
|
-
* **`author="me"` is the one piece of paint that says whose turn it is**, and it
|
|
16
|
-
* says it by which edge the turn sits against. Everything else about a turn is
|
|
17
|
-
* the same on both sides, because two bubble styles is two components.
|
|
18
|
-
*
|
|
19
|
-
* A failure is the only state that takes a tone, because it is the one a reader
|
|
20
|
-
* has to find rather than notice. `streaming` is left alone: the text arriving
|
|
21
|
-
* is the signal, and decorating it competes with the thing it is decorating.
|
|
22
|
-
*
|
|
23
|
-
* @since 0.1.0
|
|
24
|
-
* @status experimental
|
|
25
|
-
* @category feedback
|
|
26
|
-
* @documentation https://helix.fusion.dev/components/chat
|
|
27
|
-
*
|
|
28
|
-
* @slot - What was said.
|
|
29
|
-
* @slot actions - What can be done with it.
|
|
30
|
-
* @slot avatar - Who said it.
|
|
31
|
-
*
|
|
32
|
-
* @csspart content - What was said.
|
|
33
|
-
* @csspart meta - The time and the state together.
|
|
34
|
-
*
|
|
35
|
-
* @cssproperty --chat-message-background-color - Fill behind a turn.
|
|
36
|
-
* @cssproperty --chat-message-background-color-me - Fill behind the reader's own turns.
|
|
37
|
-
* @cssproperty --chat-message-color - Ink in a turn.
|
|
38
|
-
* @cssproperty --chat-message-measure - How wide a turn may get before it wraps.
|
|
39
|
-
*/
|
|
40
11
|
let HelixChatMessage = class HelixChatMessage extends HelixHeadlessChatMessage {
|
|
41
12
|
static { this.tier = 'helix-'; }
|
|
42
13
|
static { this.styles = styles; }
|
|
@@ -9,44 +9,6 @@ import { HelixHeadlessChat } from '@fusion.dev/helix-headless/chat';
|
|
|
9
9
|
import { styles } from './chat-root.css.js';
|
|
10
10
|
import '../composer/chat-composer.js';
|
|
11
11
|
import '../message/chat-message.js';
|
|
12
|
-
/**
|
|
13
|
-
* @summary A conversation: the turns, and where the reader is in them.
|
|
14
|
-
*
|
|
15
|
-
* @description
|
|
16
|
-
* Three regions stacked, and only the transcript scrolls: a composer that slid
|
|
17
|
-
* away as the reader scrolled up to re-read would be the thing they were about
|
|
18
|
-
* to type into.
|
|
19
|
-
*
|
|
20
|
-
* **The transcript keeps its turns at the bottom when there are too few to fill
|
|
21
|
-
* it**, which is what a conversation looks like. A new one starting at the top
|
|
22
|
-
* of an empty column reads as a document.
|
|
23
|
-
*
|
|
24
|
-
* The way back sits over the transcript rather than in the column, so offering
|
|
25
|
-
* it does not move what the reader is reading, which is the whole point of
|
|
26
|
-
* offering it.
|
|
27
|
-
*
|
|
28
|
-
* @since 0.1.0
|
|
29
|
-
* @status experimental
|
|
30
|
-
* @category feedback
|
|
31
|
-
* @documentation https://helix.fusion.dev/components/chat
|
|
32
|
-
*
|
|
33
|
-
* @slot - The turns, as `helix-chat-message` children.
|
|
34
|
-
* @slot composer - Below the transcript, where the reader writes.
|
|
35
|
-
* @slot header - Above the transcript.
|
|
36
|
-
* @slot resume - The way back to the bottom.
|
|
37
|
-
* @slot status - Beside the composer: somebody typing, connection lost.
|
|
38
|
-
*
|
|
39
|
-
* @csspart composer - The region the composer sits in.
|
|
40
|
-
* @csspart log - The transcript, which is the thing that scrolls.
|
|
41
|
-
*
|
|
42
|
-
* @cssproperty --chat-gap - Space between turns.
|
|
43
|
-
* @cssproperty --chat-max-block-size - How tall the conversation may get before the transcript scrolls.
|
|
44
|
-
* @cssproperty --chat-padding-inline - Space either side of every region.
|
|
45
|
-
* @cssproperty --chat-resume-border-color - The edge around the way back.
|
|
46
|
-
* @cssproperty --chat-resume-border-width - How thick that edge is, for a surface over content.
|
|
47
|
-
* @cssproperty --chat-resume-shadow - The lift under the way back, which floats over the transcript.
|
|
48
|
-
* @cssproperty --chat-rule - The hairline under the header.
|
|
49
|
-
*/
|
|
50
12
|
let HelixChat = class HelixChat extends HelixHeadlessChat {
|
|
51
13
|
static { this.tier = 'helix-'; }
|
|
52
14
|
static { this.styles = styles; }
|
|
@@ -10,32 +10,6 @@ import { property } from 'lit/decorators.js';
|
|
|
10
10
|
import { styles as fieldStyles } from '../../shared/field/field.css.js';
|
|
11
11
|
import { styles as fieldInlineStyles } from '../../shared/field/field-inline.css.js';
|
|
12
12
|
import { styles } from './checkbox-root.css.js';
|
|
13
|
-
/**
|
|
14
|
-
* @summary A box that is ticked, or not, or neither.
|
|
15
|
-
*
|
|
16
|
-
* @description
|
|
17
|
-
* The box is the native input, restyled rather than replaced, so the tick and
|
|
18
|
-
* the indeterminate dash are the browser's own and the control stays a control
|
|
19
|
-
* for anything reading the page.
|
|
20
|
-
*
|
|
21
|
-
* The label sits beside it and the whole thing is the click target, which is
|
|
22
|
-
* what a native `<label>` wrapping a checkbox gives and what a reader expects.
|
|
23
|
-
*
|
|
24
|
-
* @since 0.1.0
|
|
25
|
-
* @status experimental
|
|
26
|
-
* @category forms
|
|
27
|
-
* @aliases Tickbox, Toggle
|
|
28
|
-
* @documentation https://helix.fusion.dev/components/checkbox
|
|
29
|
-
*
|
|
30
|
-
* @cssproperty --checkbox-background-color - Fill of an unticked box.
|
|
31
|
-
* @cssproperty --checkbox-border-color - Edge of the box, in every state.
|
|
32
|
-
* @cssproperty --checkbox-card-background-color - Fill behind a card-shaped choice.
|
|
33
|
-
* @cssproperty --checkbox-card-border-color - Edge around one.
|
|
34
|
-
* @cssproperty --checkbox-card-padding - Inset of the card appearance.
|
|
35
|
-
* @cssproperty --checkbox-checked-color - Fill of a ticked box.
|
|
36
|
-
* @cssproperty --checkbox-mark-color - Ink the tick is drawn in.
|
|
37
|
-
* @cssproperty --checkbox-size - Width and height of the box.
|
|
38
|
-
*/
|
|
39
13
|
let HelixCheckbox = class HelixCheckbox extends HelixHeadlessCheckbox {
|
|
40
14
|
static { this.styles = [fieldStyles, fieldInlineStyles, styles]; }
|
|
41
15
|
};
|
|
@@ -10,21 +10,6 @@ import { property } from 'lit/decorators.js';
|
|
|
10
10
|
import { styles as fieldStyles } from '../../shared/field/field.css.js';
|
|
11
11
|
import { styles as fieldStackedStyles } from '../../shared/field/field-stacked.css.js';
|
|
12
12
|
import { styles } from './checkbox-group-root.css.js';
|
|
13
|
-
/**
|
|
14
|
-
* @summary Groups related checkboxes, and reports them as one set.
|
|
15
|
-
*
|
|
16
|
-
* @description
|
|
17
|
-
* A column by default, which is what a list of choices wants: the eye scans one
|
|
18
|
-
* line per answer rather than hunting along a row.
|
|
19
|
-
*
|
|
20
|
-
* @since 0.1.0
|
|
21
|
-
* @status stable
|
|
22
|
-
* @category forms
|
|
23
|
-
* @aliases Checkbox list, Multi-select
|
|
24
|
-
* @documentation https://helix.fusion.dev/components/checkbox-group
|
|
25
|
-
*
|
|
26
|
-
* @cssproperty --checkbox-group-gap - Space between the boxes.
|
|
27
|
-
*/
|
|
28
13
|
let HelixCheckboxGroup = class HelixCheckboxGroup extends HelixHeadlessCheckboxGroup {
|
|
29
14
|
static { this.styles = [fieldStyles, fieldStackedStyles, styles]; }
|
|
30
15
|
};
|
|
@@ -7,27 +7,6 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
7
7
|
import { customElement } from '@fusion.dev/helix-core';
|
|
8
8
|
import { HelixHeadlessCode } from '@fusion.dev/helix-headless/code';
|
|
9
9
|
import { styles } from './code-root.css.js';
|
|
10
|
-
/**
|
|
11
|
-
* @summary A fragment of code inside a line of prose.
|
|
12
|
-
*
|
|
13
|
-
* @description
|
|
14
|
-
* A step down the scale, because a monospace face reads larger than the prose
|
|
15
|
-
* around it at the same nominal size. `--code-size` overrides it.
|
|
16
|
-
*
|
|
17
|
-
* @since 0.1.0
|
|
18
|
-
* @status stable
|
|
19
|
-
* @category typography
|
|
20
|
-
* @documentation https://helix.fusion.dev/components/code
|
|
21
|
-
*
|
|
22
|
-
* @cssproperty --code-background-color - Fill behind the fragment. Defaults to a 6%
|
|
23
|
-
* wash of the ink, which composites the same against a light page and a dark one.
|
|
24
|
-
* @cssproperty --code-foreground-color - The fragment's ink. Defaults to the prose's
|
|
25
|
-
* own, pulled back towards `foreground-muted`.
|
|
26
|
-
* @cssproperty --code-padding - Space either side of the fragment. Defaults to half
|
|
27
|
-
* of `space-2xs`, which is what keeps a bracket beside the chip rather than a space
|
|
28
|
-
* away from it.
|
|
29
|
-
* @cssproperty --code-size - The fragment's size. Defaults to `text-sm`.
|
|
30
|
-
*/
|
|
31
10
|
let HelixCode = class HelixCode extends HelixHeadlessCode {
|
|
32
11
|
static { this.styles = styles; }
|
|
33
12
|
};
|
|
@@ -8,25 +8,6 @@ import { customElement } from '@fusion.dev/helix-core';
|
|
|
8
8
|
import { HelixHeadlessCodeBlock } from '@fusion.dev/helix-headless/code-block';
|
|
9
9
|
import { styles } from './code-block-root.css.js';
|
|
10
10
|
import '../../copy-button/index.js';
|
|
11
|
-
/**
|
|
12
|
-
* @summary A block of code, with somewhere to put its name and a way to take it.
|
|
13
|
-
*
|
|
14
|
-
* @description
|
|
15
|
-
* The header sits above the code rather than floating on it. Overlaid, which is
|
|
16
|
-
* the usual build, the copy button covers the first line, which is the one line
|
|
17
|
-
* of a snippet a reader is most likely to be reading.
|
|
18
|
-
*
|
|
19
|
-
* @since 0.1.0
|
|
20
|
-
* @status stable
|
|
21
|
-
* @category typography
|
|
22
|
-
* @documentation https://helix.fusion.dev/components/code-block
|
|
23
|
-
*
|
|
24
|
-
* @cssproperty --code-block-backdrop - A filter over what shows through the block and its header, for a translucent ground.
|
|
25
|
-
* @cssproperty --code-block-background-color - The ground behind the code, for a block that is not on the page.
|
|
26
|
-
* @cssproperty --code-block-border-color - The line around the block and its header.
|
|
27
|
-
* @cssproperty --code-block-header-background-color - The ground behind the name, where it should not be `surface-raised`.
|
|
28
|
-
* @cssproperty --code-block-radius - The corner on the header's top and the block's bottom, which are one shape.
|
|
29
|
-
*/
|
|
30
11
|
let HelixCodeBlock = class HelixCodeBlock extends HelixHeadlessCodeBlock {
|
|
31
12
|
static { this.tier = 'helix-'; }
|
|
32
13
|
static { this.styles = styles; }
|
|
@@ -6,52 +6,10 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
6
6
|
};
|
|
7
7
|
import { customElement } from '@fusion.dev/helix-core';
|
|
8
8
|
import { HelixHeadlessColorInput } from '@fusion.dev/helix-headless/color-input';
|
|
9
|
-
/* Side-effect import, because the tier below renders `<helix-color-picker>` and
|
|
10
|
-
a custom element registers on import. Inherited from the base along with the
|
|
11
|
-
template, which is why it has to be restated here: this file has no
|
|
12
|
-
`<helix-color-picker>` in it to remind anyone. */
|
|
13
9
|
import '../../color-picker/index.js';
|
|
14
10
|
import { styles as fieldStyles } from '../../shared/field/field.css.js';
|
|
15
11
|
import { styles as fieldStackedStyles } from '../../shared/field/field-stacked.css.js';
|
|
16
12
|
import { styles } from './color-input-root.css.js';
|
|
17
|
-
/**
|
|
18
|
-
* @summary A color, typed in any syntax or picked from a panel.
|
|
19
|
-
*
|
|
20
|
-
* @description
|
|
21
|
-
* The frame is the field rather than the input, so the trigger sits inside the
|
|
22
|
-
* same box as the text and the focus ring is drawn once around the whole
|
|
23
|
-
* control.
|
|
24
|
-
*
|
|
25
|
-
* **The trigger fills the trailing end rather than sitting in it as an icon.** A
|
|
26
|
-
* color field has one thing to show and it is a color, so the swatch takes the
|
|
27
|
-
* height of the control and reads as a block of it. It is the one field here
|
|
28
|
-
* whose trailing affordance is the value itself: Date Input's calendar mark
|
|
29
|
-
* stands for an action, and an action stretched to field height is a large icon
|
|
30
|
-
* and nothing more.
|
|
31
|
-
*
|
|
32
|
-
* **The panel has no padding, and clips instead.** The square runs to its edge
|
|
33
|
-
* and takes the panel's rounded corners from being clipped by it, rather than
|
|
34
|
-
* sitting inset with a band of overlay showing on all four sides. The picker
|
|
35
|
-
* pads its own lower rows.
|
|
36
|
-
*
|
|
37
|
-
* @since 0.1.0
|
|
38
|
-
* @status experimental
|
|
39
|
-
* @category forms
|
|
40
|
-
* @aliases ColorField, ColourInput, InputColor
|
|
41
|
-
* @documentation https://helix.fusion.dev/components/color-input
|
|
42
|
-
*
|
|
43
|
-
* @cssproperty --color-input-background-color - Fill behind the field.
|
|
44
|
-
* @cssproperty --color-input-border-color - Color of the panel's edge.
|
|
45
|
-
* @cssproperty --color-input-border-width - Width of the panel's edge. Follows
|
|
46
|
-
* `--helix-border-floating`, which is `0`, so the panel is told apart by its lift unless a
|
|
47
|
-
* theme says otherwise.
|
|
48
|
-
* @cssproperty --color-input-panel-size - Width of the panel, and so of the square.
|
|
49
|
-
* @cssproperty --color-input-shadow - Lift under the panel. Follows
|
|
50
|
-
* `--helix-shadow-floating`: a floating surface sits over content nobody can predict, so it
|
|
51
|
-
* keeps a lift by default.
|
|
52
|
-
* @cssproperty --color-input-swatch-radius - Corner radius of that block.
|
|
53
|
-
* @cssproperty --color-input-swatch-size - Edge length of the block in `appearance="swatch"`.
|
|
54
|
-
*/
|
|
55
13
|
let HelixColorInput = class HelixColorInput extends HelixHeadlessColorInput {
|
|
56
14
|
static { this.tier = 'helix-'; }
|
|
57
15
|
static { this.styles = [fieldStyles, fieldStackedStyles, styles]; }
|
|
@@ -6,54 +6,12 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
6
6
|
};
|
|
7
7
|
import { customElement } from '@fusion.dev/helix-core';
|
|
8
8
|
import { HelixHeadlessColorPicker } from '@fusion.dev/helix-headless/color-picker';
|
|
9
|
-
/* Side-effect imports, because the tier below renders each of these tags and a
|
|
10
|
-
custom element registers on import. Inherited from the base along with the
|
|
11
|
-
template, which is why they have to be restated here: this file has none of
|
|
12
|
-
the tags in it to remind anyone. */
|
|
13
9
|
import '../../button/index.js';
|
|
14
10
|
import '../../button-group/index.js';
|
|
15
11
|
import '../../icon/index.js';
|
|
16
12
|
import '../../slider/index.js';
|
|
17
13
|
import { styles as glyphStyles } from '../../icon/glyph.css.js';
|
|
18
14
|
import { styles } from './color-picker-root.css.js';
|
|
19
|
-
/**
|
|
20
|
-
* @summary Picks a color, from a square and two ramps.
|
|
21
|
-
*
|
|
22
|
-
* @description
|
|
23
|
-
* **The square is painted in three layers, not composited from elements**: the
|
|
24
|
-
* hue underneath, white sliding in from the left to take the saturation out,
|
|
25
|
-
* black rising from the bottom to take the brightness out. One element, one
|
|
26
|
-
* declaration, and it repaints as the hue moves because the hue is a custom
|
|
27
|
-
* property the tier below writes.
|
|
28
|
-
*
|
|
29
|
-
* **The two range inputs over it are invisible and still there.** Not
|
|
30
|
-
* `display: none` and not `visibility: hidden`, either of which would take them
|
|
31
|
-
* out of the tab order and out of the accessibility tree, which is the entire
|
|
32
|
-
* reason a square built this way is reachable at all. They carry
|
|
33
|
-
* `pointer-events: none` so the square answers the pointer itself, and the focus
|
|
34
|
-
* ring is drawn on the square rather than on them, so it lands where the reader
|
|
35
|
-
* is looking.
|
|
36
|
-
*
|
|
37
|
-
* **Every chip sits on a checkerboard.** A color with alpha painted on a solid
|
|
38
|
-
* background is just a different color, and the one thing a preview owes a
|
|
39
|
-
* reader is the difference between "pale blue" and "blue, half transparent".
|
|
40
|
-
*
|
|
41
|
-
* No padding and no surface of its own. Flat on a page it takes the space it is
|
|
42
|
-
* given, and in Color Input's panel the panel supplies both: a picker that
|
|
43
|
-
* brought its own card would be a card inside a card there.
|
|
44
|
-
*
|
|
45
|
-
* @since 0.1.0
|
|
46
|
-
* @status experimental
|
|
47
|
-
* @category forms
|
|
48
|
-
* @aliases Color, ColorArea, Swatch picker
|
|
49
|
-
* @documentation https://helix.fusion.dev/components/color-picker
|
|
50
|
-
*
|
|
51
|
-
* @cssproperty --color-picker-grid-radius - Corner radius of the square.
|
|
52
|
-
* @cssproperty --color-picker-grid-ratio - Aspect ratio of the square.
|
|
53
|
-
* @cssproperty --color-picker-padding - Inset of the rows under the square, and the bottom.
|
|
54
|
-
* @cssproperty --color-picker-sample-size - Edge length of the chip that copies the value.
|
|
55
|
-
* @cssproperty --color-picker-swatch-size - Edge length of one preset.
|
|
56
|
-
*/
|
|
57
15
|
let HelixColorPicker = class HelixColorPicker extends HelixHeadlessColorPicker {
|
|
58
16
|
static { this.tier = 'helix-'; }
|
|
59
17
|
static { this.styles = [glyphStyles, styles]; }
|
|
@@ -6,39 +6,11 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
6
6
|
};
|
|
7
7
|
import { customElement } from '@fusion.dev/helix-core';
|
|
8
8
|
import { HelixHeadlessCombobox } from '@fusion.dev/helix-headless/combobox';
|
|
9
|
-
/* Side-effect import, because the tier below renders `<helix-listbox>` and a
|
|
10
|
-
custom element registers on import. Inherited from the base along with the
|
|
11
|
-
template, which is why it is restated here: this file has no `<helix-listbox>`
|
|
12
|
-
in it to remind anyone. */
|
|
13
9
|
import '../../listbox/index.js';
|
|
14
10
|
import '../../tag/index.js';
|
|
15
11
|
import { styles as fieldStyles } from '../../shared/field/field.css.js';
|
|
16
12
|
import { styles as fieldStackedStyles } from '../../shared/field/field-stacked.css.js';
|
|
17
13
|
import { styles } from './combobox-root.css.js';
|
|
18
|
-
/**
|
|
19
|
-
* @summary A field that filters a list as it is typed into.
|
|
20
|
-
*
|
|
21
|
-
* @description
|
|
22
|
-
* The frame is the field rather than the input, so the caret, the marks and the
|
|
23
|
-
* focus ring are drawn once around the whole control, which is the arrangement
|
|
24
|
-
* Input, Color Input and Date Input all take.
|
|
25
|
-
*
|
|
26
|
-
* @since 0.1.0
|
|
27
|
-
* @status experimental
|
|
28
|
-
* @category forms
|
|
29
|
-
* @aliases Autocomplete, Typeahead, Search select
|
|
30
|
-
* @documentation https://helix.fusion.dev/components/combobox
|
|
31
|
-
*
|
|
32
|
-
* @cssproperty --combobox-background-color - Fill behind the field.
|
|
33
|
-
* @cssproperty --combobox-border-color - Color of the panel's edge.
|
|
34
|
-
* @cssproperty --combobox-border-width - Width of the panel's edge. Follows
|
|
35
|
-
* `--helix-border-floating`, which is `0`, so the panel is told apart by its lift unless a
|
|
36
|
-
* theme says otherwise.
|
|
37
|
-
* @cssproperty --combobox-control-size - Smallest the text field shrinks to
|
|
38
|
-
* @cssproperty --combobox-panel-size - Width of the panel. Follows the field by default.
|
|
39
|
-
* @cssproperty --combobox-shadow - Lift under the panel. Follows `--helix-shadow-floating`: a
|
|
40
|
-
* floating surface sits over content nobody can predict, so it keeps a lift by default.
|
|
41
|
-
*/
|
|
42
14
|
let HelixCombobox = class HelixCombobox extends HelixHeadlessCombobox {
|
|
43
15
|
static { this.tier = 'helix-'; }
|
|
44
16
|
static { this.styles = [fieldStyles, fieldStackedStyles, styles]; }
|
|
@@ -6,30 +6,9 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
6
6
|
};
|
|
7
7
|
import { customElement } from '@fusion.dev/helix-core';
|
|
8
8
|
import { HelixHeadlessCommand } from '@fusion.dev/helix-headless/command';
|
|
9
|
-
/* Side-effect imports: this renders both, and a custom element registers on
|
|
10
|
-
import, so a consumer importing this family alone would otherwise get two
|
|
11
|
-
inert unknown elements. */
|
|
12
9
|
import '../../dialog/index.js';
|
|
13
10
|
import '../../listbox/index.js';
|
|
14
11
|
import { styles } from './command-root.css.js';
|
|
15
|
-
/**
|
|
16
|
-
* @summary A list of commands, opened from anywhere and filtered by typing.
|
|
17
|
-
*
|
|
18
|
-
* @description
|
|
19
|
-
* The palette is a dialog holding a filterable listbox, so what this tier adds
|
|
20
|
-
* is where that dialog sits and how the list reads inside it. It opens against
|
|
21
|
-
* the top of the window rather than centered, which is where every palette a
|
|
22
|
-
* reader has used opens: a list that grows and shrinks as it is filtered would
|
|
23
|
-
* otherwise walk up and down the screen under the words being typed.
|
|
24
|
-
*
|
|
25
|
-
* @since 0.1.0
|
|
26
|
-
* @status stable
|
|
27
|
-
* @category navigation
|
|
28
|
-
* @documentation https://helix.fusion.dev/components/command
|
|
29
|
-
*
|
|
30
|
-
* @cssproperty --command-list-size - How tall the list grows before it scrolls.
|
|
31
|
-
* @cssproperty --command-size - How wide the palette is. Defaults to `40rem`.
|
|
32
|
-
*/
|
|
33
12
|
let HelixCommand = class HelixCommand extends HelixHeadlessCommand {
|
|
34
13
|
static { this.tier = 'helix-'; }
|
|
35
14
|
static { this.styles = styles; }
|
|
@@ -10,20 +10,6 @@ import { HelixIconButton } from '../../icon-button/root/icon-button-root.js';
|
|
|
10
10
|
import { MixinControlSurface } from '../../mixins/mixin-control-surface/mixin-control-surface.js';
|
|
11
11
|
import { styles } from './copy-button-root.css.js';
|
|
12
12
|
import '../../tooltip/index.js';
|
|
13
|
-
/**
|
|
14
|
-
* @summary A button that puts a string on the clipboard and says it did.
|
|
15
|
-
*
|
|
16
|
-
* @description
|
|
17
|
-
* Takes the icon button's square box, then stacks its two faces in one grid
|
|
18
|
-
* cell so the press never changes the button's size. See the stylesheet: a
|
|
19
|
-
* control that resizes under the pointer at the moment a reader is looking at
|
|
20
|
-
* it for reassurance reads as a second, accidental press.
|
|
21
|
-
*
|
|
22
|
-
* @since 0.1.0
|
|
23
|
-
* @status experimental
|
|
24
|
-
* @category actions
|
|
25
|
-
* @documentation https://helix.fusion.dev/components/copy-button
|
|
26
|
-
*/
|
|
27
13
|
let HelixCopyButton = class HelixCopyButton extends MixinControlSurface(HelixHeadlessCopyButton) {
|
|
28
14
|
static { this.tier = 'helix-'; }
|
|
29
15
|
static { this.styles = [HelixIconButton.styles, styles].flat(); }
|
|
@@ -9,45 +9,6 @@ import { HelixHeadlessDataTable } from '@fusion.dev/helix-headless/data-table';
|
|
|
9
9
|
import { styles } from './data-table-root.css.js';
|
|
10
10
|
import '../../pagination/index.js';
|
|
11
11
|
import '../../table/index.js';
|
|
12
|
-
/**
|
|
13
|
-
* @summary A table that owns a result: rows as data, with sort, filter and paging.
|
|
14
|
-
*
|
|
15
|
-
* @description
|
|
16
|
-
* Hairline rules between rows and no fill, per the rule that depth comes from a
|
|
17
|
-
* single border rather than from elevation. A header band would be elevation
|
|
18
|
-
* spelled differently, so the headings are weight and color instead.
|
|
19
|
-
*
|
|
20
|
-
* The grid scrolls its own box and the toolbar and footer sit outside it: a
|
|
21
|
-
* search field that slides sideways when a reader scrolls the columns is a
|
|
22
|
-
* search field they lose.
|
|
23
|
-
*
|
|
24
|
-
* **The cell values do not server-render**, which is the headless tier's
|
|
25
|
-
* limitation and worth repeating where a consumer chooses between the two: use
|
|
26
|
-
* `helix-table` where the content has to be in the served HTML.
|
|
27
|
-
*
|
|
28
|
-
* @since 0.1.0
|
|
29
|
-
* @status experimental
|
|
30
|
-
* @category data
|
|
31
|
-
* @documentation https://helix.fusion.dev/components/data-table
|
|
32
|
-
*
|
|
33
|
-
* @slot - The columns, declared as `helix-table-column` children.
|
|
34
|
-
* @slot footer - Below the grid, replacing the pagination this would otherwise draw.
|
|
35
|
-
* @slot toolbar - Above the grid, for a search field or actions.
|
|
36
|
-
*
|
|
37
|
-
* @csspart cell - One cell.
|
|
38
|
-
* @csspart table - The grid.
|
|
39
|
-
*
|
|
40
|
-
* @cssproperty --data-table-color - Ink in a cell.
|
|
41
|
-
* @cssproperty --data-table-columns - Track list for the columns, which wins over the one the columns worked out.
|
|
42
|
-
* @cssproperty --data-table-heading-color - Ink in a heading.
|
|
43
|
-
* @cssproperty --data-table-padding-block - Space above and below a cell's content.
|
|
44
|
-
* @cssproperty --data-table-padding-inline - Space either side of a cell's content.
|
|
45
|
-
* @cssproperty --data-table-rule-color - Color of the hairline between rows. A color
|
|
46
|
-
* and not a border: it lands in the color slot of a shorthand, so a whole border
|
|
47
|
-
* written into it produces invalid CSS and drops the rule. Drawn on the cells rather
|
|
48
|
-
* than the row, which is `display: contents` and measures `0px`.
|
|
49
|
-
* @cssproperty --data-table-text - Type size, headings and cells alike.
|
|
50
|
-
*/
|
|
51
12
|
let HelixDataTable = class HelixDataTable extends HelixHeadlessDataTable {
|
|
52
13
|
static { this.tier = 'helix-'; }
|
|
53
14
|
static { this.styles = styles; }
|
|
@@ -6,49 +6,11 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
6
6
|
};
|
|
7
7
|
import { customElement } from '@fusion.dev/helix-core';
|
|
8
8
|
import { HelixHeadlessDateInput } from '@fusion.dev/helix-headless/date-input';
|
|
9
|
-
/* Side-effect import, because the headless tier's template names `helix-date-picker`
|
|
10
|
-
rather than the base tag, and a custom element registers on import. Without it
|
|
11
|
-
a consumer importing this one family got a panel with an unknown element in
|
|
12
|
-
it: `helix-headless-date-picker` was registered by the tier below and the tag being
|
|
13
|
-
rendered was not, so the calendar was an empty inert box. It only ever looked
|
|
14
|
-
right because the sandbox imports the whole barrel. Same arrangement Select
|
|
15
|
-
uses for its listbox and Pagination for its select. */
|
|
16
9
|
import '../../date-picker/index.js';
|
|
17
10
|
import '../../tag/index.js';
|
|
18
11
|
import { styles as fieldStyles } from '../../shared/field/field.css.js';
|
|
19
12
|
import { styles as fieldStackedStyles } from '../../shared/field/field-stacked.css.js';
|
|
20
13
|
import { styles } from './date-input-root.css.js';
|
|
21
|
-
/**
|
|
22
|
-
* @summary A date, typed or picked from a calendar.
|
|
23
|
-
*
|
|
24
|
-
* @description
|
|
25
|
-
* The frame is the field rather than the input, so the trigger sits inside the
|
|
26
|
-
* same box as the text and the focus ring is drawn once around the whole
|
|
27
|
-
* control. The trigger is a mark within that box rather than a button beside it:
|
|
28
|
-
* a second frame inside the first is two controls where a reader sees one.
|
|
29
|
-
*
|
|
30
|
-
* The calendar is the real `helix-date-picker`, in a panel with no border of its
|
|
31
|
-
* own. A surface over the page is told apart by its shadow and by what it
|
|
32
|
-
* covers, and a line around it as well reads as a box drawn around something
|
|
33
|
-
* already separate.
|
|
34
|
-
*
|
|
35
|
-
* Height comes from the region, like every other control: `data-density` on
|
|
36
|
-
* whatever holds it.
|
|
37
|
-
*
|
|
38
|
-
* @since 0.1.0
|
|
39
|
-
* @status experimental
|
|
40
|
-
* @category forms
|
|
41
|
-
* @aliases DatePicker, DateField, InputDate
|
|
42
|
-
* @documentation https://helix.fusion.dev/components/date-input
|
|
43
|
-
*
|
|
44
|
-
* @cssproperty --date-input-background-color - Fill behind the field.
|
|
45
|
-
* @cssproperty --date-input-border-color - Color of the panel's edge.
|
|
46
|
-
* @cssproperty --date-input-border-width - Width of the panel's edge. Follows
|
|
47
|
-
* `--helix-border-floating`, which is `0`, so the panel is told apart by its lift unless a
|
|
48
|
-
* theme says otherwise.
|
|
49
|
-
* @cssproperty --date-input-shadow - Lift under the panel. Follows `--helix-shadow-floating`:
|
|
50
|
-
* a floating surface sits over content nobody can predict, so it keeps a lift by default.
|
|
51
|
-
*/
|
|
52
14
|
let HelixDateInput = class HelixDateInput extends HelixHeadlessDateInput {
|
|
53
15
|
static { this.tier = 'helix-'; }
|
|
54
16
|
static { this.styles = [fieldStyles, fieldStackedStyles, styles]; }
|
|
@@ -7,34 +7,6 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
7
7
|
import { customElement } from '@fusion.dev/helix-core';
|
|
8
8
|
import { HelixHeadlessDatePicker } from '@fusion.dev/helix-headless/date-picker';
|
|
9
9
|
import { styles } from './date-picker-root.css.js';
|
|
10
|
-
/**
|
|
11
|
-
* @summary Shows a month, and takes a date from it.
|
|
12
|
-
*
|
|
13
|
-
* @description
|
|
14
|
-
* Six week rows always, so the grid keeps one height and a month change does
|
|
15
|
-
* not move whatever sits beneath it.
|
|
16
|
-
*
|
|
17
|
-
* The column track is wider than the day, and the day is centered in it. The
|
|
18
|
-
* difference is the space between days, which belongs to the track rather than
|
|
19
|
-
* to a `gap`, so a range can paint across the whole track and stay continuous.
|
|
20
|
-
*
|
|
21
|
-
* Days from the neighboring months stay in place and stay selectable, marked
|
|
22
|
-
* quieter rather than hidden, so the first and last weeks are whole and the
|
|
23
|
-
* grid reads as a continuous run of dates.
|
|
24
|
-
*
|
|
25
|
-
* @since 0.1.0
|
|
26
|
-
* @status experimental
|
|
27
|
-
* @category forms
|
|
28
|
-
* @aliases Calendar, Date grid, Month view
|
|
29
|
-
* @documentation https://helix.fusion.dev/components/date-picker
|
|
30
|
-
*
|
|
31
|
-
* @cssproperty --date-picker-columns - Months per row. Two unless there is only one.
|
|
32
|
-
* @cssproperty --date-picker-day-size - Width and height of a day.
|
|
33
|
-
* @cssproperty --date-picker-range-color - Band behind the days in a range.
|
|
34
|
-
* @cssproperty --date-picker-row-size - Height of a week row.
|
|
35
|
-
* @cssproperty --date-picker-selected-color - Fill behind a selected day.
|
|
36
|
-
* @cssproperty --date-picker-track-size - Width of a column, which is what sets the space between days.
|
|
37
|
-
*/
|
|
38
10
|
let HelixDatePicker = class HelixDatePicker extends HelixHeadlessDatePicker {
|
|
39
11
|
static { this.styles = styles; }
|
|
40
12
|
};
|