@fusion.dev/helix-headless 0.34.2 → 0.35.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 +8 -9
- package/dist/checkbox/root/checkbox-root.d.ts +2 -2
- package/dist/copy-button/root/copy-button-root.d.ts +1 -1
- package/dist/legend/root/legend-root.d.ts +1 -1
- package/dist/legend/root/legend-root.js +3 -4
- package/dist/sparkline/root/sparkline-root.d.ts +1 -1
- package/dist/virtual-list/root/virtual-list-root.d.ts +8 -2
- package/package.json +5 -5
- package/types/jsx.d.ts +14 -2
- package/types/vue.d.ts +1 -1
package/custom-elements.json
CHANGED
|
@@ -15478,11 +15478,10 @@
|
|
|
15478
15478
|
"helix": {
|
|
15479
15479
|
"category": "forms",
|
|
15480
15480
|
"since": "0.1.0",
|
|
15481
|
-
"status": "
|
|
15481
|
+
"status": "stable",
|
|
15482
15482
|
"documentation": "https://helix.fusion.dev/components/checkbox",
|
|
15483
15483
|
"aliases": [
|
|
15484
|
-
"Tickbox"
|
|
15485
|
-
"Toggle"
|
|
15484
|
+
"Tickbox"
|
|
15486
15485
|
],
|
|
15487
15486
|
"tier": "headless",
|
|
15488
15487
|
"group": "BaseCheckbox",
|
|
@@ -24255,7 +24254,7 @@
|
|
|
24255
24254
|
"helix": {
|
|
24256
24255
|
"category": "actions",
|
|
24257
24256
|
"since": "0.1.0",
|
|
24258
|
-
"status": "
|
|
24257
|
+
"status": "stable",
|
|
24259
24258
|
"documentation": "https://helix.fusion.dev/components/copy-button",
|
|
24260
24259
|
"aliases": [
|
|
24261
24260
|
"Copy",
|
|
@@ -49231,7 +49230,7 @@
|
|
|
49231
49230
|
"helix": {
|
|
49232
49231
|
"category": "charts",
|
|
49233
49232
|
"since": "0.1.0",
|
|
49234
|
-
"status": "
|
|
49233
|
+
"status": "stable",
|
|
49235
49234
|
"documentation": "https://helix.fusion.dev/components/legend",
|
|
49236
49235
|
"aliases": [
|
|
49237
49236
|
"Key",
|
|
@@ -79009,7 +79008,7 @@
|
|
|
79009
79008
|
"helix": {
|
|
79010
79009
|
"category": "charts",
|
|
79011
79010
|
"since": "0.1.0",
|
|
79012
|
-
"status": "
|
|
79011
|
+
"status": "stable",
|
|
79013
79012
|
"documentation": "https://helix.fusion.dev/components/sparkline",
|
|
79014
79013
|
"aliases": [
|
|
79015
79014
|
"Micro Chart",
|
|
@@ -108095,7 +108094,7 @@
|
|
|
108095
108094
|
"declarations": [
|
|
108096
108095
|
{
|
|
108097
108096
|
"kind": "class",
|
|
108098
|
-
"description": "**The set arrives as data, which is what makes this a virtual list rather\nthan a box that hides children.** `for` names a\n`<script type=\"application/json\">` holding an array of objects, and a\n`<template>` child says what one row looks like: elements carrying\n`data-field=\"name\"` are filled with that field of the item.\n\nBoth halves are markup, and that is the reason for the shape. An `items`\nproperty cannot survive React hydration, which skips every property it would\nhave to apply imperatively, and light-DOM children exist by the time anything\ncould decide not to create them. Text in the document is neither, and it is\none node whatever the row count.\n\n**The accessible version is not a `<table>`**, the way it is for the charts\nthat share this `for=\"<id>\"` shape: ten thousand rows in one is the cost this\nexists to avoid. It is the rendered window plus `aria-setsize
|
|
108097
|
+
"description": "**The set arrives as data, which is what makes this a virtual list rather\nthan a box that hides children.** `for` names a\n`<script type=\"application/json\">` holding an array of objects, and a\n`<template>` child says what one row looks like: elements carrying\n`data-field=\"name\"` are filled with that field of the item.\n\nBoth halves are markup, and that is the reason for the shape. An `items`\nproperty cannot survive React hydration, which skips every property it would\nhave to apply imperatively, and light-DOM children exist by the time anything\ncould decide not to create them. Text in the document is neither, and it is\none node whatever the row count.\n\n**The accessible version is not a `<table>`**, the way it is for the charts\nthat share this `for=\"<id>\"` shape: ten thousand rows in one is the cost this\nexists to avoid. It is the rendered window plus `aria-setsize`.\n\n**The box scrolls on this tier.** The viewport carries `data-scroller` and\n`core` ships `[data-scroller] { overflow: auto }` into every shadow root, so\n`scrollTop` exists with no stylesheet at all. What a headless consumer still\nhas to supply is a block size, which is a design decision; the `overflow`\nthey used to supply was a mechanism they had no way of knowing was missing.",
|
|
108099
108098
|
"name": "HelixHeadlessVirtualList",
|
|
108100
108099
|
"cssParts": [
|
|
108101
108100
|
{
|
|
@@ -108107,7 +108106,7 @@
|
|
|
108107
108106
|
"name": "before"
|
|
108108
108107
|
},
|
|
108109
108108
|
{
|
|
108110
|
-
"description": "The scrolling box. Needs a block size
|
|
108109
|
+
"description": "The scrolling box. Needs a block size on this tier, and nothing else.",
|
|
108111
108110
|
"name": "viewport"
|
|
108112
108111
|
}
|
|
108113
108112
|
],
|
|
@@ -108581,7 +108580,7 @@
|
|
|
108581
108580
|
"helix": {
|
|
108582
108581
|
"category": "layout",
|
|
108583
108582
|
"since": "0.1.0",
|
|
108584
|
-
"status": "
|
|
108583
|
+
"status": "stable",
|
|
108585
108584
|
"documentation": "https://helix.fusion.dev/components/virtual-list",
|
|
108586
108585
|
"tier": "headless",
|
|
108587
108586
|
"group": "BaseVirtualList",
|
|
@@ -24,9 +24,9 @@ declare const HelixHeadlessCheckbox_base: (new (...args: any[]) => import("@fusi
|
|
|
24
24
|
* third state that survives interaction is a control nobody can finish.
|
|
25
25
|
*
|
|
26
26
|
* @since 0.1.0
|
|
27
|
-
* @status
|
|
27
|
+
* @status stable
|
|
28
28
|
* @category forms
|
|
29
|
-
* @aliases Tickbox
|
|
29
|
+
* @aliases Tickbox
|
|
30
30
|
* @documentation https://helix.fusion.dev/components/checkbox
|
|
31
31
|
*
|
|
32
32
|
* @slot - The label.
|
|
@@ -17,7 +17,7 @@ import '../../tooltip/index.js';
|
|
|
17
17
|
* the button exactly as it was.
|
|
18
18
|
*
|
|
19
19
|
* @since 0.1.0
|
|
20
|
-
* @status
|
|
20
|
+
* @status stable
|
|
21
21
|
* @category actions
|
|
22
22
|
* @aliases Copy, Copy to clipboard
|
|
23
23
|
* @documentation https://helix.fusion.dev/components/copy-button
|
|
@@ -16,7 +16,7 @@ import { type PropertyValues, type TemplateResult } from 'lit';
|
|
|
16
16
|
* **The table is resolved on the client and there is no server pass.**
|
|
17
17
|
*
|
|
18
18
|
* @since 0.1.0
|
|
19
|
-
* @status
|
|
19
|
+
* @status stable
|
|
20
20
|
* @category charts
|
|
21
21
|
* @aliases Key, Series Key
|
|
22
22
|
* @documentation https://helix.fusion.dev/components/legend
|
|
@@ -4,10 +4,9 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
4
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
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
|
-
import { customElement, HelixElement, SourceController } from '@fusion.dev/helix-core';
|
|
7
|
+
import { customElement, HelixElement, SourceController, seriesIndex, } from '@fusion.dev/helix-core';
|
|
8
8
|
import { html } from 'lit';
|
|
9
9
|
import { property } from 'lit/decorators.js';
|
|
10
|
-
const PALETTE = 24;
|
|
11
10
|
let HelixHeadlessLegend = class HelixHeadlessLegend extends HelixElement {
|
|
12
11
|
constructor() {
|
|
13
12
|
super(...arguments);
|
|
@@ -28,9 +27,9 @@ let HelixHeadlessLegend = class HelixHeadlessLegend extends HelixElement {
|
|
|
28
27
|
render() {
|
|
29
28
|
return html `<ul part="list" role="list">
|
|
30
29
|
${this.names().map((name, index) => html `<li
|
|
31
|
-
data-series=${(index
|
|
30
|
+
data-series=${seriesIndex(index)}
|
|
32
31
|
part="entry"
|
|
33
|
-
style="--chart-series: var(--chart-series-${(index
|
|
32
|
+
style="--chart-series: var(--chart-series-${seriesIndex(index)})"
|
|
34
33
|
role="listitem"
|
|
35
34
|
>
|
|
36
35
|
<span aria-hidden="true" part="swatch"></span>
|
|
@@ -32,7 +32,7 @@ import { type PropertyValues, type TemplateResult } from 'lit';
|
|
|
32
32
|
* without measuring anything itself.
|
|
33
33
|
*
|
|
34
34
|
* @since 0.1.0
|
|
35
|
-
* @status
|
|
35
|
+
* @status stable
|
|
36
36
|
* @category charts
|
|
37
37
|
* @aliases Micro Chart, Trend Line, Inline Chart
|
|
38
38
|
* @documentation https://helix.fusion.dev/components/sparkline
|
|
@@ -20,14 +20,20 @@ import { type PropertyValues, type TemplateResult } from 'lit';
|
|
|
20
20
|
* that share this `for="<id>"` shape: ten thousand rows in one is the cost this
|
|
21
21
|
* exists to avoid. It is the rendered window plus `aria-setsize`.
|
|
22
22
|
*
|
|
23
|
+
* **The box scrolls on this tier.** The viewport carries `data-scroller` and
|
|
24
|
+
* `core` ships `[data-scroller] { overflow: auto }` into every shadow root, so
|
|
25
|
+
* `scrollTop` exists with no stylesheet at all. What a headless consumer still
|
|
26
|
+
* has to supply is a block size, which is a design decision; the `overflow`
|
|
27
|
+
* they used to supply was a mechanism they had no way of knowing was missing.
|
|
28
|
+
*
|
|
23
29
|
* @since 0.1.0
|
|
24
|
-
* @status
|
|
30
|
+
* @status stable
|
|
25
31
|
* @category layout
|
|
26
32
|
* @documentation https://helix.fusion.dev/components/virtual-list
|
|
27
33
|
*
|
|
28
34
|
* @csspart after - The space standing in for rows below the window.
|
|
29
35
|
* @csspart before - The space standing in for rows above the window.
|
|
30
|
-
* @csspart viewport - The scrolling box. Needs a block size
|
|
36
|
+
* @csspart viewport - The scrolling box. Needs a block size on this tier, and nothing else.
|
|
31
37
|
*/
|
|
32
38
|
export declare class HelixHeadlessVirtualList extends HelixElement {
|
|
33
39
|
/**
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fusion.dev/helix-headless",
|
|
3
3
|
"description": "Headless component tier. Structure, accessibility, state, and form participation. No styling.",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.35.0",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Ross Sheppard <ross.sheppard@fusion.dev>",
|
|
7
7
|
"repository": {
|
|
@@ -46,14 +46,14 @@
|
|
|
46
46
|
},
|
|
47
47
|
"bugs": "https://github.com/project-fusion/fusion/issues",
|
|
48
48
|
"dependencies": {
|
|
49
|
-
"@fusion.dev/helix-core": "0.
|
|
50
|
-
"@fusion.dev/helix-icons": "0.
|
|
49
|
+
"@fusion.dev/helix-core": "0.35.0",
|
|
50
|
+
"@fusion.dev/helix-icons": "0.35.0",
|
|
51
51
|
"uqr": "^0.1.3"
|
|
52
52
|
},
|
|
53
53
|
"devDependencies": {
|
|
54
54
|
"@custom-elements-manifest/analyzer": "^0.11.0",
|
|
55
|
-
"@fusion.dev/helix-cem": "0.
|
|
56
|
-
"@fusion.dev/helix-testing": "0.
|
|
55
|
+
"@fusion.dev/helix-cem": "0.35.0",
|
|
56
|
+
"@fusion.dev/helix-testing": "0.35.0",
|
|
57
57
|
"@fusion.dev/scripts": "0.0.0-dev",
|
|
58
58
|
"@happy-dom/global-registrator": "^20.0.0",
|
|
59
59
|
"@lit-labs/ssr": "^4.1.0",
|
package/types/jsx.d.ts
CHANGED
|
@@ -34363,6 +34363,12 @@ export type CustomElements = {
|
|
|
34363
34363
|
* that share this `for="<id>"` shape: ten thousand rows in one is the cost this
|
|
34364
34364
|
* exists to avoid. It is the rendered window plus `aria-setsize`.
|
|
34365
34365
|
*
|
|
34366
|
+
* **The box scrolls on this tier.** The viewport carries `data-scroller` and
|
|
34367
|
+
* `core` ships `[data-scroller] { overflow: auto }` into every shadow root, so
|
|
34368
|
+
* `scrollTop` exists with no stylesheet at all. What a headless consumer still
|
|
34369
|
+
* has to supply is a block size, which is a design decision; the `overflow`
|
|
34370
|
+
* they used to supply was a mechanism they had no way of knowing was missing.
|
|
34371
|
+
*
|
|
34366
34372
|
* ## Attributes & Properties
|
|
34367
34373
|
*
|
|
34368
34374
|
* Component attributes and properties that can be applied to the element or by using JavaScript.
|
|
@@ -34407,7 +34413,7 @@ export type CustomElements = {
|
|
|
34407
34413
|
*
|
|
34408
34414
|
* - `after`: The space standing in for rows below the window.
|
|
34409
34415
|
* - `before`: The space standing in for rows above the window.
|
|
34410
|
-
* - `viewport`: The scrolling box. Needs a block size
|
|
34416
|
+
* - `viewport`: The scrolling box. Needs a block size on this tier, and nothing else.
|
|
34411
34417
|
*
|
|
34412
34418
|
* ## CSS States
|
|
34413
34419
|
*
|
|
@@ -52050,6 +52056,12 @@ export type CustomElementsSolidJs = {
|
|
|
52050
52056
|
* that share this `for="<id>"` shape: ten thousand rows in one is the cost this
|
|
52051
52057
|
* exists to avoid. It is the rendered window plus `aria-setsize`.
|
|
52052
52058
|
*
|
|
52059
|
+
* **The box scrolls on this tier.** The viewport carries `data-scroller` and
|
|
52060
|
+
* `core` ships `[data-scroller] { overflow: auto }` into every shadow root, so
|
|
52061
|
+
* `scrollTop` exists with no stylesheet at all. What a headless consumer still
|
|
52062
|
+
* has to supply is a block size, which is a design decision; the `overflow`
|
|
52063
|
+
* they used to supply was a mechanism they had no way of knowing was missing.
|
|
52064
|
+
*
|
|
52053
52065
|
* ## Attributes & Properties
|
|
52054
52066
|
*
|
|
52055
52067
|
* Component attributes and properties that can be applied to the element or by using JavaScript.
|
|
@@ -52094,7 +52106,7 @@ export type CustomElementsSolidJs = {
|
|
|
52094
52106
|
*
|
|
52095
52107
|
* - `after`: The space standing in for rows below the window.
|
|
52096
52108
|
* - `before`: The space standing in for rows above the window.
|
|
52097
|
-
* - `viewport`: The scrolling box. Needs a block size
|
|
52109
|
+
* - `viewport`: The scrolling box. Needs a block size on this tier, and nothing else.
|
|
52098
52110
|
*
|
|
52099
52111
|
* ## CSS States
|
|
52100
52112
|
*
|
package/types/vue.d.ts
CHANGED
|
@@ -9637,7 +9637,7 @@ export interface WcToolkitVueGlobalComponents {
|
|
|
9637
9637
|
HelixHeadlessVideoVueProps,
|
|
9638
9638
|
HelixHeadlessVideoVueEvents
|
|
9639
9639
|
>;
|
|
9640
|
-
/** **The set arrives as data, which is what makes this a virtual list rather than a box that hides children.** 'for' names a '<script type="application/json">' holding an array of objects, and a '<template>' child says what one row looks like: elements carrying 'data-field="name"' are filled with that field of the item. Both halves are markup, and that is the reason for the shape. An 'items' property cannot survive React hydration, which skips every property it would have to apply imperatively, and light-DOM children exist by the time anything could decide not to create them. Text in the document is neither, and it is one node whatever the row count. **The accessible version is not a '<table>'**, the way it is for the charts that share this 'for="<id>"' shape: ten thousand rows in one is the cost this exists to avoid. It is the rendered window plus 'aria-setsize'. */
|
|
9640
|
+
/** **The set arrives as data, which is what makes this a virtual list rather than a box that hides children.** 'for' names a '<script type="application/json">' holding an array of objects, and a '<template>' child says what one row looks like: elements carrying 'data-field="name"' are filled with that field of the item. Both halves are markup, and that is the reason for the shape. An 'items' property cannot survive React hydration, which skips every property it would have to apply imperatively, and light-DOM children exist by the time anything could decide not to create them. Text in the document is neither, and it is one node whatever the row count. **The accessible version is not a '<table>'**, the way it is for the charts that share this 'for="<id>"' shape: ten thousand rows in one is the cost this exists to avoid. It is the rendered window plus 'aria-setsize'. **The box scrolls on this tier.** The viewport carries 'data-scroller' and 'core' ships '[data-scroller] { overflow: auto }' into every shadow root, so 'scrollTop' exists with no stylesheet at all. What a headless consumer still has to supply is a block size, which is a design decision; the 'overflow' they used to supply was a mechanism they had no way of knowing was missing. */
|
|
9641
9641
|
"helix-headless-virtual-list": DefineCustomElement<
|
|
9642
9642
|
HelixHeadlessVirtualList,
|
|
9643
9643
|
HelixHeadlessVirtualListVueProps,
|