@fusion.dev/helix 0.144.0 → 0.146.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/custom-elements.json +17914 -4368
- package/dist/accordion/item/accordion-item.css.js +25 -10
- package/dist/accordion/item/accordion-item.d.ts +10 -0
- package/dist/aura/palette.d.ts +38 -0
- package/dist/aura/palette.js +22 -0
- package/dist/aura/root/aura-root.css.js +27 -3
- package/dist/aura/root/aura-root.d.ts +61 -14
- package/dist/aura/root/aura-root.js +40 -23
- package/dist/badge/root/badge-root.css.js +86 -16
- package/dist/badge/root/badge-root.d.ts +18 -0
- package/dist/badge/root/badge-root.js +6 -0
- package/dist/blockquote/root/blockquote-root.css.js +2 -2
- package/dist/blockquote/root/blockquote-root.d.ts +2 -0
- package/dist/breadcrumbs/breadcrumb/breadcrumb.css.js +7 -7
- package/dist/breadcrumbs/breadcrumb/breadcrumb.d.ts +5 -0
- package/dist/breadcrumbs/root/breadcrumbs-root.css.js +24 -1
- package/dist/breadcrumbs/root/breadcrumbs-root.d.ts +4 -0
- package/dist/breadcrumbs/root/breadcrumbs-root.js +2 -0
- package/dist/button/root/button-root.css.js +4 -3
- package/dist/button/root/button-root.d.ts +2 -0
- package/dist/button-group/root/button-group-root.d.ts +3 -0
- package/dist/callout/root/callout-root.css.js +4 -3
- package/dist/callout/root/callout-root.d.ts +6 -2
- package/dist/canvas/root/canvas-root.css.js +1 -0
- package/dist/card/root/card-root.d.ts +6 -0
- package/dist/carousel/root/carousel-root.css.js +17 -1
- package/dist/chat/message/chat-message.css.js +0 -62
- package/dist/chat/message/chat-message.js +2 -1
- package/dist/chat/root/chat-root.css.js +7 -0
- package/dist/chat/root/chat-root.d.ts +2 -0
- package/dist/chat/root/chat-root.js +2 -1
- package/dist/chat/typing.css.d.ts +1 -0
- package/dist/chat/typing.css.js +62 -0
- package/dist/checkbox/root/checkbox-root.css.js +15 -0
- package/dist/checkbox/root/checkbox-root.d.ts +2 -1
- package/dist/code/root/code-root.css.js +2 -2
- package/dist/code/root/code-root.d.ts +2 -0
- package/dist/code-block/root/code-block-root.css.js +24 -0
- package/dist/code-block/root/code-block-root.d.ts +2 -1
- package/dist/color-input/root/color-input-root.css.js +10 -0
- package/dist/color-picker/root/color-picker-root.css.js +8 -0
- package/dist/color-picker/root/color-picker-root.d.ts +1 -0
- package/dist/copy-button/root/copy-button-root.css.js +15 -6
- package/dist/copy-button/root/copy-button-root.d.ts +7 -0
- package/dist/data-table/root/data-table-root.css.js +70 -0
- package/dist/data-table/root/data-table-root.d.ts +6 -0
- package/dist/date-input/root/date-input-root.css.js +10 -0
- package/dist/description-list/item/description-list-item.css.js +11 -0
- package/dist/donut-chart/root/donut-chart-root.css.js +19 -0
- package/dist/donut-chart/root/donut-chart-root.d.ts +3 -0
- package/dist/drawer/root/drawer-root.css.js +47 -0
- package/dist/drawer/root/drawer-root.d.ts +5 -0
- package/dist/drilldown/item/drilldown-item.css.js +8 -7
- package/dist/drilldown/item/drilldown-item.d.ts +6 -0
- package/dist/drilldown/root/drilldown-root.css.js +27 -13
- package/dist/drilldown/root/drilldown-root.d.ts +10 -0
- package/dist/element-events.generated.js +72 -13
- package/dist/file-input/root/file-input-root.css.js +12 -11
- package/dist/file-input/root/file-input-root.d.ts +11 -0
- package/dist/filter-input/root/filter-input-root.css.js +6 -5
- package/dist/filter-input/root/filter-input-root.d.ts +5 -0
- package/dist/flex/root/flex-root.css.js +143 -9
- package/dist/flex/root/flex-root.d.ts +62 -5
- package/dist/flex/root/flex-root.js +17 -1
- package/dist/graph/root/graph-root.css.js +11 -8
- package/dist/graph/root/graph-root.d.ts +8 -0
- package/dist/grid/root/grid-root.css.js +114 -11
- package/dist/grid/root/grid-root.d.ts +40 -0
- package/dist/grid/root/grid-root.js +13 -1
- package/dist/heatmap/root/heatmap-root.css.js +2 -1
- package/dist/icon-button/root/icon-button-root.css.js +68 -13
- package/dist/icon-button/root/icon-button-root.d.ts +4 -0
- package/dist/kbd/root/kbd-root.css.js +27 -0
- package/dist/kbd/root/kbd-root.d.ts +2 -0
- package/dist/lightbox/item/lightbox-item.css.js +4 -0
- package/dist/lightbox/root/lightbox-root.css.js +41 -0
- package/dist/line-chart/root/line-chart-root.css.js +16 -0
- package/dist/line-chart/root/line-chart-root.d.ts +2 -0
- package/dist/list/item/list-item.css.js +21 -1
- package/dist/list/item/list-item.d.ts +3 -0
- package/dist/list/root/list-root.css.js +13 -1
- package/dist/listbox/root/listbox-root.css.js +9 -0
- package/dist/listbox/root/listbox-root.d.ts +1 -0
- package/dist/loader/root/loader-root.css.js +3 -3
- package/dist/loader/root/loader-root.d.ts +2 -0
- package/dist/megamenu/root/megamenu-root.css.js +16 -13
- package/dist/megamenu/root/megamenu-root.d.ts +11 -0
- package/dist/menu/index.d.ts +1 -0
- package/dist/menu/index.js +1 -0
- package/dist/menu/item/menu-item.css.js +39 -4
- package/dist/menu/item/menu-item.d.ts +4 -0
- package/dist/menu/item/menu-item.js +2 -0
- package/dist/menu/section/menu-section.css.d.ts +1 -0
- package/dist/menu/section/menu-section.css.js +14 -0
- package/dist/menu/section/menu-section.d.ts +24 -0
- package/dist/menu/section/menu-section.js +16 -0
- package/dist/meter/root/meter-root.css.js +6 -3
- package/dist/meter/root/meter-root.d.ts +1 -0
- package/dist/navigation/root/navigation-root.css.js +3 -2
- package/dist/navigation/root/navigation-root.d.ts +13 -0
- package/dist/notifications/root/notifications-root.css.js +30 -1
- package/dist/notifications/root/notifications-root.d.ts +1 -0
- package/dist/number-input/root/number-input-root.css.js +12 -9
- package/dist/number-input/root/number-input-root.d.ts +8 -0
- package/dist/object-inspector/root/object-inspector-root.css.js +38 -7
- package/dist/object-inspector/root/object-inspector-root.d.ts +4 -1
- package/dist/object-inspector/root/object-inspector-root.js +2 -1
- package/dist/option/root/option-root.css.js +1 -1
- package/dist/orb/index.d.ts +1 -1
- package/dist/orb/index.js +1 -1
- package/dist/orb/root/orb-root.d.ts +40 -6
- package/dist/orb/root/orb-root.js +29 -11
- package/dist/outline/root/outline-root.css.js +10 -0
- package/dist/outline/root/outline-root.d.ts +7 -0
- package/dist/pin-input/root/pin-input-root.css.js +4 -4
- package/dist/pin-input/root/pin-input-root.d.ts +4 -0
- package/dist/progress/root/progress-root.css.js +4 -2
- package/dist/progress/root/progress-root.d.ts +1 -0
- package/dist/qr-code/root/qr-code-root.css.js +11 -0
- package/dist/quote/root/quote-root.css.js +3 -0
- package/dist/quote/root/quote-root.d.ts +2 -0
- package/dist/radio/root/radio-root.css.js +16 -0
- package/dist/radio/root/radio-root.d.ts +2 -1
- package/dist/sandbox/frame.d.ts +64 -0
- package/dist/sandbox/frame.js +146 -0
- package/dist/sandbox/index.d.ts +2 -0
- package/dist/sandbox/index.js +1 -0
- package/dist/sandbox/levels.d.ts +10 -0
- package/dist/sandbox/levels.js +5 -0
- package/dist/sandbox/root/sandbox-root.d.ts +3 -0
- package/dist/sandbox/root/sandbox-root.js +13 -3
- package/dist/sandbox/source/sandbox-source.css.js +70 -0
- package/dist/sandbox/source/sandbox-source.d.ts +35 -0
- package/dist/sandbox/source/sandbox-source.js +22 -3
- package/dist/sandbox/terminal/sandbox-terminal.css.js +39 -0
- package/dist/sandbox/terminal/sandbox-terminal.d.ts +50 -1
- package/dist/sandbox/terminal/sandbox-terminal.js +61 -4
- package/dist/sandbox/tokens.d.ts +39 -0
- package/dist/sandbox/tokens.js +9 -0
- package/dist/scatter-chart/root/scatter-chart-root.css.js +9 -0
- package/dist/scatter-chart/root/scatter-chart-root.d.ts +2 -0
- package/dist/scroll-area/root/scroll-area-root.css.js +83 -1
- package/dist/scroll-area/root/scroll-area-root.d.ts +6 -0
- package/dist/skeleton/root/skeleton-root.css.js +11 -11
- package/dist/skeleton/root/skeleton-root.d.ts +1 -0
- package/dist/skip-link/root/skip-link-root.css.js +20 -8
- package/dist/skip-link/root/skip-link-root.d.ts +12 -3
- package/dist/slider/root/slider-root.css.js +26 -0
- package/dist/sparkline/root/sparkline-root.css.js +49 -0
- package/dist/sparkline/root/sparkline-root.d.ts +6 -0
- package/dist/sparkline/root/sparkline-root.js +2 -1
- package/dist/speed-dial/item/speed-dial-item.css.js +18 -10
- package/dist/speed-dial/item/speed-dial-item.d.ts +7 -0
- package/dist/speed-dial/root/speed-dial-root.css.js +17 -8
- package/dist/speed-dial/root/speed-dial-root.d.ts +16 -1
- package/dist/speed-dial/root/speed-dial-root.js +4 -1
- package/dist/stat/root/stat-root.css.js +4 -0
- package/dist/steps/root/steps-root.css.js +28 -0
- package/dist/steps/root/steps-root.d.ts +5 -0
- package/dist/steps/step/step.js +2 -1
- package/dist/table/root/table-root.css.js +18 -0
- package/dist/table/root/table-root.d.ts +6 -0
- package/dist/table/root/table-root.js +2 -0
- package/dist/table/row/table-row.css.js +18 -0
- package/dist/table/row/table-row.d.ts +2 -0
- package/dist/table/row/table-row.js +2 -0
- package/dist/tabs/panel/tab-panel.css.js +5 -1
- package/dist/tabs/root/tabs-root.css.js +58 -3
- package/dist/tabs/root/tabs-root.d.ts +4 -0
- package/dist/tabs/tab/tab.css.js +21 -10
- package/dist/tabs/tab/tab.d.ts +7 -0
- package/dist/tag/group/tag-group.css.js +6 -0
- package/dist/text/clamp.d.ts +11 -0
- package/dist/text/clamp.js +3 -0
- package/dist/text/root/text-root.css.js +79 -45
- package/dist/text/root/text-root.d.ts +49 -7
- package/dist/text/root/text-root.js +17 -11
- package/dist/textarea/root/textarea-root.css.js +27 -0
- package/dist/time-input/root/time-input-root.css.js +12 -0
- package/dist/time-picker/root/time-picker-root.css.js +1 -1
- package/dist/timeline/group/timeline-group.css.d.ts +1 -0
- package/dist/timeline/group/timeline-group.css.js +32 -0
- package/dist/timeline/group/timeline-group.d.ts +25 -0
- package/dist/timeline/group/timeline-group.js +16 -0
- package/dist/timeline/index.d.ts +1 -0
- package/dist/timeline/index.js +1 -0
- package/dist/timeline/item/timeline-item.css.js +43 -16
- package/dist/timeline/root/timeline-root.css.js +56 -0
- package/dist/timeline/root/timeline-root.d.ts +26 -0
- package/dist/timeline/root/timeline-root.js +7 -0
- package/dist/toast/item/toast-item.css.js +10 -0
- package/dist/toast/root/toast-root.d.ts +1 -0
- package/dist/toast/root/toast-root.js +1 -0
- package/dist/toggle/group/toggle-group.css.js +10 -7
- package/dist/toggle/group/toggle-group.d.ts +6 -1
- package/dist/toggle/root/toggle-root.d.ts +6 -0
- package/dist/toolbar/root/toolbar-root.css.js +4 -0
- package/dist/toolbar/root/toolbar-root.d.ts +5 -0
- package/dist/tooltip/root/tooltip-root.css.js +5 -5
- package/dist/tooltip/root/tooltip-root.d.ts +4 -0
- package/dist/tree/item/tree-item.css.js +89 -7
- package/dist/tree/item/tree-item.d.ts +19 -0
- package/dist/trend/root/trend-root.css.js +3 -5
- package/dist/trend/root/trend-root.d.ts +2 -2
- package/dist/video/root/video-root.css.js +6 -0
- package/dist/video/root/video-root.d.ts +3 -0
- package/dist/virtual-list/root/virtual-list-root.css.js +19 -0
- package/dist/virtual-list/root/virtual-list-root.d.ts +10 -3
- package/lint.json +1 -1
- package/package.json +9 -9
- package/types/jsx.d.ts +8253 -1233
- package/types/svelte.d.ts +2 -0
- package/types/vue.d.ts +2357 -312
|
@@ -5,8 +5,10 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
5
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
7
|
import { customElement, HelixElement, reportRuntime } from '@fusion.dev/helix-core';
|
|
8
|
+
import { nothing } from 'lit';
|
|
8
9
|
import { property } from 'lit/decorators.js';
|
|
9
10
|
import { literal, html as staticHtml } from 'lit/static-html.js';
|
|
11
|
+
import { clampOf } from '../clamp.js';
|
|
10
12
|
import { styles } from './text-root.css.js';
|
|
11
13
|
const TAGS = {
|
|
12
14
|
code: literal `code`,
|
|
@@ -25,25 +27,20 @@ const TAGS = {
|
|
|
25
27
|
let HelixText = class HelixText extends HelixElement {
|
|
26
28
|
updated(changed) {
|
|
27
29
|
super.updated(changed);
|
|
28
|
-
if (changed.has('as') && this.as === 'label'
|
|
30
|
+
if (changed.has('as') && this.as === 'label') {
|
|
29
31
|
reportRuntime({
|
|
30
32
|
kind: 'unreachable-label',
|
|
31
|
-
message: '<helix-text as="label">
|
|
32
|
-
'
|
|
33
|
-
'
|
|
33
|
+
message: '<helix-text as="label"> is deprecated: its label is in a shadow root, which `for` ' +
|
|
34
|
+
'and a wrapped control cannot reach, so it labels nothing. Write `variant="label"` ' +
|
|
35
|
+
'for the look, `<label data-text="label">` for a native control, and give a Helix ' +
|
|
36
|
+
'field its own `label`.',
|
|
34
37
|
tag: this.localName,
|
|
35
38
|
});
|
|
36
39
|
}
|
|
37
40
|
}
|
|
38
|
-
labelsNothing() {
|
|
39
|
-
const fields = [...this.querySelectorAll('*')].some((element) => element.constructor.formAssociated === true);
|
|
40
|
-
return (fields ||
|
|
41
|
-
this.hasAttribute('for') ||
|
|
42
|
-
this.querySelector('input, select, textarea, button, meter, output, progress') !== null);
|
|
43
|
-
}
|
|
44
41
|
render() {
|
|
45
42
|
const tag = (this.as && Object.hasOwn(TAGS, this.as) ? TAGS[this.as] : undefined) ?? literal `span`;
|
|
46
|
-
return staticHtml `<${tag} part="text"><slot></slot></${tag}>`;
|
|
43
|
+
return staticHtml `<${tag} part="text" style=${clampOf(this.lines) ?? nothing}><slot></slot></${tag}>`;
|
|
47
44
|
}
|
|
48
45
|
static { this.styles = styles; }
|
|
49
46
|
};
|
|
@@ -53,6 +50,15 @@ __decorate([
|
|
|
53
50
|
__decorate([
|
|
54
51
|
property({ reflect: true })
|
|
55
52
|
], HelixText.prototype, "emphasis", void 0);
|
|
53
|
+
__decorate([
|
|
54
|
+
property({ reflect: true, type: Number })
|
|
55
|
+
], HelixText.prototype, "lines", void 0);
|
|
56
|
+
__decorate([
|
|
57
|
+
property({ attribute: 'text-align', reflect: true })
|
|
58
|
+
], HelixText.prototype, "textAlign", void 0);
|
|
59
|
+
__decorate([
|
|
60
|
+
property({ attribute: 'text-wrap', reflect: true })
|
|
61
|
+
], HelixText.prototype, "textWrap", void 0);
|
|
56
62
|
__decorate([
|
|
57
63
|
property({ reflect: true })
|
|
58
64
|
], HelixText.prototype, "tone", void 0);
|
|
@@ -25,6 +25,33 @@ color: var(--helix-color-foreground-subtle);
|
|
|
25
25
|
flex: 0 0 auto;
|
|
26
26
|
}
|
|
27
27
|
|
|
28
|
+
[part="clear"] {
|
|
29
|
+
--icon-size: var(--helix-size-icon-tight);
|
|
30
|
+
all: unset;
|
|
31
|
+
|
|
32
|
+
align-items: center;
|
|
33
|
+
align-self: flex-start;
|
|
34
|
+
border-radius: var(--helix-radii-sm);
|
|
35
|
+
box-sizing: border-box;
|
|
36
|
+
color: var(--helix-color-foreground-muted);
|
|
37
|
+
cursor: pointer;
|
|
38
|
+
display: flex;
|
|
39
|
+
flex: 0 0 auto;
|
|
40
|
+
justify-content: center;
|
|
41
|
+
min-block-size: var(--helix-size-icon-loose);
|
|
42
|
+
min-inline-size: var(--helix-size-icon-loose);
|
|
43
|
+
transition: color var(--helix-duration-fast) var(--helix-easing-standard);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
[part="clear"]:hover {
|
|
47
|
+
color: var(--helix-color-foreground);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
[part="clear"]:focus-visible {
|
|
51
|
+
outline: var(--helix-size-focus-ring) solid var(--helix-color-focus-ring);
|
|
52
|
+
outline-offset: var(--helix-size-focus-offset);
|
|
53
|
+
}
|
|
54
|
+
|
|
28
55
|
:host([auto-grow]) [part="control"] {
|
|
29
56
|
overflow: hidden;
|
|
30
57
|
resize: none;
|
|
@@ -69,6 +69,18 @@ padding-inline: var(--helix-space-none);
|
|
|
69
69
|
position: absolute;
|
|
70
70
|
}
|
|
71
71
|
|
|
72
|
+
::slotted([slot="panel-header"]) {
|
|
73
|
+
display: block;
|
|
74
|
+
margin-block-end: var(--helix-space-sm);
|
|
75
|
+
margin-inline: var(--helix-space-sm);
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
::slotted([slot="panel-footer"]) {
|
|
79
|
+
display: block;
|
|
80
|
+
margin-block-start: var(--helix-space-sm);
|
|
81
|
+
margin-inline: var(--helix-space-sm);
|
|
82
|
+
}
|
|
83
|
+
|
|
72
84
|
@media (prefers-reduced-motion: reduce) {
|
|
73
85
|
[part="field"],
|
|
74
86
|
[part="trigger"] {
|
|
@@ -109,7 +109,7 @@ transition: background-color var(--helix-duration-fast) var(--helix-easing-stand
|
|
|
109
109
|
}
|
|
110
110
|
|
|
111
111
|
[part="column"] [part~="option"]:not([disabled]):hover::part(label),
|
|
112
|
-
[part="column"] [part~="option"]
|
|
112
|
+
[part="column"] [part~="option"]:state(active)::part(label) {
|
|
113
113
|
background-color: var(--helix-color-surface-sunken);
|
|
114
114
|
}
|
|
115
115
|
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const styles: import("lit").CSSResult;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { createSheet } from '@fusion.dev/helix-core';
|
|
2
|
+
export const styles = createSheet(`:host {
|
|
3
|
+
display: block;
|
|
4
|
+
padding-block-end: var(--timeline-gap, var(--helix-space-lg));
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
:host(:last-child) {
|
|
8
|
+
padding-block-end: var(--helix-space-none);
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
[part="heading"] {
|
|
12
|
+
color: var(--timeline-group-heading-color, var(--helix-color-foreground));
|
|
13
|
+
font-size: var(--helix-text-sm);
|
|
14
|
+
font-weight: var(--helix-weight-semibold);
|
|
15
|
+
padding-block-end: var(--helix-space-sm);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
[part="entries"] {
|
|
19
|
+
display: flex;
|
|
20
|
+
flex-direction: var(--_timeline-direction, column);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
::slotted(*) {
|
|
24
|
+
flex: var(--_timeline-entry-flex, 0 1 auto);
|
|
25
|
+
min-inline-size: 0;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
@media print {
|
|
29
|
+
:host {
|
|
30
|
+
break-inside: avoid-page;
|
|
31
|
+
}
|
|
32
|
+
}`);
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { HelixHeadlessTimelineGroup } from '@fusion.dev/helix-headless/timeline';
|
|
2
|
+
import type { CSSResultGroup } from 'lit';
|
|
3
|
+
/**
|
|
4
|
+
* @summary A run of timeline entries under a heading, such as a day.
|
|
5
|
+
*
|
|
6
|
+
* @description
|
|
7
|
+
* The heading sits at the start edge, over the entries, in the small heavy
|
|
8
|
+
* type of a section label, and the space under one group is the space between
|
|
9
|
+
* two entries.
|
|
10
|
+
*
|
|
11
|
+
* @since 0.1.0
|
|
12
|
+
* @status stable
|
|
13
|
+
* @aliases Day, Section, Date group
|
|
14
|
+
* @documentation https://fusion.dev/helix/components/timeline
|
|
15
|
+
*
|
|
16
|
+
* @cssproperty --timeline-group-heading-color - The color of the heading.
|
|
17
|
+
*/
|
|
18
|
+
export declare class HelixTimelineGroup extends HelixHeadlessTimelineGroup {
|
|
19
|
+
static styles: CSSResultGroup;
|
|
20
|
+
}
|
|
21
|
+
declare global {
|
|
22
|
+
interface HTMLElementTagNameMap {
|
|
23
|
+
'helix-timeline-group': HelixTimelineGroup;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { customElement } from '@fusion.dev/helix-core';
|
|
8
|
+
import { HelixHeadlessTimelineGroup } from '@fusion.dev/helix-headless/timeline';
|
|
9
|
+
import { styles } from './timeline-group.css.js';
|
|
10
|
+
let HelixTimelineGroup = class HelixTimelineGroup extends HelixHeadlessTimelineGroup {
|
|
11
|
+
static { this.styles = styles; }
|
|
12
|
+
};
|
|
13
|
+
HelixTimelineGroup = __decorate([
|
|
14
|
+
customElement('helix-timeline-group')
|
|
15
|
+
], HelixTimelineGroup);
|
|
16
|
+
export { HelixTimelineGroup };
|
package/dist/timeline/index.d.ts
CHANGED
package/dist/timeline/index.js
CHANGED
|
@@ -2,21 +2,26 @@ import { createSheet } from '@fusion.dev/helix-core';
|
|
|
2
2
|
export const styles = createSheet(`:host {
|
|
3
3
|
column-gap: var(--helix-space-md);
|
|
4
4
|
display: grid;
|
|
5
|
-
|
|
6
|
-
grid-template-
|
|
5
|
+
|
|
6
|
+
grid-template-columns: var(--_timeline-columns, auto minmax(0, 1fr));
|
|
7
|
+
grid-template-rows: var(--_timeline-rows, auto minmax(0, 1fr));
|
|
7
8
|
}
|
|
8
9
|
|
|
9
10
|
[part="rail"] {
|
|
11
|
+
align-items: var(--_timeline-rail-align, normal);
|
|
10
12
|
display: grid;
|
|
11
|
-
grid-
|
|
12
|
-
grid-
|
|
13
|
-
|
|
13
|
+
grid-column: var(--_timeline-rail-column, auto);
|
|
14
|
+
grid-row: var(--_timeline-rail-row, 1 / -1);
|
|
15
|
+
grid-template-columns: var(--_timeline-rail-columns, none);
|
|
16
|
+
grid-template-rows: var(--_timeline-rail-rows, subgrid);
|
|
17
|
+
justify-items: var(--_timeline-rail-justify, center);
|
|
14
18
|
}
|
|
15
19
|
|
|
16
20
|
[part="rail"]::before {
|
|
17
21
|
background-color: var(--helix-color-border);
|
|
18
22
|
block-size: 100%;
|
|
19
23
|
content: "";
|
|
24
|
+
display: var(--_timeline-arrive-display, block);
|
|
20
25
|
grid-column: 1;
|
|
21
26
|
grid-row: 1;
|
|
22
27
|
inline-size: var(--timeline-rail-size, var(--helix-border-thin));
|
|
@@ -27,14 +32,22 @@ visibility: hidden;
|
|
|
27
32
|
}
|
|
28
33
|
|
|
29
34
|
[part="rail"]::after {
|
|
30
|
-
align-self: stretch;
|
|
35
|
+
align-self: var(--_timeline-leave-align, stretch);
|
|
31
36
|
background-color: var(--helix-color-border);
|
|
37
|
+
block-size: var(--_timeline-leave-block-size, auto);
|
|
32
38
|
content: "";
|
|
33
39
|
|
|
34
|
-
grid-column: 1;
|
|
35
|
-
grid-row: 2;
|
|
36
|
-
inline-size: var(
|
|
37
|
-
|
|
40
|
+
grid-column: var(--_timeline-leave-column, 1);
|
|
41
|
+
grid-row: var(--_timeline-leave-row, 2);
|
|
42
|
+
inline-size: var(
|
|
43
|
+
--_timeline-leave-inline-size,
|
|
44
|
+
var(--timeline-rail-size, var(--helix-border-thin))
|
|
45
|
+
);
|
|
46
|
+
justify-self: var(--_timeline-leave-justify, auto);
|
|
47
|
+
margin-block-start: var(
|
|
48
|
+
--_timeline-leave-margin-block,
|
|
49
|
+
var(--timeline-marker-size, var(--helix-size-icon-md))
|
|
50
|
+
);
|
|
38
51
|
}
|
|
39
52
|
|
|
40
53
|
:host(:last-child) [part="rail"]::after {
|
|
@@ -52,7 +65,7 @@ border-radius: var(--timeline-marker-radius, var(--helix-radii-full));
|
|
|
52
65
|
color: var(--_timeline-tone, var(--helix-color-foreground-subtle));
|
|
53
66
|
display: inline-flex;
|
|
54
67
|
grid-column: 1;
|
|
55
|
-
grid-row: 2;
|
|
68
|
+
grid-row: var(--_timeline-marker-row, 2);
|
|
56
69
|
inline-size: var(--timeline-marker-size, var(--helix-size-icon-md));
|
|
57
70
|
justify-content: center;
|
|
58
71
|
}
|
|
@@ -92,21 +105,35 @@ color: var(--helix-color-foreground-muted);
|
|
|
92
105
|
font-family: var(--helix-font-sans);
|
|
93
106
|
font-size: var(--helix-text-xs);
|
|
94
107
|
font-weight: var(--helix-weight-medium);
|
|
95
|
-
grid-column: 2;
|
|
96
|
-
grid-row: 1;
|
|
108
|
+
grid-column: var(--_timeline-time-column, 2);
|
|
109
|
+
grid-row: var(--_timeline-time-row, 1);
|
|
97
110
|
padding-block-end: var(--helix-space-2xs);
|
|
111
|
+
|
|
112
|
+
text-align: var(--_timeline-time-align);
|
|
98
113
|
}
|
|
99
114
|
|
|
100
115
|
[part="content"] {
|
|
101
116
|
display: flex;
|
|
102
117
|
flex-direction: column;
|
|
103
118
|
gap: var(--helix-space-2xs);
|
|
104
|
-
grid-column: 2;
|
|
105
|
-
grid-row: 2;
|
|
119
|
+
grid-column: var(--_timeline-content-column, 2);
|
|
120
|
+
grid-row: var(--_timeline-content-row, 2);
|
|
106
121
|
min-inline-size: 0;
|
|
107
|
-
padding-block-end: var(--timeline-gap, var(--helix-space-lg));
|
|
122
|
+
padding-block-end: var(--_timeline-content-block-end, var(--timeline-gap, var(--helix-space-lg)));
|
|
123
|
+
padding-inline-end: var(--_timeline-content-inline-end, var(--helix-space-none));
|
|
108
124
|
}
|
|
109
125
|
|
|
110
126
|
:host(:last-child) [part="content"] {
|
|
111
127
|
padding-block-end: var(--helix-space-none);
|
|
128
|
+
padding-inline-end: var(--helix-space-none);
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
:host(:nth-child(even)) [part="time"] {
|
|
132
|
+
grid-column: var(--_timeline-even-column, var(--_timeline-time-column, 2));
|
|
133
|
+
text-align: var(--_timeline-even-align, var(--_timeline-time-align));
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
:host(:nth-child(even)) [part="content"] {
|
|
137
|
+
grid-column: var(--_timeline-even-column, var(--_timeline-content-column, 2));
|
|
138
|
+
text-align: var(--_timeline-even-align);
|
|
112
139
|
}`);
|
|
@@ -4,6 +4,62 @@ display: flex;
|
|
|
4
4
|
flex-direction: column;
|
|
5
5
|
}
|
|
6
6
|
|
|
7
|
+
:host([layout="opposite"]) {
|
|
8
|
+
--_timeline-columns: minmax(0, 1fr) auto minmax(0, 1fr);
|
|
9
|
+
--_timeline-content-column: 3;
|
|
10
|
+
--_timeline-rail-column: 2;
|
|
11
|
+
--_timeline-time-align: end;
|
|
12
|
+
--_timeline-time-column: 1;
|
|
13
|
+
--_timeline-time-row: 2;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
:host([layout="alternate"]) {
|
|
17
|
+
--_timeline-columns: minmax(0, 1fr) auto minmax(0, 1fr);
|
|
18
|
+
--_timeline-content-column: 3;
|
|
19
|
+
--_timeline-even-align: end;
|
|
20
|
+
--_timeline-even-column: 1;
|
|
21
|
+
--_timeline-rail-column: 2;
|
|
22
|
+
--_timeline-time-column: 3;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
:host([orientation="horizontal"]) {
|
|
26
|
+
--_timeline-arrive-display: none;
|
|
27
|
+
--_timeline-columns: minmax(0, 1fr);
|
|
28
|
+
--_timeline-content-block-end: var(--helix-space-none);
|
|
29
|
+
--_timeline-content-column: 1;
|
|
30
|
+
--_timeline-content-inline-end: var(--timeline-gap, var(--helix-space-lg));
|
|
31
|
+
--_timeline-content-row: 3;
|
|
32
|
+
--_timeline-direction: row;
|
|
33
|
+
--_timeline-entry-flex: 1 1 0;
|
|
34
|
+
--_timeline-even-align: initial;
|
|
35
|
+
--_timeline-even-column: initial;
|
|
36
|
+
--_timeline-leave-align: center;
|
|
37
|
+
--_timeline-leave-block-size: var(--timeline-rail-size, var(--helix-border-thin));
|
|
38
|
+
--_timeline-leave-column: 2;
|
|
39
|
+
--_timeline-leave-inline-size: auto;
|
|
40
|
+
--_timeline-leave-justify: stretch;
|
|
41
|
+
--_timeline-leave-margin-block: var(--helix-space-none);
|
|
42
|
+
--_timeline-leave-row: 1;
|
|
43
|
+
--_timeline-marker-row: 1;
|
|
44
|
+
--_timeline-rail-align: center;
|
|
45
|
+
--_timeline-rail-column: 1;
|
|
46
|
+
--_timeline-rail-columns: auto minmax(0, 1fr);
|
|
47
|
+
--_timeline-rail-justify: start;
|
|
48
|
+
--_timeline-rail-row: 1;
|
|
49
|
+
--_timeline-rail-rows: auto;
|
|
50
|
+
--_timeline-rows: auto auto minmax(0, 1fr);
|
|
51
|
+
--_timeline-time-align: initial;
|
|
52
|
+
--_timeline-time-column: 1;
|
|
53
|
+
--_timeline-time-row: 2;
|
|
54
|
+
|
|
55
|
+
flex-direction: row;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
:host([orientation="horizontal"]) ::slotted(*) {
|
|
59
|
+
flex: 1 1 0;
|
|
60
|
+
min-inline-size: 0;
|
|
61
|
+
}
|
|
62
|
+
|
|
7
63
|
@media print {
|
|
8
64
|
:host {
|
|
9
65
|
print-color-adjust: economy;
|
|
@@ -7,6 +7,19 @@ import type { CSSResultGroup } from 'lit';
|
|
|
7
7
|
* Sets the direction time runs in and the spacing between events. Each entry
|
|
8
8
|
* draws its own mark and line.
|
|
9
9
|
*
|
|
10
|
+
* `layout` and `orientation` move where the entries are drawn, and never the
|
|
11
|
+
* order they are read in, which is the order you write them in:
|
|
12
|
+
*
|
|
13
|
+
* - Unset, the line runs down the start edge, with each time over what
|
|
14
|
+
* happened.
|
|
15
|
+
* - `layout="opposite"` runs the line down the middle, with each time on the
|
|
16
|
+
* start side and what happened on the end side.
|
|
17
|
+
* - `layout="alternate"` runs the line down the middle, with the first entry on
|
|
18
|
+
* the end side, the second on the start side, and so on.
|
|
19
|
+
* - `orientation="horizontal"` runs the line across the top, with the entries
|
|
20
|
+
* side by side in the order they are read, and the time over what happened
|
|
21
|
+
* under each mark. Use it for a few entries, since they share the width.
|
|
22
|
+
*
|
|
10
23
|
* @since 0.1.0
|
|
11
24
|
* @status stable
|
|
12
25
|
* @category data
|
|
@@ -17,6 +30,19 @@ import type { CSSResultGroup } from 'lit';
|
|
|
17
30
|
*/
|
|
18
31
|
export declare class HelixTimeline extends HelixHeadlessTimeline {
|
|
19
32
|
static styles: CSSResultGroup;
|
|
33
|
+
/**
|
|
34
|
+
* Where the entries sit beside the line: `opposite` puts the times on one
|
|
35
|
+
* side and what happened on the other, and `alternate` puts every other
|
|
36
|
+
* entry on the other side. Unset, the line runs down the start edge.
|
|
37
|
+
*
|
|
38
|
+
* Down the page only: across the page it is set aside.
|
|
39
|
+
*/
|
|
40
|
+
layout?: 'alternate' | 'opposite';
|
|
41
|
+
/**
|
|
42
|
+
* Which way time runs: `horizontal` lays the entries across the page. Unset,
|
|
43
|
+
* they run down it.
|
|
44
|
+
*/
|
|
45
|
+
orientation?: 'horizontal';
|
|
20
46
|
}
|
|
21
47
|
declare global {
|
|
22
48
|
interface HTMLElementTagNameMap {
|
|
@@ -6,10 +6,17 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
6
6
|
};
|
|
7
7
|
import { customElement } from '@fusion.dev/helix-core';
|
|
8
8
|
import { HelixHeadlessTimeline } from '@fusion.dev/helix-headless/timeline';
|
|
9
|
+
import { property } from 'lit/decorators.js';
|
|
9
10
|
import { styles } from './timeline-root.css.js';
|
|
10
11
|
let HelixTimeline = class HelixTimeline extends HelixHeadlessTimeline {
|
|
11
12
|
static { this.styles = styles; }
|
|
12
13
|
};
|
|
14
|
+
__decorate([
|
|
15
|
+
property({ reflect: true })
|
|
16
|
+
], HelixTimeline.prototype, "layout", void 0);
|
|
17
|
+
__decorate([
|
|
18
|
+
property({ reflect: true })
|
|
19
|
+
], HelixTimeline.prototype, "orientation", void 0);
|
|
13
20
|
HelixTimeline = __decorate([
|
|
14
21
|
customElement('helix-timeline')
|
|
15
22
|
], HelixTimeline);
|
|
@@ -84,6 +84,16 @@ grid-area: 1 / 2;
|
|
|
84
84
|
min-inline-size: 0;
|
|
85
85
|
}
|
|
86
86
|
|
|
87
|
+
::slotted([slot="heading"]) {
|
|
88
|
+
display: block;
|
|
89
|
+
font-weight: var(--helix-weight-semibold);
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
::slotted([slot="description"]) {
|
|
93
|
+
color: var(--helix-color-foreground-muted);
|
|
94
|
+
display: block;
|
|
95
|
+
}
|
|
96
|
+
|
|
87
97
|
[part="actions"] {
|
|
88
98
|
display: flex;
|
|
89
99
|
gap: var(--helix-space-2xs);
|
|
@@ -23,6 +23,7 @@ import type { CSSResultGroup } from 'lit';
|
|
|
23
23
|
* @cssproperty --toast-inset - Distance from the edges of the window.
|
|
24
24
|
*/
|
|
25
25
|
export declare class HelixToast extends HelixHeadlessToast {
|
|
26
|
+
static tier: string;
|
|
26
27
|
static styles: CSSResultGroup;
|
|
27
28
|
}
|
|
28
29
|
declare global {
|
|
@@ -8,6 +8,7 @@ import { customElement } from '@fusion.dev/helix-core';
|
|
|
8
8
|
import { HelixHeadlessToast } from '@fusion.dev/helix-headless/toast';
|
|
9
9
|
import { styles } from './toast-root.css.js';
|
|
10
10
|
let HelixToast = class HelixToast extends HelixHeadlessToast {
|
|
11
|
+
static { this.tier = 'helix-'; }
|
|
11
12
|
static { this.styles = styles; }
|
|
12
13
|
};
|
|
13
14
|
HelixToast = __decorate([
|
|
@@ -34,7 +34,7 @@ align-items: start;
|
|
|
34
34
|
[part="track"] {
|
|
35
35
|
--_toggle-height: calc(var(--helix-size-control) - var(--helix-space-2xs) * 2);
|
|
36
36
|
|
|
37
|
-
--_toggle-radius: var(--helix-radii-sm);
|
|
37
|
+
--_toggle-radius: var(--toggle-group-item-radius, var(--helix-radii-sm));
|
|
38
38
|
|
|
39
39
|
--_indicator-surface: var(--helix-color-surface-raised);
|
|
40
40
|
display: inline-flex;
|
|
@@ -51,7 +51,10 @@ padding: var(--helix-space-2xs);
|
|
|
51
51
|
:host(:not([separation])) [part="track"],
|
|
52
52
|
:host([separation="outlined"]) [part="track"] {
|
|
53
53
|
|
|
54
|
-
--_toggle-radius:
|
|
54
|
+
--_toggle-radius: var(
|
|
55
|
+
--toggle-group-item-radius,
|
|
56
|
+
calc(var(--toggle-group-radius, var(--helix-radii-sm)) - var(--helix-border-thin))
|
|
57
|
+
);
|
|
55
58
|
|
|
56
59
|
--_toggle-height: calc(
|
|
57
60
|
var(--helix-size-control) -
|
|
@@ -62,9 +65,9 @@ var(--helix-border-thin) *
|
|
|
62
65
|
);
|
|
63
66
|
|
|
64
67
|
--_indicator-surface: var(--helix-color-surface-overlay);
|
|
65
|
-
background-color: var(--helix-color-surface-sunken);
|
|
66
|
-
border: var(--helix-border-thin) solid var(--helix-color-border);
|
|
67
|
-
border-radius: var(--helix-radii-sm);
|
|
68
|
+
background-color: var(--toggle-group-background-color, var(--helix-color-surface-sunken));
|
|
69
|
+
border: var(--helix-border-thin) solid var(--toggle-group-border-color, var(--helix-color-border));
|
|
70
|
+
border-radius: var(--toggle-group-radius, var(--helix-radii-sm));
|
|
68
71
|
padding: var(--helix-space-2xs);
|
|
69
72
|
}
|
|
70
73
|
|
|
@@ -79,7 +82,7 @@ flex: 1 1 auto;
|
|
|
79
82
|
background-color: var(--toggle-group-indicator-color, var(--_indicator-surface));
|
|
80
83
|
block-size: var(--indicator-block-size, 0);
|
|
81
84
|
border-radius: var(--_toggle-radius, var(--helix-radii-sm));
|
|
82
|
-
box-shadow: var(--helix-shadow-sm);
|
|
85
|
+
box-shadow: var(--toggle-group-indicator-shadow, var(--helix-shadow-sm));
|
|
83
86
|
inline-size: var(--indicator-inline-size, 0);
|
|
84
87
|
inset-block-start: 0;
|
|
85
88
|
inset-inline-start: 0;
|
|
@@ -116,7 +119,7 @@ flex: 1 1 auto;
|
|
|
116
119
|
:host([selection-mode="multiple"]) ::slotted(helix-toggle:state(pressed)) {
|
|
117
120
|
background-color: var(--toggle-group-indicator-color, var(--_indicator-surface));
|
|
118
121
|
border-radius: var(--_toggle-radius, var(--helix-radii-sm));
|
|
119
|
-
box-shadow: var(--helix-shadow-sm);
|
|
122
|
+
box-shadow: var(--toggle-group-indicator-shadow, var(--helix-shadow-sm));
|
|
120
123
|
}
|
|
121
124
|
|
|
122
125
|
:host([orientation="vertical"]) [part="track"] {
|
|
@@ -26,7 +26,12 @@ import type { CSSResultGroup } from 'lit';
|
|
|
26
26
|
*
|
|
27
27
|
* @csspart indicator - The moving marker behind the selected item.
|
|
28
28
|
*
|
|
29
|
-
* @cssproperty --toggle-group-
|
|
29
|
+
* @cssproperty --toggle-group-background-color - The groove behind the items, when the group is framed.
|
|
30
|
+
* @cssproperty --toggle-group-border-color - The edge of the groove, when the group is framed.
|
|
31
|
+
* @cssproperty --toggle-group-indicator-color - The fill of the moving marker, and of each pressed item under `selection-mode="multiple"`.
|
|
32
|
+
* @cssproperty --toggle-group-indicator-shadow - The shadow of the moving marker and of each pressed item.
|
|
33
|
+
* @cssproperty --toggle-group-item-radius - Corner radius of each item, the marker, and a pressed item's fill. Without it, the curve stays concentric with the groove.
|
|
34
|
+
* @cssproperty --toggle-group-radius - Corner radius of the groove, when the group is framed.
|
|
30
35
|
*/
|
|
31
36
|
export declare class HelixToggleGroup extends HelixHeadlessToggleGroup {
|
|
32
37
|
/**
|
|
@@ -16,6 +16,12 @@ import type { CSSResultGroup } from 'lit';
|
|
|
16
16
|
* @slot - The item's label.
|
|
17
17
|
*
|
|
18
18
|
* @csspart item - The radio button.
|
|
19
|
+
*
|
|
20
|
+
* @cssproperty --toggle-item-color - Text color of an item that is not chosen. Read by the base
|
|
21
|
+
* layer, which styles the `item` part.
|
|
22
|
+
* @cssproperty --toggle-item-color-selected - Text color of the chosen item, and of each pressed
|
|
23
|
+
* item in a group that allows several.
|
|
24
|
+
* @cssproperty --toggle-item-padding-inline - Space either side of an item's label.
|
|
19
25
|
*/
|
|
20
26
|
export declare class HelixToggle extends HelixHeadlessToggle {
|
|
21
27
|
static styles: CSSResultGroup;
|
|
@@ -18,8 +18,12 @@ display: inline-flex;
|
|
|
18
18
|
|
|
19
19
|
[part="toolbar"] {
|
|
20
20
|
align-items: center;
|
|
21
|
+
background-color: var(--toolbar-background-color, transparent);
|
|
22
|
+
border: var(--toolbar-border-width, 0) solid var(--toolbar-border-color, transparent);
|
|
23
|
+
border-radius: var(--toolbar-radius, var(--helix-radii-none));
|
|
21
24
|
display: flex;
|
|
22
25
|
gap: var(--toolbar-gap, var(--helix-space-2xs));
|
|
26
|
+
padding: var(--toolbar-padding, var(--helix-space-none));
|
|
23
27
|
}
|
|
24
28
|
|
|
25
29
|
:host([orientation="vertical"]) [part="toolbar"] {
|
|
@@ -17,7 +17,12 @@ import type { CSSResultGroup } from 'lit';
|
|
|
17
17
|
*
|
|
18
18
|
* @csspart toolbar - The toolbar container.
|
|
19
19
|
*
|
|
20
|
+
* @cssproperty --toolbar-background-color - The fill behind the controls. Transparent unless set.
|
|
21
|
+
* @cssproperty --toolbar-border-color - The color of the toolbar's edge, once it has a width.
|
|
22
|
+
* @cssproperty --toolbar-border-width - The width of the toolbar's edge. None unless set.
|
|
20
23
|
* @cssproperty --toolbar-gap - The space between controls.
|
|
24
|
+
* @cssproperty --toolbar-padding - The space between the toolbar's edge and its controls.
|
|
25
|
+
* @cssproperty --toolbar-radius - The corner radius of the toolbar's fill.
|
|
21
26
|
*/
|
|
22
27
|
export declare class HelixToolbar extends HelixHeadlessToolbar {
|
|
23
28
|
static styles: CSSResultGroup;
|
|
@@ -11,10 +11,10 @@ gap: var(--helix-space-2xs);
|
|
|
11
11
|
|
|
12
12
|
background-color: var(--tooltip-background-color, var(--helix-color-surface-inverse));
|
|
13
13
|
border: none;
|
|
14
|
-
border-radius: var(--helix-radii-sm);
|
|
15
|
-
color: var(--helix-color-foreground-inverse);
|
|
14
|
+
border-radius: var(--tooltip-radius, var(--helix-radii-sm));
|
|
15
|
+
color: var(--tooltip-color, var(--helix-color-foreground-inverse));
|
|
16
16
|
font-family: var(--helix-font-sans);
|
|
17
|
-
font-size: var(--helix-text-xs);
|
|
17
|
+
font-size: var(--tooltip-font-size, var(--helix-text-xs));
|
|
18
18
|
|
|
19
19
|
font-weight: var(--helix-weight-regular);
|
|
20
20
|
inline-size: max-content;
|
|
@@ -23,7 +23,7 @@ margin: var(--helix-space-none);
|
|
|
23
23
|
max-inline-size: var(--tooltip-max-inline-size, 16rem);
|
|
24
24
|
|
|
25
25
|
opacity: 0;
|
|
26
|
-
padding: var(--helix-space-2xs) var(--helix-space-xs);
|
|
26
|
+
padding: var(--tooltip-padding, var(--helix-space-2xs) var(--helix-space-xs));
|
|
27
27
|
position: fixed;
|
|
28
28
|
scale: 0;
|
|
29
29
|
|
|
@@ -63,7 +63,7 @@ background-color: var(--tooltip-background-color, var(--helix-material-transluce
|
|
|
63
63
|
:host([material="frosted"]) [part~="tooltip"],
|
|
64
64
|
:host([material="glass"]) [part~="tooltip"] {
|
|
65
65
|
border: var(--helix-border-thin) solid var(--helix-color-border);
|
|
66
|
-
color: var(--helix-color-foreground);
|
|
66
|
+
color: var(--tooltip-color, var(--helix-color-foreground));
|
|
67
67
|
}
|
|
68
68
|
|
|
69
69
|
[part~="tooltip"][data-placement^="top"] {
|
|
@@ -20,7 +20,11 @@ import type { CSSResultGroup } from 'lit';
|
|
|
20
20
|
* @cssproperty --tooltip-arrow-size - The size of the arrow on the bubble's edge.
|
|
21
21
|
* @cssproperty --tooltip-backdrop - The blur behind a `frosted` or `glass` bubble.
|
|
22
22
|
* @cssproperty --tooltip-background-color - The fill of the bubble.
|
|
23
|
+
* @cssproperty --tooltip-color - The color of the bubble's words.
|
|
24
|
+
* @cssproperty --tooltip-font-size - The size of the bubble's words.
|
|
23
25
|
* @cssproperty --tooltip-max-inline-size - The widest the bubble grows before its text wraps.
|
|
26
|
+
* @cssproperty --tooltip-padding - The space between the bubble's edge and its words.
|
|
27
|
+
* @cssproperty --tooltip-radius - The bubble's corner radius.
|
|
24
28
|
*/
|
|
25
29
|
export declare class HelixTooltip extends HelixHeadlessTooltip {
|
|
26
30
|
/**
|