@fusion.dev/helix-headless 0.40.0 → 0.41.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 +262 -25
- package/dist/area-chart/root/area-chart-root.d.ts +25 -5
- package/dist/area-chart/root/area-chart-root.js +2 -3
- package/dist/bar-chart/root/bar-chart-root.d.ts +29 -19
- package/dist/bar-chart/root/bar-chart-root.js +4 -10
- package/dist/donut-chart/root/donut-chart-root.d.ts +9 -1
- package/dist/donut-chart/root/donut-chart-root.js +2 -2
- package/dist/legend/root/legend-root.d.ts +16 -2
- package/dist/legend/root/legend-root.js +4 -3
- package/dist/line-chart/root/line-chart-root.d.ts +17 -3
- package/dist/line-chart/root/line-chart-root.js +1 -1
- package/dist/scatter-chart/root/scatter-chart-root.d.ts +17 -1
- package/dist/scatter-chart/root/scatter-chart-root.js +6 -3
- package/package.json +5 -5
- package/types/jsx.d.ts +617 -109
- package/types/vue.d.ts +79 -33
package/types/vue.d.ts
CHANGED
|
@@ -402,9 +402,13 @@ export type HelixHeadlessAppHeaderVueEvents = {
|
|
|
402
402
|
export type HelixHeadlessAreaChartVueProps = {
|
|
403
403
|
/** How a band's edge gets from one reading to the next.
|
|
404
404
|
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
405
|
+
Three values, and the class doc argues for each: `straight` is absent and
|
|
406
|
+
is the default, `smooth` is for a stack read as a shape and is the one that
|
|
407
|
+
can draw a part as less than nothing, `step` is for a quantity that changes
|
|
408
|
+
at a moment and is ordered the way `straight` is.
|
|
409
|
+
|
|
410
|
+
Absent rather than defaulted because a reflecting property with a default
|
|
411
|
+
writes its attribute onto every host, including the ones nobody configured. */
|
|
408
412
|
curve?: (HelixHeadlessAreaChart["curve"]) | undefined;
|
|
409
413
|
/** Which rules are drawn across the plot, if any.
|
|
410
414
|
|
|
@@ -553,28 +557,38 @@ and reach no reader through the table. */
|
|
|
553
557
|
gridlines?: (HelixHeadlessBarChart["gridlines"]) | undefined;
|
|
554
558
|
/** Which series are drawn as a line instead of as columns, by name.
|
|
555
559
|
|
|
556
|
-
|
|
557
|
-
chart says `lines="Margin"` rather than counting
|
|
558
|
-
they are what the table already carries and what the
|
|
559
|
-
an index is a fourth place the column order is
|
|
560
|
-
one to go stale when somebody moves a column.
|
|
561
|
-
|
|
562
|
-
**
|
|
563
|
-
|
|
564
|
-
something comparable to the columns beside it.
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
560
|
+
Separated by whitespace or commas and matched against the column headings
|
|
561
|
+
the table gives, so a chart says `lines="Margin"` rather than counting
|
|
562
|
+
columns. Names because they are what the table already carries and what the
|
|
563
|
+
legend already shows: an index is a fourth place the column order is
|
|
564
|
+
written down and the first one to go stale when somebody moves a column.
|
|
565
|
+
|
|
566
|
+
**This says which mark a series takes and nothing about which scale it is
|
|
567
|
+
measured on.** Named here alone, a line shares the columns' domain, so it
|
|
568
|
+
says something comparable to the columns beside it.
|
|
569
|
+
|
|
570
|
+
The other half of a combination chart, a count against a percentage on a
|
|
571
|
+
scale of its own, is `secondary`, which is a separate property because it
|
|
572
|
+
is a separate question and because the two compose: `with-a-second-axis`
|
|
573
|
+
ships naming one series in both. The argument for why a second scale is opt
|
|
574
|
+
in, and why setting it labels both axes, is written there.
|
|
575
|
+
|
|
576
|
+
A line among columns measures from zero, because the columns do and they
|
|
577
|
+
share the axis. So does a line on the second scale, which is that scale's
|
|
578
|
+
own rule rather than this one's. */
|
|
572
579
|
lines?: (HelixHeadlessBarChart["lines"]) | undefined;
|
|
573
580
|
/** Which series are measured against a scale of their own, by name.
|
|
574
581
|
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
582
|
+
Separated and matched the way `lines` is, against the column headings the
|
|
583
|
+
table gives. Opt in: absent, every series shares one domain, which is what
|
|
584
|
+
makes a chart comparable and is the right default.
|
|
585
|
+
|
|
586
|
+
**The scale, and `lines` is the mark.** The two are separate properties
|
|
587
|
+
because they answer separate questions and a series usually wants both:
|
|
588
|
+
a percentage beside a count is drawn as a line *and* measured on its own
|
|
589
|
+
axis, which is what `with-a-second-axis` writes out. Neither implies the
|
|
590
|
+
other, so a series can be a line on the shared scale and a column can have
|
|
591
|
+
a scale to itself.
|
|
578
592
|
|
|
579
593
|
**Two scales on one frame let an author put any two shapes in any relation
|
|
580
594
|
by choosing the ranges, and a reader cannot see it happening.** That is not
|
|
@@ -2884,7 +2898,15 @@ the bar chart's baseline is not a property at all.
|
|
|
2884
2898
|
circumference, which needs the radius, and reading a custom property means
|
|
2885
2899
|
`getComputedStyle`, which is client-only: a server would draw a different
|
|
2886
2900
|
ring than the client. A plot's proportions are markup for the same reason
|
|
2887
|
-
`curve` is.
|
|
2901
|
+
`curve` is.
|
|
2902
|
+
|
|
2903
|
+
**And so it does not reflect**, which is the same argument read forward. No
|
|
2904
|
+
selector on either tier asks about it and none can want to: everything the
|
|
2905
|
+
thickness decides is arithmetic done here and published as
|
|
2906
|
+
`--donut-chart-stroke`, which is a number a rule can do sums with where the
|
|
2907
|
+
word is not. Reflected, it wrote a value onto every host a script had set
|
|
2908
|
+
it on for nothing to read. `sweep` beside it is the converse and reflects,
|
|
2909
|
+
because three rules select on it. */
|
|
2888
2910
|
hole?: (HelixHeadlessDonutChart["hole"]) | undefined;
|
|
2889
2911
|
/** How much of the circle the whole occupies.
|
|
2890
2912
|
|
|
@@ -4122,7 +4144,20 @@ export type HelixHeadlessLegendVueProps = {
|
|
|
4122
4144
|
/** Which way to read the table.
|
|
4123
4145
|
|
|
4124
4146
|
Absent is `series`, one entry per data column. `categories` reads one entry
|
|
4125
|
-
per body row instead, for a donut, whose slices are the rows.
|
|
4147
|
+
per body row instead, for a donut, whose slices are the rows.
|
|
4148
|
+
|
|
4149
|
+
**`measures` is `series` without the first column, and it is for a
|
|
4150
|
+
scatter.** That chart reads its first numeric column as the measure
|
|
4151
|
+
*across*, so its first plotted series is the table's second and everything
|
|
4152
|
+
a legend beside it named was one color out: the across column wearing the
|
|
4153
|
+
color of the first series drawn, and each real series wearing the next
|
|
4154
|
+
one's. The across gets no entry rather than a shifted one, because it is an
|
|
4155
|
+
axis and a scatter already writes its name at the end of the scale under
|
|
4156
|
+
the plot.
|
|
4157
|
+
|
|
4158
|
+
A legend cannot ask the chart which of these it is, `for` naming the table
|
|
4159
|
+
they share and not each other, so the consumer says it. That is the same
|
|
4160
|
+
shape `categories` already has. */
|
|
4126
4161
|
entries?: (HelixHeadlessLegend["entries"]) | undefined;
|
|
4127
4162
|
/** The id of the table to take the names from.
|
|
4128
4163
|
|
|
@@ -4197,9 +4232,20 @@ useful thing: it is where a reader looks for "and what is it now", which is
|
|
|
4197
4232
|
the question a sparkline's single mark answers too.
|
|
4198
4233
|
|
|
4199
4234
|
`none` lets the lines stop on their own, which suits a chart read for its
|
|
4200
|
-
shape rather than for where it finished.
|
|
4235
|
+
shape rather than for where it finished. `square` is the same mark with its
|
|
4236
|
+
corners, for a drawing whose neighbors are square, the columns of a table
|
|
4237
|
+
beside it for instance. `ring` lets the ground through, for a chart drawn
|
|
4238
|
+
over something busy. `triangle` points along the axis and reads as "and
|
|
4239
|
+
onward" rather than as a second claim about the data.
|
|
4240
|
+
|
|
4241
|
+
The shapes come from
|
|
4201
4242
|
`helix/styled/src/shared/chart/terminus.css`, the same sheet `Sparkline` takes, so
|
|
4202
|
-
the set is identical wherever one appears.
|
|
4243
|
+
the set is identical wherever one appears. **Which is why every value is
|
|
4244
|
+
named here.** `Sparkline` shipped `square` implemented, drawn, asserted and
|
|
4245
|
+
undocumented until the cohort before this one; this family reads the same
|
|
4246
|
+
four out of the same sheet and had left two of them unwritten, so the
|
|
4247
|
+
finding arrived twice. A shared vocabulary wants naming at each door into
|
|
4248
|
+
it, because a reader arrives at one door and not at the set.
|
|
4203
4249
|
|
|
4204
4250
|
`ring` is the one that asks something of the drawing. It leaves a hole and a
|
|
4205
4251
|
line ends at the reading, which is the hole's center, so the `<svg>` is
|
|
@@ -8780,7 +8826,7 @@ one-line rows should leave this alone. */
|
|
|
8780
8826
|
export type HelixHeadlessVirtualListVueEvents = {};
|
|
8781
8827
|
|
|
8782
8828
|
export type CustomCssProperties = {
|
|
8783
|
-
/**
|
|
8829
|
+
/** How wide an axis column is drawn, in `ch`, from the widest number on it. Written on the axis itself, and only where the categories run along the bottom: turned sideways an axis is a row and takes a line's height instead. */
|
|
8784
8830
|
"--bar-chart-axis"?: (string) | undefined;
|
|
8785
8831
|
/** The color of the secondary axis when one series owns it. It resolves a `--helix-color-series-*` token, so on the headless tier alone it names something that is not there. #138. */
|
|
8786
8832
|
"--bar-chart-secondary"?: (string) | undefined;
|
|
@@ -8848,6 +8894,10 @@ export type CustomCssProperties = {
|
|
|
8848
8894
|
"--heatmap-tone-success"?: (string) | undefined;
|
|
8849
8895
|
/** What `warning` is worth. */
|
|
8850
8896
|
"--heatmap-tone-warning"?: (string) | undefined;
|
|
8897
|
+
/** Where a series' last reading sits horizontally, as a percentage. Written by the component. */
|
|
8898
|
+
"--chart-terminus-x"?: (string) | undefined;
|
|
8899
|
+
/** Where a series' last reading sits vertically, as a percentage. Written by the component. */
|
|
8900
|
+
"--chart-terminus-y"?: (string) | undefined;
|
|
8851
8901
|
/** Where the panel starts, measured from the bar above it. */
|
|
8852
8902
|
"--megamenu-top"?: (string) | undefined;
|
|
8853
8903
|
/** Where a bound sits on the arc, as a length along it. */
|
|
@@ -8884,10 +8934,6 @@ export type CustomCssProperties = {
|
|
|
8884
8934
|
"--slider-marker-at"?: (string) | undefined;
|
|
8885
8935
|
/** Where the filled span ends, as a percentage of the track. */
|
|
8886
8936
|
"--slider-to"?: (string) | undefined;
|
|
8887
|
-
/** Where the last point sits horizontally, as a percentage. */
|
|
8888
|
-
"--chart-terminus-x"?: (string) | undefined;
|
|
8889
|
-
/** Where the last point sits vertically, as a percentage. */
|
|
8890
|
-
"--chart-terminus-y"?: (string) | undefined;
|
|
8891
8937
|
/** Where a nested splitter crosses this one, as a percentage. */
|
|
8892
8938
|
"--splitter-corner-at"?: (string) | undefined;
|
|
8893
8939
|
/** Where the divider sits, as a percentage of the box. */
|
|
@@ -8938,7 +8984,7 @@ export interface WcToolkitVueGlobalComponents {
|
|
|
8938
8984
|
HelixHeadlessAppHeaderVueProps,
|
|
8939
8985
|
HelixHeadlessAppHeaderVueEvents
|
|
8940
8986
|
>;
|
|
8941
|
-
/** The chart for a composition: every column of the table is a part, the parts sum to the whole at each reading, and the top edge is that whole. What a line chart of the same table cannot show is the share, which here is the thickness of a band. **Not 'Line Chart' with 'area'.** That washes each series from the floor on its own, so the series overlap; this adds them. Reach for 'Line Chart' when the question is how each series moved, and for this when it is how the whole is made up. **It measures from zero, always**, which is 'BarChart''s rule and for the same reason: a band's thickness *is* its value, so a range that starts anywhere else draws every part in proportion to nothing. 'LineChart' measures from its own range because a line claims a position; a band claims an amount. **Straight between readings unless asked otherwise.** A band's top edge is a sum, and a curve fitted through one sum can pass under the curve fitted through the sum beneath it, so a smoothed stack can draw a part as less than nothing between two readings. Straight segments between ordered points stay ordered. 'curve="smooth"' is there for a stack that is read as a shape. **'share' draws each reading as a hundred percent**, so the bands are the parts' shares and the top edge is flat. It answers "which part grew" where the default answers "did the whole grow". **What a reader without the picture is told is the total and the share**, not every band in turn. The table beside the chart already reads out every number; what the drawing adds is the composition, so the summary says the latest reading's total and each part's share of it. The drawing itself is 'aria-hidden'. Every numeric column is a part. A table that carries its own total column would count it twice, so leave it out of the table the chart reads. A negative reading is drawn as none: a part of a whole cannot be less than nothing, and a band that folded under its neighbor would say it was. */
|
|
8987
|
+
/** The chart for a composition: every column of the table is a part, the parts sum to the whole at each reading, and the top edge is that whole. What a line chart of the same table cannot show is the share, which here is the thickness of a band. **Not 'Line Chart' with 'area'.** That washes each series from the floor on its own, so the series overlap; this adds them. Reach for 'Line Chart' when the question is how each series moved, and for this when it is how the whole is made up. **It measures from zero, always**, which is 'BarChart''s rule and for the same reason: a band's thickness *is* its value, so a range that starts anywhere else draws every part in proportion to nothing. 'LineChart' measures from its own range because a line claims a position; a band claims an amount. **And so it is not a streamgraph**, which is the near neighbor to name. A streamgraph moves its baseline to center the bands and reads as a river; it is a real form and it is the one thing the rule above refuses, so this carries no alias for it. What it has instead is 'share', which answers the question a streamgraph is usually reached for, how the composition changed, without giving up a floor a reader can measure against. **Straight between readings unless asked otherwise.** A band's top edge is a sum, and a curve fitted through one sum can pass under the curve fitted through the sum beneath it, so a smoothed stack can draw a part as less than nothing between two readings. Straight segments between ordered points stay ordered. 'curve="smooth"' is there for a stack that is read as a shape. 'curve="step"' falls on the safe side of that argument rather than being unanswered by it, and it is worth saying which side because a reader cannot tell from the argument alone. A step takes no value the readings do not have: it holds one, jumps at the midpoint, and holds the next. So two stepped edges that are ordered at every reading are ordered everywhere between them, which is what 'straight' is chosen for. It is the curve for a quantity that changes at a moment rather than across an interval, a headcount or a price, where a sloped edge claims a gradual change nothing measured. **'share' draws each reading as a hundred percent**, so the bands are the parts' shares and the top edge is flat. It answers "which part grew" where the default answers "did the whole grow". **What a reader without the picture is told is the total and the share**, not every band in turn. The table beside the chart already reads out every number; what the drawing adds is the composition, so the summary says the latest reading's total and each part's share of it. The drawing itself is 'aria-hidden'. Every numeric column is a part. A table that carries its own total column would count it twice, so leave it out of the table the chart reads. A negative reading is drawn as none: a part of a whole cannot be less than nothing, and a band that folded under its neighbor would say it was. */
|
|
8942
8988
|
"helix-headless-area-chart": DefineCustomElement<
|
|
8943
8989
|
HelixHeadlessAreaChart,
|
|
8944
8990
|
HelixHeadlessAreaChartVueProps,
|
|
@@ -9238,7 +9284,7 @@ export interface WcToolkitVueGlobalComponents {
|
|
|
9238
9284
|
HelixHeadlessKbdVueProps,
|
|
9239
9285
|
HelixHeadlessKbdVueEvents
|
|
9240
9286
|
>;
|
|
9241
|
-
/** A legend is a list, so it is a list: not part of a chart, and shared by whichever of them needs one. It takes its entries from the same table the chart reads, through 'for', so the two cannot disagree. 'entries' picks which way to read that table. 'series' is one entry per data column, named by the header row, which is a line or a bar chart. 'categories' is one entry per body row, which is a donut: its slices are the rows and it has no axis to write their names along. **The table is resolved on the client and there is no server pass.** */
|
|
9287
|
+
/** A legend is a list, so it is a list: not part of a chart, and shared by whichever of them needs one. It takes its entries from the same table the chart reads, through 'for', so the two cannot disagree. 'entries' picks which way to read that table. 'series' is one entry per data column, named by the header row, which is a line or a bar chart. 'categories' is one entry per body row, which is a donut: its slices are the rows and it has no axis to write their names along. 'measures' drops the first data column, which is a scatter. **The table is resolved on the client and there is no server pass.** */
|
|
9242
9288
|
"helix-headless-legend": DefineCustomElement<
|
|
9243
9289
|
HelixHeadlessLegend,
|
|
9244
9290
|
HelixHeadlessLegendVueProps,
|