@fusion.dev/helix-headless 0.152.0 → 0.154.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 +1143 -62
- package/dist/area-chart/root/area-chart-root.d.ts +16 -1
- package/dist/area-chart/root/area-chart-root.js +3 -3
- package/dist/badge/root/badge-root.d.ts +15 -2
- package/dist/badge/root/badge-root.js +20 -3
- package/dist/bar-chart/root/bar-chart-root.d.ts +16 -1
- package/dist/bar-chart/root/bar-chart-root.js +3 -3
- package/dist/card/root/card-root.d.ts +31 -11
- package/dist/card/root/card-root.js +25 -11
- package/dist/code/root/code-root.d.ts +7 -0
- package/dist/code/root/code-root.js +1 -1
- package/dist/code-block/root/code-block-root.d.ts +37 -1
- package/dist/code-block/root/code-block-root.js +38 -5
- package/dist/empty/root/empty-root.d.ts +19 -1
- package/dist/empty/root/empty-root.js +13 -4
- package/dist/heatmap/root/heatmap-root.d.ts +3 -0
- package/dist/heatmap/root/heatmap-root.js +2 -8
- package/dist/icon/fetch.d.ts +20 -0
- package/dist/icon/fetch.js +70 -0
- package/dist/icon/root/icon-root.d.ts +27 -5
- package/dist/icon/root/icon-root.js +41 -17
- package/dist/line-chart/root/line-chart-root.d.ts +16 -1
- package/dist/line-chart/root/line-chart-root.js +3 -3
- package/dist/loader/root/loader-root.d.ts +5 -0
- package/dist/progress/root/progress-root.d.ts +16 -1
- package/dist/progress/root/progress-root.js +12 -4
- package/dist/quote/root/quote-root.d.ts +17 -1
- package/dist/quote/root/quote-root.js +15 -2
- package/dist/scatter-chart/root/scatter-chart-root.d.ts +16 -1
- package/dist/scatter-chart/root/scatter-chart-root.js +3 -3
- package/dist/skeleton/root/skeleton-root.d.ts +7 -0
- package/dist/skeleton/root/skeleton-root.js +4 -1
- package/dist/stat/group/stat-group.d.ts +23 -4
- package/dist/stat/group/stat-group.js +13 -1
- package/dist/stat/root/stat-root.d.ts +46 -1
- package/dist/stat/root/stat-root.js +29 -5
- package/lint.json +1 -1
- package/package.json +5 -5
- package/types/jsx.d.ts +1434 -62
- package/types/vue.d.ts +297 -24
- package/types/words.d.ts +69 -0
package/custom-elements.json
CHANGED
|
@@ -3158,7 +3158,7 @@
|
|
|
3158
3158
|
"declarations": [
|
|
3159
3159
|
{
|
|
3160
3160
|
"kind": "class",
|
|
3161
|
-
"description": "Shows how a total is made up. Each numeric column of the table is a part, the\nparts add up to the total at each reading, and the top edge is that total.\nThe thickness of a band is that part's amount.\n\nUse `LineChart` with `area` to show how each series moved: it fills each\nseries from the floor separately, so the fills overlap. Use this chart to\nshow the composition: it stacks the series.\n\n**The value axis always starts at zero**, as in `BarChart`, because a band's\nthickness is its value. For the same reason there is no streamgraph mode,\nwhich moves the baseline. To show how the composition changed, set `share`.\n\nBand edges are straight between readings by default. A smoothed curve through\none sum can dip below the curve through the sum beneath it, which draws a\npart as less than zero. Other curves:\n\n- `curve=\"smooth\"`: for a stack read as an overall shape.\n- `curve=\"step\"`: holds each reading and jumps at the midpoint, so stacked\n edges stay in order, as with `straight`. Use it for a quantity that changes\n at a moment, such as a headcount or a price.\n\n`share` draws each reading as 100 percent, so the top edge is flat and the\nbands show each part's share. Use it to see which part grew. The default\nshows whether the total grew.\n\n`overlap` draws every band from zero, one in front of another, so each\npart's own amount is its height: the first column is in front. Use it to\ncompare the parts with each other; the scale then fits the largest part\nrather than the total.\n\n`value-axis` draws the scale's numbers beside the plot, at the levels\n`gridlines` rules: amounts in `locale`, or percentages under `share`.\n\nThe drawing is hidden from screen readers. The text summary gives the latest\nreading's total and each part's share of it, and the table beside the chart\nhas every number.\n\n**The plot is read by key.** It takes focus, named by `label` or the caption.\nThe left and right arrows move from reading to reading, Home and End go to\nthe first and the last, and the up and down arrows move among the series of\na reading. The tooltip follows, the `live` part says the reading in words,\nand Escape puts the tooltip away.\n\nEvery numeric column is a part, so leave a total column out of the table the\nchart reads, or it is counted twice. A negative reading is drawn as zero.\n\n**A tap shows the reading under it**, and keeps it until a tap lands\nelsewhere. `helix-reading-change` says each move of the reading, by pointer,\ntap or key, and `helix-reading-press` says a reading was clicked, tapped, or\npressed with Enter or Space, for a page that opens what a reading stands for.",
|
|
3161
|
+
"description": "Shows how a total is made up. Each numeric column of the table is a part, the\nparts add up to the total at each reading, and the top edge is that total.\nThe thickness of a band is that part's amount.\n\nUse `LineChart` with `area` to show how each series moved: it fills each\nseries from the floor separately, so the fills overlap. Use this chart to\nshow the composition: it stacks the series.\n\n**The value axis always starts at zero**, as in `BarChart`, because a band's\nthickness is its value. For the same reason there is no streamgraph mode,\nwhich moves the baseline. To show how the composition changed, set `share`.\n\nBand edges are straight between readings by default. A smoothed curve through\none sum can dip below the curve through the sum beneath it, which draws a\npart as less than zero. Other curves:\n\n- `curve=\"smooth\"`: for a stack read as an overall shape.\n- `curve=\"step\"`: holds each reading and jumps at the midpoint, so stacked\n edges stay in order, as with `straight`. Use it for a quantity that changes\n at a moment, such as a headcount or a price.\n\n`share` draws each reading as 100 percent, so the top edge is flat and the\nbands show each part's share. Use it to see which part grew. The default\nshows whether the total grew.\n\n`overlap` draws every band from zero, one in front of another, so each\npart's own amount is its height: the first column is in front. Use it to\ncompare the parts with each other; the scale then fits the largest part\nrather than the total.\n\n`value-axis` draws the scale's numbers beside the plot, at the levels\n`gridlines` rules: amounts in `locale`, or percentages under `share`.\n\nThe drawing is hidden from screen readers. The text summary gives the latest\nreading's total and each part's share of it, and the table beside the chart\nhas every number.\n\n**The plot is read by key.** It takes focus, named by `label` or the caption.\nThe left and right arrows move from reading to reading, Home and End go to\nthe first and the last, and the up and down arrows move among the series of\na reading. The tooltip follows, the `live` part says the reading in words,\nand Escape puts the tooltip away.\n\nEvery numeric column is a part, so leave a total column out of the table the\nchart reads, or it is counted twice. A negative reading is drawn as zero.\n\n**A tap shows the reading under it**, and keeps it until a tap lands\nelsewhere. `helix-reading-change` says each move of the reading, by pointer,\ntap or key, and `helix-reading-press` says a reading was clicked, tapped, or\npressed with Enter or Space, for a page that opens what a reading stands for.\n\n**`data` takes the readings as data** where the page has no table to point\n`for` at, in a table's shape: the column headings, then one row per reading\nwith its label first. A table is still the better source where the page can\nshow one, since it reads before any script runs.\n\n**A chart with nothing to draw says so.** A table with no readings shows\n`empty-text`, \"No readings\", in the plot, and `loading` shows `loading-text`\nthere until readings arrive. The `empty` and `loading` slots take markup in\ntheir place, such as a link to add the first reading.",
|
|
3162
3162
|
"name": "HelixHeadlessAreaChart",
|
|
3163
3163
|
"cssProperties": [
|
|
3164
3164
|
{
|
|
@@ -3179,6 +3179,10 @@
|
|
|
3179
3179
|
"description": "The rule at zero, which is the floor of the drawing.",
|
|
3180
3180
|
"name": "baseline"
|
|
3181
3181
|
},
|
|
3182
|
+
{
|
|
3183
|
+
"description": "The words in place of the drawing when the table has no readings: the `empty` slot, falling back to `empty-text`. Not drawn while the table cannot be read yet, on the server and during hydration.",
|
|
3184
|
+
"name": "empty"
|
|
3185
|
+
},
|
|
3182
3186
|
{
|
|
3183
3187
|
"description": "One rule across the plot, under `gridlines`.",
|
|
3184
3188
|
"name": "gridline"
|
|
@@ -3203,6 +3207,10 @@
|
|
|
3203
3207
|
"description": "The readout: a polite live region that says the reading the keys moved to. Hide it visually.",
|
|
3204
3208
|
"name": "live"
|
|
3205
3209
|
},
|
|
3210
|
+
{
|
|
3211
|
+
"description": "The words in place of the drawing while `loading` is set and there are no readings: the `loading` slot, falling back to `loading-text`.",
|
|
3212
|
+
"name": "loading"
|
|
3213
|
+
},
|
|
3206
3214
|
{
|
|
3207
3215
|
"description": "The invisible point the tooltip is anchored to.",
|
|
3208
3216
|
"name": "mark"
|
|
@@ -3288,6 +3296,16 @@
|
|
|
3288
3296
|
"name": "tooltip-value"
|
|
3289
3297
|
}
|
|
3290
3298
|
],
|
|
3299
|
+
"slots": [
|
|
3300
|
+
{
|
|
3301
|
+
"description": "Content shown in place of the drawing when the table has no readings, such as a link to add the first. Falls back to `empty-text`.",
|
|
3302
|
+
"name": "empty"
|
|
3303
|
+
},
|
|
3304
|
+
{
|
|
3305
|
+
"description": "Content shown in place of the drawing while `loading` is set and there are no readings yet. Falls back to `loading-text`.",
|
|
3306
|
+
"name": "loading"
|
|
3307
|
+
}
|
|
3308
|
+
],
|
|
3291
3309
|
"members": [
|
|
3292
3310
|
{
|
|
3293
3311
|
"kind": "field",
|
|
@@ -3686,6 +3704,70 @@
|
|
|
3686
3704
|
],
|
|
3687
3705
|
"description": "What a pointer resting on a reading shows, above the top of the stack."
|
|
3688
3706
|
},
|
|
3707
|
+
{
|
|
3708
|
+
"kind": "field",
|
|
3709
|
+
"name": "emptyText",
|
|
3710
|
+
"type": {
|
|
3711
|
+
"text": "string"
|
|
3712
|
+
},
|
|
3713
|
+
"default": "'No readings'",
|
|
3714
|
+
"description": "The words shown in place of the drawing when the table has no readings,\nand the fallback of the `empty` slot.",
|
|
3715
|
+
"attribute": "empty-text",
|
|
3716
|
+
"helix": {
|
|
3717
|
+
"words": true
|
|
3718
|
+
},
|
|
3719
|
+
"inheritedFrom": {
|
|
3720
|
+
"name": "MixinChartStatus",
|
|
3721
|
+
"module": "src/mixins/mixin-chart-status/mixin-chart-status.ts"
|
|
3722
|
+
}
|
|
3723
|
+
},
|
|
3724
|
+
{
|
|
3725
|
+
"kind": "field",
|
|
3726
|
+
"name": "loading",
|
|
3727
|
+
"type": {
|
|
3728
|
+
"text": "boolean"
|
|
3729
|
+
},
|
|
3730
|
+
"default": "false",
|
|
3731
|
+
"description": "Whether the readings are still on their way. The chart shows\n`loading-text` in place of an empty drawing until it has readings.\n\nReflected, so a stylesheet can treat the chart while it waits. A chart\nthat already has readings keeps drawing them, so a refresh does not\nblank it.",
|
|
3732
|
+
"attribute": "loading",
|
|
3733
|
+
"reflects": true,
|
|
3734
|
+
"inheritedFrom": {
|
|
3735
|
+
"name": "MixinChartStatus",
|
|
3736
|
+
"module": "src/mixins/mixin-chart-status/mixin-chart-status.ts"
|
|
3737
|
+
}
|
|
3738
|
+
},
|
|
3739
|
+
{
|
|
3740
|
+
"kind": "field",
|
|
3741
|
+
"name": "loadingText",
|
|
3742
|
+
"type": {
|
|
3743
|
+
"text": "string"
|
|
3744
|
+
},
|
|
3745
|
+
"default": "'Loading readings'",
|
|
3746
|
+
"description": "The words shown in place of the drawing while `loading` is set and\nthere are no readings yet, and the fallback of the `loading` slot.",
|
|
3747
|
+
"attribute": "loading-text",
|
|
3748
|
+
"helix": {
|
|
3749
|
+
"words": true
|
|
3750
|
+
},
|
|
3751
|
+
"inheritedFrom": {
|
|
3752
|
+
"name": "MixinChartStatus",
|
|
3753
|
+
"module": "src/mixins/mixin-chart-status/mixin-chart-status.ts"
|
|
3754
|
+
}
|
|
3755
|
+
},
|
|
3756
|
+
{
|
|
3757
|
+
"kind": "method",
|
|
3758
|
+
"name": "renderStatus",
|
|
3759
|
+
"privacy": "protected",
|
|
3760
|
+
"return": {
|
|
3761
|
+
"type": {
|
|
3762
|
+
"text": "TemplateResult | typeof nothing"
|
|
3763
|
+
}
|
|
3764
|
+
},
|
|
3765
|
+
"description": "What stands in the plot while there is nothing to draw: the `loading`\nline, the `empty` line, or nothing while the table cannot be read yet.\n\n`dir=\"auto\"`, so words in a right-to-left script read their own way in\na plot that holds itself left to right, as Scatter Chart's does.",
|
|
3766
|
+
"inheritedFrom": {
|
|
3767
|
+
"name": "MixinChartStatus",
|
|
3768
|
+
"module": "src/mixins/mixin-chart-status/mixin-chart-status.ts"
|
|
3769
|
+
}
|
|
3770
|
+
},
|
|
3689
3771
|
{
|
|
3690
3772
|
"kind": "field",
|
|
3691
3773
|
"name": "source",
|
|
@@ -3709,6 +3791,19 @@
|
|
|
3709
3791
|
"module": "src/mixins/mixin-chart-source/mixin-chart-source.ts"
|
|
3710
3792
|
}
|
|
3711
3793
|
},
|
|
3794
|
+
{
|
|
3795
|
+
"kind": "field",
|
|
3796
|
+
"name": "data",
|
|
3797
|
+
"type": {
|
|
3798
|
+
"text": "ChartData | undefined"
|
|
3799
|
+
},
|
|
3800
|
+
"default": "undefined",
|
|
3801
|
+
"description": "The readings as data, in the shape of a table, where the page has no\ntable to point `for` at. `for` wins where both are set.\n\n```js\nchart.data = {\n caption: 'Sessions by channel',\n columns: ['Month', 'Direct', 'Referral'],\n rows: [['Jan', 10, 4], ['Feb', 20, 8]],\n}\n```\n\nThe first column holds each row's label and every column after it a\nseries, as in a table. A cell is a number, words, `null` for a blank,\nor `{ value, text }` for a number shown as words, such as `$128k`. A\nnumber is shown in `locale`.\n\n**A table is still the better source where the page can show one**:\nit reads with no script and before hydration, and a reader can sort and\ncopy it. Data is drawn on the client only, so a server serves the\nframe, and the summary, the keys and the readout are then the whole of\nwhat a screen reader is given. Set a new object to redraw: the chart\ndoes not look inside the one it has.",
|
|
3802
|
+
"inheritedFrom": {
|
|
3803
|
+
"name": "MixinChartSource",
|
|
3804
|
+
"module": "src/mixins/mixin-chart-source/mixin-chart-source.ts"
|
|
3805
|
+
}
|
|
3806
|
+
},
|
|
3712
3807
|
{
|
|
3713
3808
|
"kind": "field",
|
|
3714
3809
|
"name": "for",
|
|
@@ -3845,6 +3940,19 @@
|
|
|
3845
3940
|
"module": "src/mixins/mixin-chart-source/mixin-chart-source.ts"
|
|
3846
3941
|
}
|
|
3847
3942
|
},
|
|
3943
|
+
{
|
|
3944
|
+
"kind": "field",
|
|
3945
|
+
"name": "readingsKnown",
|
|
3946
|
+
"type": {
|
|
3947
|
+
"text": "boolean"
|
|
3948
|
+
},
|
|
3949
|
+
"description": "Whether the readings have been looked for: false on the server and\nwhile hydrating, where no table is resolved and no data is read. A\nchart says it has no readings only once this is true.",
|
|
3950
|
+
"readonly": true,
|
|
3951
|
+
"inheritedFrom": {
|
|
3952
|
+
"name": "MixinChartSource",
|
|
3953
|
+
"module": "src/mixins/mixin-chart-source/mixin-chart-source.ts"
|
|
3954
|
+
}
|
|
3955
|
+
},
|
|
3848
3956
|
{
|
|
3849
3957
|
"kind": "field",
|
|
3850
3958
|
"name": "sourceRows",
|
|
@@ -4404,6 +4512,45 @@
|
|
|
4404
4512
|
"description": "Draws the scale's numbers beside the plot, the `axis` part, at the levels\n`gridlines` rules: amounts, or percentages under `share`.\n\nAbsent draws none: bands read as a composition need no numbers beside\nthem, and the tooltip and the table hold every reading.",
|
|
4405
4513
|
"fieldName": "valueAxis"
|
|
4406
4514
|
},
|
|
4515
|
+
{
|
|
4516
|
+
"name": "empty-text",
|
|
4517
|
+
"type": {
|
|
4518
|
+
"text": "string"
|
|
4519
|
+
},
|
|
4520
|
+
"default": "'No readings'",
|
|
4521
|
+
"description": "The words shown in place of the drawing when the table has no readings,\nand the fallback of the `empty` slot.",
|
|
4522
|
+
"fieldName": "emptyText",
|
|
4523
|
+
"inheritedFrom": {
|
|
4524
|
+
"name": "MixinChartStatus",
|
|
4525
|
+
"module": "src/mixins/mixin-chart-status/mixin-chart-status.ts"
|
|
4526
|
+
}
|
|
4527
|
+
},
|
|
4528
|
+
{
|
|
4529
|
+
"name": "loading",
|
|
4530
|
+
"type": {
|
|
4531
|
+
"text": "boolean"
|
|
4532
|
+
},
|
|
4533
|
+
"default": "false",
|
|
4534
|
+
"description": "Whether the readings are still on their way. The chart shows\n`loading-text` in place of an empty drawing until it has readings.\n\nReflected, so a stylesheet can treat the chart while it waits. A chart\nthat already has readings keeps drawing them, so a refresh does not\nblank it.",
|
|
4535
|
+
"fieldName": "loading",
|
|
4536
|
+
"inheritedFrom": {
|
|
4537
|
+
"name": "MixinChartStatus",
|
|
4538
|
+
"module": "src/mixins/mixin-chart-status/mixin-chart-status.ts"
|
|
4539
|
+
}
|
|
4540
|
+
},
|
|
4541
|
+
{
|
|
4542
|
+
"name": "loading-text",
|
|
4543
|
+
"type": {
|
|
4544
|
+
"text": "string"
|
|
4545
|
+
},
|
|
4546
|
+
"default": "'Loading readings'",
|
|
4547
|
+
"description": "The words shown in place of the drawing while `loading` is set and\nthere are no readings yet, and the fallback of the `loading` slot.",
|
|
4548
|
+
"fieldName": "loadingText",
|
|
4549
|
+
"inheritedFrom": {
|
|
4550
|
+
"name": "MixinChartStatus",
|
|
4551
|
+
"module": "src/mixins/mixin-chart-status/mixin-chart-status.ts"
|
|
4552
|
+
}
|
|
4553
|
+
},
|
|
4407
4554
|
{
|
|
4408
4555
|
"name": "for",
|
|
4409
4556
|
"type": {
|
|
@@ -4458,6 +4605,10 @@
|
|
|
4458
4605
|
}
|
|
4459
4606
|
],
|
|
4460
4607
|
"mixins": [
|
|
4608
|
+
{
|
|
4609
|
+
"name": "MixinChartStatus",
|
|
4610
|
+
"package": "@fusion.dev/helix-core"
|
|
4611
|
+
},
|
|
4461
4612
|
{
|
|
4462
4613
|
"name": "MixinChartSource",
|
|
4463
4614
|
"package": "@fusion.dev/helix-core"
|
|
@@ -5905,11 +6056,15 @@
|
|
|
5905
6056
|
"declarations": [
|
|
5906
6057
|
{
|
|
5907
6058
|
"kind": "class",
|
|
5908
|
-
"description": "Badge wraps the element it decorates and pins an indicator to its corner, so\nthe wrapped element keeps its place in the layout.\n\nWhat the indicator shows depends on `value`:\n\n- A `value` of zero shows no indicator.\n- No `value` shows a dot.\n- Any other value shows the value. Above `max`, the indicator shows `{max}+`,\n so its width stays the same as the count grows.\n\n`format-options` writes a count with `Intl.NumberFormat`, in `locale`:\n`format-options='{\"notation\":\"compact\"}'` shows 1,200 as `1.2K`. Absent, the\ncount is shown as it was given.\n\nA count is announced from its own text, and `label` replaces that with a\nfuller name, such as `4 unread`. A dot needs a `label`. Without one, the dot\nis a colored circle that screen readers do not announce.\n\n**A badge wrapped around a control describes it.** The control is the first\nelement in the badge that takes focus, and its description is the badge's\nwords, so focusing `<helix-badge value=\"8\" label=\"{count} unread\"><button>Inbox\n</button></helix-badge>` announces \"Inbox, button, 8 unread\", current as the\ncount changes. A control that already has a description keeps its own. The\ncount is also a status of its own, read when it changes.\n\n**Put the badge inside the control to have its count read with the\ncontrol's name**, as Web Awesome and Shoelace do: `<button>Inbox\n<helix-badge value=\"8\" label=\"8 unread\"></helix-badge></button>` is the\nbutton \"Inbox 8 unread\", and stays current as the count changes. The styled\ntier's `placement=\"inline\"` draws the mark in the line for that case.",
|
|
6059
|
+
"description": "Badge wraps the element it decorates and pins an indicator to its corner, so\nthe wrapped element keeps its place in the layout.\n\nWhat the indicator shows depends on `value`:\n\n- A `value` of zero shows no indicator.\n- No `value` shows a dot.\n- Any other value shows the value. Above `max`, the indicator shows `{max}+`,\n so its width stays the same as the count grows.\n\n`format-options` writes a count with `Intl.NumberFormat`, in `locale`:\n`format-options='{\"notation\":\"compact\"}'` shows 1,200 as `1.2K`. Absent, the\ncount is shown as it was given.\n\nA count is announced from its own text, and `label` replaces that with a\nfuller name, such as `4 unread`. A dot needs a `label`. Without one, the dot\nis a colored circle that screen readers do not announce.\n\n**A badge wrapped around a control describes it.** The control is the first\nelement in the badge that takes focus, and its description is the badge's\nwords, so focusing `<helix-badge value=\"8\" label=\"{count} unread\"><button>Inbox\n</button></helix-badge>` announces \"Inbox, button, 8 unread\", current as the\ncount changes. A control that already has a description keeps its own. The\ncount is also a status of its own, read when it changes.\n\n**Put the badge inside the control to have its count read with the\ncontrol's name**, as Web Awesome and Shoelace do: `<button>Inbox\n<helix-badge value=\"8\" label=\"8 unread\"></helix-badge></button>` is the\nbutton \"Inbox 8 unread\", and stays current as the count changes. The styled\ntier's `placement=\"inline\"` draws the mark in the line for that case.\n\n**An icon goes inside the mark** through the `icon` slot, before the count,\nas Web Awesome's badge takes one at its start. With no `value` the icon is\nthe whole mark, such as a check on an avatar, drawn where the dot would be.\nThe icon is hidden from screen readers: the count and `label` are what the\nmark says.",
|
|
5909
6060
|
"name": "HelixHeadlessBadge",
|
|
5910
6061
|
"cssParts": [
|
|
5911
6062
|
{
|
|
5912
|
-
"description": "The
|
|
6063
|
+
"description": "The slot the icon arrives through, inside the indicator. A slot draws no box, so it passes inherited properties, such as color, to the icon.",
|
|
6064
|
+
"name": "icon"
|
|
6065
|
+
},
|
|
6066
|
+
{
|
|
6067
|
+
"description": "The count, or the dot when there is no value. Carries `data-dot` when there is no value, `data-single` when the count is one character, and `data-blank` when the value is zero.",
|
|
5913
6068
|
"name": "indicator"
|
|
5914
6069
|
}
|
|
5915
6070
|
],
|
|
@@ -5917,6 +6072,10 @@
|
|
|
5917
6072
|
{
|
|
5918
6073
|
"description": "The element being decorated.",
|
|
5919
6074
|
"name": ""
|
|
6075
|
+
},
|
|
6076
|
+
{
|
|
6077
|
+
"description": "An icon inside the mark, before the count, or the whole mark when there is no value. Hidden from screen readers.",
|
|
6078
|
+
"name": "icon"
|
|
5920
6079
|
}
|
|
5921
6080
|
],
|
|
5922
6081
|
"members": [
|
|
@@ -5968,6 +6127,23 @@
|
|
|
5968
6127
|
"description": "The count or short text to show.\n\nAbsent shows a dot, zero shows nothing.\n\n**A string, and a number is taken anyway.** What this shows is usually a\ncount, so `value={unread}` is the first thing a React consumer writes, and\na property assignment does not go through the attribute converter that\nwould have made it a string. Read raw it went straight into\n`this.value.trim()`, which threw inside `render` and left the mark showing\nwhatever it had last: measured, a badge set to the number 2 stayed an 8px\ndot with no digit in it, and the console carried\n`TypeError: this.value.trim is not a function`. A component whose whole job\nis showing a count must not lose the count for being handed one.",
|
|
5969
6128
|
"attribute": "value"
|
|
5970
6129
|
},
|
|
6130
|
+
{
|
|
6131
|
+
"kind": "field",
|
|
6132
|
+
"name": "hasIcon",
|
|
6133
|
+
"type": {
|
|
6134
|
+
"text": "boolean"
|
|
6135
|
+
},
|
|
6136
|
+
"privacy": "private",
|
|
6137
|
+
"default": "false",
|
|
6138
|
+
"description": "Whether something is slotted into `icon`, read from the children."
|
|
6139
|
+
},
|
|
6140
|
+
{
|
|
6141
|
+
"kind": "field",
|
|
6142
|
+
"name": "readIcon",
|
|
6143
|
+
"privacy": "private",
|
|
6144
|
+
"readonly": true,
|
|
6145
|
+
"description": "Reads whether an icon is slotted, from the children where they can be known."
|
|
6146
|
+
},
|
|
5971
6147
|
{
|
|
5972
6148
|
"kind": "field",
|
|
5973
6149
|
"name": "given",
|
|
@@ -6460,9 +6636,13 @@
|
|
|
6460
6636
|
"name": "capped"
|
|
6461
6637
|
},
|
|
6462
6638
|
{
|
|
6463
|
-
"description": "There is no value, so the mark is a dot.",
|
|
6639
|
+
"description": "There is no value and no icon, so the mark is a dot.",
|
|
6464
6640
|
"name": "dot"
|
|
6465
6641
|
},
|
|
6642
|
+
{
|
|
6643
|
+
"description": "Something is slotted into `icon`, so it is drawn inside the mark.",
|
|
6644
|
+
"name": "has-icon"
|
|
6645
|
+
},
|
|
6466
6646
|
{
|
|
6467
6647
|
"description": "Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.",
|
|
6468
6648
|
"name": "settled",
|
|
@@ -6544,7 +6724,7 @@
|
|
|
6544
6724
|
"declarations": [
|
|
6545
6725
|
{
|
|
6546
6726
|
"kind": "class",
|
|
6547
|
-
"description": "Every bar is measured from zero, and no property changes the baseline,\nbecause a bar's length is its value. To show the differences between values,\nuse a line chart.\n\nThe labels are HTML beside the drawing. An `<svg>` that fills its box scales\nthe text inside it: the same `font-size` renders at 10px in a narrow chart\nand 43px in a wide one, and SVG has no setting that keeps text at one size\nthe way `vector-effect` does for strokes.\n\nThe table is the accessible representation, and the drawing is hidden from\nscreen readers, so they get the numbers themselves. The `summary` part names\nthe chart, from `label` or the table's caption, and gives each series' highest\nreading.\n\n**The plot is read by key.** It takes focus, named by `label` or the caption.\nThe arrows along the categories move from one to the next, which is left and\nright for columns and up and down for `orientation=\"horizontal\"`. Home and\nEnd go to the first and the last, and the other pair of arrows moves among\nthe series of a category. The tooltip follows, the `live` part says the\nreading in words, and Escape puts the tooltip away.\n\nThe component writes the custom properties below with numbers it computes,\nand the stylesheet that draws the chart reads them. Do not set them yourself.\n\n**A tap shows the reading under it**, and keeps it until a tap lands\nelsewhere. `helix-reading-change` says each move of the reading, by pointer,\ntap or key, and `helix-reading-press` says a reading was clicked, tapped, or\npressed with Enter or Space, for a page that opens what a reading stands for.",
|
|
6727
|
+
"description": "Every bar is measured from zero, and no property changes the baseline,\nbecause a bar's length is its value. To show the differences between values,\nuse a line chart.\n\nThe labels are HTML beside the drawing. An `<svg>` that fills its box scales\nthe text inside it: the same `font-size` renders at 10px in a narrow chart\nand 43px in a wide one, and SVG has no setting that keeps text at one size\nthe way `vector-effect` does for strokes.\n\nThe table is the accessible representation, and the drawing is hidden from\nscreen readers, so they get the numbers themselves. The `summary` part names\nthe chart, from `label` or the table's caption, and gives each series' highest\nreading.\n\n**The plot is read by key.** It takes focus, named by `label` or the caption.\nThe arrows along the categories move from one to the next, which is left and\nright for columns and up and down for `orientation=\"horizontal\"`. Home and\nEnd go to the first and the last, and the other pair of arrows moves among\nthe series of a category. The tooltip follows, the `live` part says the\nreading in words, and Escape puts the tooltip away.\n\nThe component writes the custom properties below with numbers it computes,\nand the stylesheet that draws the chart reads them. Do not set them yourself.\n\n**A tap shows the reading under it**, and keeps it until a tap lands\nelsewhere. `helix-reading-change` says each move of the reading, by pointer,\ntap or key, and `helix-reading-press` says a reading was clicked, tapped, or\npressed with Enter or Space, for a page that opens what a reading stands for.\n\n**`data` takes the readings as data** where the page has no table to point\n`for` at, in a table's shape: the column headings, then one row per reading\nwith its label first. A table is still the better source where the page can\nshow one, since it reads before any script runs.\n\n**A chart with nothing to draw says so.** A table with no readings shows\n`empty-text`, \"No readings\", in the plot, and `loading` shows `loading-text`\nthere until readings arrive. The `empty` and `loading` slots take markup in\ntheir place, such as a link to add the first reading.",
|
|
6548
6728
|
"name": "HelixHeadlessBarChart",
|
|
6549
6729
|
"cssProperties": [
|
|
6550
6730
|
{
|
|
@@ -6585,6 +6765,10 @@
|
|
|
6585
6765
|
"description": "The line the columns stand on.",
|
|
6586
6766
|
"name": "baseline"
|
|
6587
6767
|
},
|
|
6768
|
+
{
|
|
6769
|
+
"description": "The words in place of the drawing when the table has no readings: the `empty` slot, falling back to `empty-text`. Not drawn while the table cannot be read yet, on the server and during hydration.",
|
|
6770
|
+
"name": "empty"
|
|
6771
|
+
},
|
|
6588
6772
|
{
|
|
6589
6773
|
"description": "One gridline across the plot, drawn when `gridlines` is set.",
|
|
6590
6774
|
"name": "gridline"
|
|
@@ -6613,6 +6797,10 @@
|
|
|
6613
6797
|
"description": "The readout: a polite live region that says the reading the keys moved to. Hide it visually.",
|
|
6614
6798
|
"name": "live"
|
|
6615
6799
|
},
|
|
6800
|
+
{
|
|
6801
|
+
"description": "The words in place of the drawing while `loading` is set and there are no readings: the `loading` slot, falling back to `loading-text`.",
|
|
6802
|
+
"name": "loading"
|
|
6803
|
+
},
|
|
6616
6804
|
{
|
|
6617
6805
|
"description": "The invisible point the tooltip is anchored to.",
|
|
6618
6806
|
"name": "mark"
|
|
@@ -6698,6 +6886,16 @@
|
|
|
6698
6886
|
"name": "tooltip-value"
|
|
6699
6887
|
}
|
|
6700
6888
|
],
|
|
6889
|
+
"slots": [
|
|
6890
|
+
{
|
|
6891
|
+
"description": "Content shown in place of the drawing when the table has no readings, such as a link to add the first. Falls back to `empty-text`.",
|
|
6892
|
+
"name": "empty"
|
|
6893
|
+
},
|
|
6894
|
+
{
|
|
6895
|
+
"description": "Content shown in place of the drawing while `loading` is set and there are no readings yet. Falls back to `loading-text`.",
|
|
6896
|
+
"name": "loading"
|
|
6897
|
+
}
|
|
6898
|
+
],
|
|
6701
6899
|
"members": [
|
|
6702
6900
|
{
|
|
6703
6901
|
"kind": "field",
|
|
@@ -7129,6 +7327,70 @@
|
|
|
7129
7327
|
},
|
|
7130
7328
|
"description": "What a pointer resting on a reading shows.\n\nA seam over `drawTooltip`, which holds the markup every chart shares. The\nusual reason to override is arrangement: every cell of the row is already\nthere, including the columns nothing was plotted from."
|
|
7131
7329
|
},
|
|
7330
|
+
{
|
|
7331
|
+
"kind": "field",
|
|
7332
|
+
"name": "emptyText",
|
|
7333
|
+
"type": {
|
|
7334
|
+
"text": "string"
|
|
7335
|
+
},
|
|
7336
|
+
"default": "'No readings'",
|
|
7337
|
+
"description": "The words shown in place of the drawing when the table has no readings,\nand the fallback of the `empty` slot.",
|
|
7338
|
+
"attribute": "empty-text",
|
|
7339
|
+
"helix": {
|
|
7340
|
+
"words": true
|
|
7341
|
+
},
|
|
7342
|
+
"inheritedFrom": {
|
|
7343
|
+
"name": "MixinChartStatus",
|
|
7344
|
+
"module": "src/mixins/mixin-chart-status/mixin-chart-status.ts"
|
|
7345
|
+
}
|
|
7346
|
+
},
|
|
7347
|
+
{
|
|
7348
|
+
"kind": "field",
|
|
7349
|
+
"name": "loading",
|
|
7350
|
+
"type": {
|
|
7351
|
+
"text": "boolean"
|
|
7352
|
+
},
|
|
7353
|
+
"default": "false",
|
|
7354
|
+
"description": "Whether the readings are still on their way. The chart shows\n`loading-text` in place of an empty drawing until it has readings.\n\nReflected, so a stylesheet can treat the chart while it waits. A chart\nthat already has readings keeps drawing them, so a refresh does not\nblank it.",
|
|
7355
|
+
"attribute": "loading",
|
|
7356
|
+
"reflects": true,
|
|
7357
|
+
"inheritedFrom": {
|
|
7358
|
+
"name": "MixinChartStatus",
|
|
7359
|
+
"module": "src/mixins/mixin-chart-status/mixin-chart-status.ts"
|
|
7360
|
+
}
|
|
7361
|
+
},
|
|
7362
|
+
{
|
|
7363
|
+
"kind": "field",
|
|
7364
|
+
"name": "loadingText",
|
|
7365
|
+
"type": {
|
|
7366
|
+
"text": "string"
|
|
7367
|
+
},
|
|
7368
|
+
"default": "'Loading readings'",
|
|
7369
|
+
"description": "The words shown in place of the drawing while `loading` is set and\nthere are no readings yet, and the fallback of the `loading` slot.",
|
|
7370
|
+
"attribute": "loading-text",
|
|
7371
|
+
"helix": {
|
|
7372
|
+
"words": true
|
|
7373
|
+
},
|
|
7374
|
+
"inheritedFrom": {
|
|
7375
|
+
"name": "MixinChartStatus",
|
|
7376
|
+
"module": "src/mixins/mixin-chart-status/mixin-chart-status.ts"
|
|
7377
|
+
}
|
|
7378
|
+
},
|
|
7379
|
+
{
|
|
7380
|
+
"kind": "method",
|
|
7381
|
+
"name": "renderStatus",
|
|
7382
|
+
"privacy": "protected",
|
|
7383
|
+
"return": {
|
|
7384
|
+
"type": {
|
|
7385
|
+
"text": "TemplateResult | typeof nothing"
|
|
7386
|
+
}
|
|
7387
|
+
},
|
|
7388
|
+
"description": "What stands in the plot while there is nothing to draw: the `loading`\nline, the `empty` line, or nothing while the table cannot be read yet.\n\n`dir=\"auto\"`, so words in a right-to-left script read their own way in\na plot that holds itself left to right, as Scatter Chart's does.",
|
|
7389
|
+
"inheritedFrom": {
|
|
7390
|
+
"name": "MixinChartStatus",
|
|
7391
|
+
"module": "src/mixins/mixin-chart-status/mixin-chart-status.ts"
|
|
7392
|
+
}
|
|
7393
|
+
},
|
|
7132
7394
|
{
|
|
7133
7395
|
"kind": "field",
|
|
7134
7396
|
"name": "source",
|
|
@@ -7152,6 +7414,19 @@
|
|
|
7152
7414
|
"module": "src/mixins/mixin-chart-source/mixin-chart-source.ts"
|
|
7153
7415
|
}
|
|
7154
7416
|
},
|
|
7417
|
+
{
|
|
7418
|
+
"kind": "field",
|
|
7419
|
+
"name": "data",
|
|
7420
|
+
"type": {
|
|
7421
|
+
"text": "ChartData | undefined"
|
|
7422
|
+
},
|
|
7423
|
+
"default": "undefined",
|
|
7424
|
+
"description": "The readings as data, in the shape of a table, where the page has no\ntable to point `for` at. `for` wins where both are set.\n\n```js\nchart.data = {\n caption: 'Sessions by channel',\n columns: ['Month', 'Direct', 'Referral'],\n rows: [['Jan', 10, 4], ['Feb', 20, 8]],\n}\n```\n\nThe first column holds each row's label and every column after it a\nseries, as in a table. A cell is a number, words, `null` for a blank,\nor `{ value, text }` for a number shown as words, such as `$128k`. A\nnumber is shown in `locale`.\n\n**A table is still the better source where the page can show one**:\nit reads with no script and before hydration, and a reader can sort and\ncopy it. Data is drawn on the client only, so a server serves the\nframe, and the summary, the keys and the readout are then the whole of\nwhat a screen reader is given. Set a new object to redraw: the chart\ndoes not look inside the one it has.",
|
|
7425
|
+
"inheritedFrom": {
|
|
7426
|
+
"name": "MixinChartSource",
|
|
7427
|
+
"module": "src/mixins/mixin-chart-source/mixin-chart-source.ts"
|
|
7428
|
+
}
|
|
7429
|
+
},
|
|
7155
7430
|
{
|
|
7156
7431
|
"kind": "field",
|
|
7157
7432
|
"name": "for",
|
|
@@ -7288,6 +7563,19 @@
|
|
|
7288
7563
|
"module": "src/mixins/mixin-chart-source/mixin-chart-source.ts"
|
|
7289
7564
|
}
|
|
7290
7565
|
},
|
|
7566
|
+
{
|
|
7567
|
+
"kind": "field",
|
|
7568
|
+
"name": "readingsKnown",
|
|
7569
|
+
"type": {
|
|
7570
|
+
"text": "boolean"
|
|
7571
|
+
},
|
|
7572
|
+
"description": "Whether the readings have been looked for: false on the server and\nwhile hydrating, where no table is resolved and no data is read. A\nchart says it has no readings only once this is true.",
|
|
7573
|
+
"readonly": true,
|
|
7574
|
+
"inheritedFrom": {
|
|
7575
|
+
"name": "MixinChartSource",
|
|
7576
|
+
"module": "src/mixins/mixin-chart-source/mixin-chart-source.ts"
|
|
7577
|
+
}
|
|
7578
|
+
},
|
|
7291
7579
|
{
|
|
7292
7580
|
"kind": "field",
|
|
7293
7581
|
"name": "sourceRows",
|
|
@@ -7854,6 +8142,45 @@
|
|
|
7854
8142
|
"description": "Draws the numbers of the scale the bars are measured on, the `axis` part,\nat the levels `gridlines` rules: down the side of columns, and along the\nbottom of bars under `orientation=\"horizontal\"`.\n\nAbsent draws none with one scale, since bars compared with each other need\nno numbers. With `secondary` both scales are drawn whatever this says.",
|
|
7855
8143
|
"fieldName": "valueAxis"
|
|
7856
8144
|
},
|
|
8145
|
+
{
|
|
8146
|
+
"name": "empty-text",
|
|
8147
|
+
"type": {
|
|
8148
|
+
"text": "string"
|
|
8149
|
+
},
|
|
8150
|
+
"default": "'No readings'",
|
|
8151
|
+
"description": "The words shown in place of the drawing when the table has no readings,\nand the fallback of the `empty` slot.",
|
|
8152
|
+
"fieldName": "emptyText",
|
|
8153
|
+
"inheritedFrom": {
|
|
8154
|
+
"name": "MixinChartStatus",
|
|
8155
|
+
"module": "src/mixins/mixin-chart-status/mixin-chart-status.ts"
|
|
8156
|
+
}
|
|
8157
|
+
},
|
|
8158
|
+
{
|
|
8159
|
+
"name": "loading",
|
|
8160
|
+
"type": {
|
|
8161
|
+
"text": "boolean"
|
|
8162
|
+
},
|
|
8163
|
+
"default": "false",
|
|
8164
|
+
"description": "Whether the readings are still on their way. The chart shows\n`loading-text` in place of an empty drawing until it has readings.\n\nReflected, so a stylesheet can treat the chart while it waits. A chart\nthat already has readings keeps drawing them, so a refresh does not\nblank it.",
|
|
8165
|
+
"fieldName": "loading",
|
|
8166
|
+
"inheritedFrom": {
|
|
8167
|
+
"name": "MixinChartStatus",
|
|
8168
|
+
"module": "src/mixins/mixin-chart-status/mixin-chart-status.ts"
|
|
8169
|
+
}
|
|
8170
|
+
},
|
|
8171
|
+
{
|
|
8172
|
+
"name": "loading-text",
|
|
8173
|
+
"type": {
|
|
8174
|
+
"text": "string"
|
|
8175
|
+
},
|
|
8176
|
+
"default": "'Loading readings'",
|
|
8177
|
+
"description": "The words shown in place of the drawing while `loading` is set and\nthere are no readings yet, and the fallback of the `loading` slot.",
|
|
8178
|
+
"fieldName": "loadingText",
|
|
8179
|
+
"inheritedFrom": {
|
|
8180
|
+
"name": "MixinChartStatus",
|
|
8181
|
+
"module": "src/mixins/mixin-chart-status/mixin-chart-status.ts"
|
|
8182
|
+
}
|
|
8183
|
+
},
|
|
7857
8184
|
{
|
|
7858
8185
|
"name": "for",
|
|
7859
8186
|
"type": {
|
|
@@ -7908,6 +8235,10 @@
|
|
|
7908
8235
|
}
|
|
7909
8236
|
],
|
|
7910
8237
|
"mixins": [
|
|
8238
|
+
{
|
|
8239
|
+
"name": "MixinChartStatus",
|
|
8240
|
+
"package": "@fusion.dev/helix-core"
|
|
8241
|
+
},
|
|
7911
8242
|
{
|
|
7912
8243
|
"name": "MixinChartSource",
|
|
7913
8244
|
"package": "@fusion.dev/helix-core"
|
|
@@ -19369,7 +19700,7 @@
|
|
|
19369
19700
|
"declarations": [
|
|
19370
19701
|
{
|
|
19371
19702
|
"kind": "class",
|
|
19372
|
-
"description": "The header, body, and footer regions are slots, because they have no state,\nbehavior, or API of their own. You bring your own markup, so a title can be a\nreal `<h2>`.\n\nThe host is the surface. The element itself takes the border, the radius, and\nthe grid, so you style `Card` directly and there is no wrapper part to reach\nthrough with `::part`.\n\nName the card with `label`, as a Stat Group is named, or with `aria-label`\nor `aria-labelledby`.
|
|
19703
|
+
"description": "The header, body, and footer regions are slots, because they have no state,\nbehavior, or API of their own. You bring your own markup, so a title can be a\nreal `<h2>`.\n\nThe host is the surface. The element itself takes the border, the radius, and\nthe grid, so you style `Card` directly and there is no wrapper part to reach\nthrough with `::part`.\n\nName the card with `label`, as a Stat Group is named, or with `aria-label`\nor `aria-labelledby`. `label` is set through `ElementInternals`, so it\nwrites no attribute onto the card. **A named card is a group**, so a\nreader entering it hears its name; an unnamed one has no role, since a group\nwith no name only adds \"group\" to what a reader says.\n\n**With none of those, a heading in `header` names the card**, such as the\n`<h2>` of its title, by reference, so the name follows the heading's words.\nReading a heading needs a DOM, so a served card is named by it once the\nscript runs; `label`, `aria-label` and `aria-labelledby` are the names a\nserver writes.\n\nEach region's slot is a part of the same name, `body` for the main content,\nas Web Awesome's card names its regions. A slot draws no box, so a part\npasses inherited properties to what is slotted, and a page wanting a box\nthere gives it one with `display`.\n\n`header-actions` and `footer-actions` hold controls at the end of the\nheader's and the footer's line, as Web Awesome's card does. While one holds\nsomething, its line is a `header-row` or `footer-row` part; otherwise there\nis no wrapper and every region is a bare slot. A server cannot see slotted\ncontent, so a served card has no row; the styled tier sets served actions at\nthe end of their line from the stylesheet alone, so they do not move when\nthe script runs.\n\n**The card says which regions it holds**, as `:state(has-media)`,\n`:state(has-header)` and `:state(has-footer)`, so a sheet can draw a card\nwith a header differently, as Web Awesome's `with-header` does, with no\nattribute written onto the card. Read in the browser, so a served card\ncarries none until the script runs.",
|
|
19373
19704
|
"name": "HelixHeadlessCard",
|
|
19374
19705
|
"cssParts": [
|
|
19375
19706
|
{
|
|
@@ -19452,6 +19783,49 @@
|
|
|
19452
19783
|
"attribute": "media-placement",
|
|
19453
19784
|
"reflects": true
|
|
19454
19785
|
},
|
|
19786
|
+
{
|
|
19787
|
+
"kind": "field",
|
|
19788
|
+
"name": "observedAttributes",
|
|
19789
|
+
"type": {
|
|
19790
|
+
"text": "string[]"
|
|
19791
|
+
},
|
|
19792
|
+
"static": true,
|
|
19793
|
+
"description": "Hears a name written on the card, which no property mirrors.\n\nLit observes the attributes of its own properties only, and `ariaLabel`\nand `ariaLabelledByElements` belong to the platform. Observed here rather\nthan through a property, so the manifest lists no attribute of the card's\nown for them.",
|
|
19794
|
+
"readonly": true
|
|
19795
|
+
},
|
|
19796
|
+
{
|
|
19797
|
+
"kind": "method",
|
|
19798
|
+
"name": "attributeChangedCallback",
|
|
19799
|
+
"return": {
|
|
19800
|
+
"type": {
|
|
19801
|
+
"text": "void"
|
|
19802
|
+
}
|
|
19803
|
+
},
|
|
19804
|
+
"parameters": [
|
|
19805
|
+
{
|
|
19806
|
+
"name": "name",
|
|
19807
|
+
"type": {
|
|
19808
|
+
"text": "string"
|
|
19809
|
+
}
|
|
19810
|
+
},
|
|
19811
|
+
{
|
|
19812
|
+
"name": "old",
|
|
19813
|
+
"type": {
|
|
19814
|
+
"text": "string | null"
|
|
19815
|
+
}
|
|
19816
|
+
},
|
|
19817
|
+
{
|
|
19818
|
+
"name": "value",
|
|
19819
|
+
"type": {
|
|
19820
|
+
"text": "string | null"
|
|
19821
|
+
}
|
|
19822
|
+
}
|
|
19823
|
+
],
|
|
19824
|
+
"description": "Called by the browser when an observed attribute changes. A name written\nor taken off asks for an update, because it decides whether the card is a\ngroup and whether its heading names it.",
|
|
19825
|
+
"type": {
|
|
19826
|
+
"text": "attributeChangedCallback(name: string, old: string | null, value: string | null) => void"
|
|
19827
|
+
}
|
|
19828
|
+
},
|
|
19455
19829
|
{
|
|
19456
19830
|
"kind": "field",
|
|
19457
19831
|
"name": "footerActions",
|
|
@@ -19472,6 +19846,17 @@
|
|
|
19472
19846
|
"default": "false",
|
|
19473
19847
|
"description": "Whether `header-actions` holds something, read from the slot."
|
|
19474
19848
|
},
|
|
19849
|
+
{
|
|
19850
|
+
"kind": "method",
|
|
19851
|
+
"name": "writeName",
|
|
19852
|
+
"privacy": "private",
|
|
19853
|
+
"return": {
|
|
19854
|
+
"type": {
|
|
19855
|
+
"text": "void"
|
|
19856
|
+
}
|
|
19857
|
+
},
|
|
19858
|
+
"description": "Says what the card is and what names it. On the host, since the host is\nthe box, and from `willUpdate`, which the server calls too.\n\n**A heading in `header` is the name only where nothing else is**, and it\nnames the card by reference, so a renamed heading renames the card. An\nengine without element references hears its words."
|
|
19859
|
+
},
|
|
19475
19860
|
{
|
|
19476
19861
|
"kind": "field",
|
|
19477
19862
|
"name": "readRegions",
|
|
@@ -19835,20 +20220,6 @@
|
|
|
19835
20220
|
},
|
|
19836
20221
|
"description": "Places the media after the content. By default it comes before.\n\n**A figure that concludes a card is the same region as one that opens it**,\nand the only thing that differs is which edge it is flush against. Media is\nthe one region that escapes the inset, so a chart wanting to span the card\nhas nowhere else to be: slotted into the content it keeps the padding on\nboth sides, and there is no second bleeding region to add without saying\ntwice what this says once.\n\nReflected and undefaulted, so a card that has not asked reads as a card\nwith no attribute on it and the stylesheet only describes the departure.",
|
|
19837
20222
|
"fieldName": "mediaPlacement"
|
|
19838
|
-
},
|
|
19839
|
-
{
|
|
19840
|
-
"name": "aria-labelledby",
|
|
19841
|
-
"type": {
|
|
19842
|
-
"text": "string | null"
|
|
19843
|
-
},
|
|
19844
|
-
"default": "null"
|
|
19845
|
-
},
|
|
19846
|
-
{
|
|
19847
|
-
"name": "aria-label",
|
|
19848
|
-
"type": {
|
|
19849
|
-
"text": "string | null"
|
|
19850
|
-
},
|
|
19851
|
-
"default": "null"
|
|
19852
20223
|
}
|
|
19853
20224
|
],
|
|
19854
20225
|
"cssStates": [
|
|
@@ -29391,7 +29762,7 @@
|
|
|
29391
29762
|
"declarations": [
|
|
29392
29763
|
{
|
|
29393
29764
|
"kind": "class",
|
|
29394
|
-
"description": "Renders a `<pre><code>` pair: `pre` keeps the whitespace, and `code` marks it\nas code. Long lines scroll inside the block and do not wrap, because a line\nbreak can be significant in code.\n\nA copy button is on by default. Set `no-copy` to remove it. The button copies\nthe slotted text, so there is no second copy of the code to keep in sync.\n\nFor a fragment of code inside a sentence, use `Code`.\n\nSet `line-numbers` to number the lines in a gutter beside the code, hidden\nfrom the accessibility tree and left out of a copy. Set `highlight` to a\nfunction that turns the code into highlighted markup, such as one wrapping\nShiki or Prism, and the block draws what it returns; it is handed the\nblock's `language`, so one function serves every block. The code stays in\nthe slot, so the copy button and the page's own text are the code as\nwritten.\n\nSet `expandable` on a block whose height is capped, such as by\n`--code-block-max-block-size`, and a button under it shows every line and\nthen fewer again, as a docs site's long example does. The button is drawn\nonly while the cap hides something, says whether the block is expanded with\n`aria-expanded`, names the block it opens with `aria-controls`, and the block\ncarries `:state(expanded)` while it is.\n\nSet `diff` to show a change. Put a unified diff, the output of `git diff` or\n`diff -u`, in the same slot, and the block draws the lines it added and\nremoved. The block never computes a diff itself. Line numbers come from the\nhunk headers and are hidden from the accessibility tree. Changed lines are\n`<ins>` and `<del>` with the `+` and `-` kept as text, so the change does not\ndepend on color. Each file in the patch is its own block under its own name,\nand its copy button copies the new version of the file. `variant=\"split\"`\nshows the old version beside the new, each removal opposite its replacement.\n\nOn the server, the slot renders as ordinary code, so a diff first appears as\nthe patch text in a `<pre>`. The client makes the same first render, which\nkeeps hydration clean, and draws the diff once it can read the content. Diff\nmode is experimental. The rest of the family is stable.",
|
|
29765
|
+
"description": "Renders a `<pre><code>` pair: `pre` keeps the whitespace, and `code` marks it\nas code. Long lines scroll inside the block and do not wrap, because a line\nbreak can be significant in code.\n\nA copy button is on by default. Set `no-copy` to remove it. The button copies\nthe slotted text, so there is no second copy of the code to keep in sync.\n\nFor a fragment of code inside a sentence, use `Code`.\n\nSet `line-numbers` to number the lines in a gutter beside the code, hidden\nfrom the accessibility tree and left out of a copy. Set `highlight` to a\nfunction that turns the code into highlighted markup, such as one wrapping\nShiki or Prism, and the block draws what it returns; it is handed the\nblock's `language`, so one function serves every block. The code stays in\nthe slot, so the copy button and the page's own text are the code as\nwritten.\n\nSet `expandable` on a block whose height is capped, such as by\n`--code-block-max-block-size`, and a button under it shows every line and\nthen fewer again, as a docs site's long example does. The button is drawn\nonly while the cap hides something, says whether the block is expanded with\n`aria-expanded`, names the block it opens with `aria-controls`, and the block\ncarries `:state(expanded)` while it is.\n\nSet `diff` to show a change. Put a unified diff, the output of `git diff` or\n`diff -u`, in the same slot, and the block draws the lines it added and\nremoved. The block never computes a diff itself. Line numbers come from the\nhunk headers and are hidden from the accessibility tree. Changed lines are\n`<ins>` and `<del>` with the `+` and `-` kept as text, so the change does not\ndepend on color. Each file in the patch is its own block under its own name,\nand its copy button copies the new version of the file. `variant=\"split\"`\nshows the old version beside the new, each removal opposite its replacement.\n\n**A block that scrolls is a tab stop.** While its lines run past its width or\nits cap, the scroller is a region named for the block, such as \"Code,\napp.ts\", that Tab reaches, so a keyboard scrolls it with the arrow keys in\nevery browser. Chromium and Firefox make a scrolling box focusable on their\nown, and Safari does not. A block that fits is no stop at all.\n\n**The code the block draws is marked untranslated**, `translate=\"no\"` on\nits `<pre>`, so a page translator leaves highlighted lines and a diff as\nwritten. Code in the slot takes its translation mode from the element, which\nwrites nothing onto itself, so set `translate=\"no\"` on the element to keep a\ntranslator off plain code too.\n\nOn the server, the slot renders as ordinary code, so a diff first appears as\nthe patch text in a `<pre>`. The client makes the same first render, which\nkeeps hydration clean, and draws the diff once it can read the content. Diff\nmode is experimental. The rest of the family is stable.",
|
|
29395
29766
|
"name": "HelixHeadlessCodeBlock",
|
|
29396
29767
|
"cssParts": [
|
|
29397
29768
|
{
|
|
@@ -29552,6 +29923,32 @@
|
|
|
29552
29923
|
"default": "'helix-code-block'",
|
|
29553
29924
|
"description": "The key this family's words are registered under, its styled tag:\n`registerWords('de', { 'helix-code-block': { copyLabel: 'Code kopieren' } })`."
|
|
29554
29925
|
},
|
|
29926
|
+
{
|
|
29927
|
+
"kind": "field",
|
|
29928
|
+
"name": "codeLabel",
|
|
29929
|
+
"type": {
|
|
29930
|
+
"text": "string"
|
|
29931
|
+
},
|
|
29932
|
+
"default": "'Code'",
|
|
29933
|
+
"description": "The name of a block that scrolls, which is a tab stop while it does.\n\nWhere the block has a name, the scroller says it too, such as \"Code,\napp.ts\", as `code-name-label` puts it.",
|
|
29934
|
+
"attribute": "code-label",
|
|
29935
|
+
"helix": {
|
|
29936
|
+
"words": true
|
|
29937
|
+
}
|
|
29938
|
+
},
|
|
29939
|
+
{
|
|
29940
|
+
"kind": "field",
|
|
29941
|
+
"name": "codeNameLabel",
|
|
29942
|
+
"type": {
|
|
29943
|
+
"text": "string"
|
|
29944
|
+
},
|
|
29945
|
+
"default": "'{code}, {name}'",
|
|
29946
|
+
"description": "The name of a block that scrolls, where the block has a name. `{code}` is\n`code-label` and `{name}` the block's name.",
|
|
29947
|
+
"attribute": "code-name-label",
|
|
29948
|
+
"helix": {
|
|
29949
|
+
"words": true
|
|
29950
|
+
}
|
|
29951
|
+
},
|
|
29555
29952
|
{
|
|
29556
29953
|
"kind": "field",
|
|
29557
29954
|
"name": "collapseLabel",
|
|
@@ -29764,7 +30161,7 @@
|
|
|
29764
30161
|
"text": "ResizeObserver | undefined"
|
|
29765
30162
|
},
|
|
29766
30163
|
"privacy": "private",
|
|
29767
|
-
"description": "Watches the block's size
|
|
30164
|
+
"description": "Watches the block's size."
|
|
29768
30165
|
},
|
|
29769
30166
|
{
|
|
29770
30167
|
"kind": "field",
|
|
@@ -29773,6 +30170,17 @@
|
|
|
29773
30170
|
"readonly": true,
|
|
29774
30171
|
"description": "Reads whether the cap hides lines: the scroller is taller inside than it\nis drawn. The styled tier caps the `<code>`, and a page may cap the\n`<pre>`, so both are asked. Left as it was while expanded, which shows\neverything."
|
|
29775
30172
|
},
|
|
30173
|
+
{
|
|
30174
|
+
"kind": "method",
|
|
30175
|
+
"name": "markScrollers",
|
|
30176
|
+
"privacy": "private",
|
|
30177
|
+
"return": {
|
|
30178
|
+
"type": {
|
|
30179
|
+
"text": "void"
|
|
30180
|
+
}
|
|
30181
|
+
},
|
|
30182
|
+
"description": "Makes each box that scrolls a tab stop and a region named for its block,\nand takes both away from a box that fits.\n\n**A reader on a keyboard scrolls the code from the box itself.** Chromium\nand Firefox make a scrolling box focusable on their own, and Safari does\nnot, so there the arrow keys could not reach the end of a long line. A\nbox counts while its sheet lets it scroll and its content is wider or\ntaller than it is drawn: an unstyled `<pre>` overflows without scrolling,\nand a stop on it would scroll nothing."
|
|
30183
|
+
},
|
|
29776
30184
|
{
|
|
29777
30185
|
"kind": "method",
|
|
29778
30186
|
"name": "renderExpand",
|
|
@@ -30325,6 +30733,24 @@
|
|
|
30325
30733
|
}
|
|
30326
30734
|
],
|
|
30327
30735
|
"attributes": [
|
|
30736
|
+
{
|
|
30737
|
+
"name": "code-label",
|
|
30738
|
+
"type": {
|
|
30739
|
+
"text": "string"
|
|
30740
|
+
},
|
|
30741
|
+
"default": "'Code'",
|
|
30742
|
+
"description": "The name of a block that scrolls, which is a tab stop while it does.\n\nWhere the block has a name, the scroller says it too, such as \"Code,\napp.ts\", as `code-name-label` puts it.",
|
|
30743
|
+
"fieldName": "codeLabel"
|
|
30744
|
+
},
|
|
30745
|
+
{
|
|
30746
|
+
"name": "code-name-label",
|
|
30747
|
+
"type": {
|
|
30748
|
+
"text": "string"
|
|
30749
|
+
},
|
|
30750
|
+
"default": "'{code}, {name}'",
|
|
30751
|
+
"description": "The name of a block that scrolls, where the block has a name. `{code}` is\n`code-label` and `{name}` the block's name.",
|
|
30752
|
+
"fieldName": "codeNameLabel"
|
|
30753
|
+
},
|
|
30328
30754
|
{
|
|
30329
30755
|
"name": "collapse-label",
|
|
30330
30756
|
"type": {
|
|
@@ -30522,7 +30948,7 @@
|
|
|
30522
30948
|
"declarations": [
|
|
30523
30949
|
{
|
|
30524
30950
|
"kind": "class",
|
|
30525
|
-
"description": "Renders a real `<code>` element, which marks the text as code for translation\ntools and document search. A styled span carries no such meaning, and a\nscreen reader announces nothing about it.\n\n`Code` is inline only and never scrolls. For a block of code with its own\nbox, its own overflow, and copying, use `CodeBlock`, which is a separate\nfamily.",
|
|
30951
|
+
"description": "Renders a real `<code>` element, which marks the text as code for translation\ntools and document search. A styled span carries no such meaning, and a\nscreen reader announces nothing about it.\n\n**Set `translate=\"no\"` on the element to keep a page translator off the\ncode.** A translator that rewrites prose would also rewrite an identifier.\nThe slotted text takes its translation mode from the element, its parent in\nthe page, and the element writes nothing onto itself, so the attribute is\nyours to set. The `<code>` inside carries `translate=\"no\"` for anything the\nelement draws itself.\n\n`Code` is inline only and never scrolls. For a block of code with its own\nbox, its own overflow, and copying, use `CodeBlock`, which is a separate\nfamily.",
|
|
30526
30952
|
"name": "HelixHeadlessCode",
|
|
30527
30953
|
"cssParts": [
|
|
30528
30954
|
{
|
|
@@ -56149,6 +56575,19 @@
|
|
|
56149
56575
|
"module": "src/mixins/mixin-chart-source/mixin-chart-source.ts"
|
|
56150
56576
|
}
|
|
56151
56577
|
},
|
|
56578
|
+
{
|
|
56579
|
+
"kind": "field",
|
|
56580
|
+
"name": "data",
|
|
56581
|
+
"type": {
|
|
56582
|
+
"text": "ChartData | undefined"
|
|
56583
|
+
},
|
|
56584
|
+
"default": "undefined",
|
|
56585
|
+
"description": "The readings as data, in the shape of a table, where the page has no\ntable to point `for` at. `for` wins where both are set.\n\n```js\nchart.data = {\n caption: 'Sessions by channel',\n columns: ['Month', 'Direct', 'Referral'],\n rows: [['Jan', 10, 4], ['Feb', 20, 8]],\n}\n```\n\nThe first column holds each row's label and every column after it a\nseries, as in a table. A cell is a number, words, `null` for a blank,\nor `{ value, text }` for a number shown as words, such as `$128k`. A\nnumber is shown in `locale`.\n\n**A table is still the better source where the page can show one**:\nit reads with no script and before hydration, and a reader can sort and\ncopy it. Data is drawn on the client only, so a server serves the\nframe, and the summary, the keys and the readout are then the whole of\nwhat a screen reader is given. Set a new object to redraw: the chart\ndoes not look inside the one it has.",
|
|
56586
|
+
"inheritedFrom": {
|
|
56587
|
+
"name": "MixinChartSource",
|
|
56588
|
+
"module": "src/mixins/mixin-chart-source/mixin-chart-source.ts"
|
|
56589
|
+
}
|
|
56590
|
+
},
|
|
56152
56591
|
{
|
|
56153
56592
|
"kind": "field",
|
|
56154
56593
|
"name": "for",
|
|
@@ -56285,6 +56724,19 @@
|
|
|
56285
56724
|
"module": "src/mixins/mixin-chart-source/mixin-chart-source.ts"
|
|
56286
56725
|
}
|
|
56287
56726
|
},
|
|
56727
|
+
{
|
|
56728
|
+
"kind": "field",
|
|
56729
|
+
"name": "readingsKnown",
|
|
56730
|
+
"type": {
|
|
56731
|
+
"text": "boolean"
|
|
56732
|
+
},
|
|
56733
|
+
"description": "Whether the readings have been looked for: false on the server and\nwhile hydrating, where no table is resolved and no data is read. A\nchart says it has no readings only once this is true.",
|
|
56734
|
+
"readonly": true,
|
|
56735
|
+
"inheritedFrom": {
|
|
56736
|
+
"name": "MixinChartSource",
|
|
56737
|
+
"module": "src/mixins/mixin-chart-source/mixin-chart-source.ts"
|
|
56738
|
+
}
|
|
56739
|
+
},
|
|
56288
56740
|
{
|
|
56289
56741
|
"kind": "field",
|
|
56290
56742
|
"name": "sourceRows",
|
|
@@ -59886,16 +60338,28 @@
|
|
|
59886
60338
|
"declarations": [
|
|
59887
60339
|
{
|
|
59888
60340
|
"kind": "class",
|
|
59889
|
-
"description": "Shows what would be in a region and the one action that would fill it, so an\nempty region does not look like one that failed to load.\n\nThe message is announced, because an empty view often replaces content that\nwas loading, and the announcement tells a screen reader user that the search\nreturned nothing. It is announced from a status region of its own, which is\nrendered empty and filled a frame after the view appears. Screen readers read\na region that arrives with its text already in it inconsistently. For the\nseven seconds the region holds its copy, the heading and the message are\nhidden from screen readers, so the words are in the page once.\n\nEvery region is a bare slot. There is no `empty-state-heading` or\n`empty-state-actions` element: assign your own heading and actions to the\nslots.\n\n**Or give the heading as words.** `heading` draws them in a `heading` part\nthat is a heading at `heading-level`, 3 where it is not set, so a page\nrendering from data or on a server gets a heading a reader finds in the\noutline without writing the element. A heading slotted in replaces it.\n\n**Whatever is slotted into `heading` is read as a heading.** An element that\nis no heading, such as a `<span>` or a `<p>`, is set inside the `heading`\npart at `heading-level`, so a screen reader still finds it in the outline.\nA heading element, or an element holding one, keeps its own level. A server\ncannot see the slotted element, so a served `<span>` becomes a heading once\nthe script runs.",
|
|
60341
|
+
"description": "Shows what would be in a region and the one action that would fill it, so an\nempty region does not look like one that failed to load.\n\nThe message is announced, because an empty view often replaces content that\nwas loading, and the announcement tells a screen reader user that the search\nreturned nothing. It is announced from a status region of its own, which is\nrendered empty and filled a frame after the view appears. Screen readers read\na region that arrives with its text already in it inconsistently. For the\nseven seconds the region holds its copy, the heading and the message are\nhidden from screen readers, so the words are in the page once.\n\nEvery region is a bare slot. There is no `empty-state-heading` or\n`empty-state-actions` element: assign your own heading and actions to the\nslots. The icon, the message and the actions slots are parts of the same\nnames, as Card's regions are. A slot draws no box, so a part passes\ninherited properties, such as color and font, to what is slotted, and a\npage wanting a box there gives it one with `display`, such as a row of\nactions with `display: flex`.\n\n**The view says which regions it holds**, as `:state(has-icon)` and\n`:state(has-actions)`, so a sheet can space a view with no icon or no\nactions differently. Read in the browser, so a served view carries neither\nuntil the script runs.\n\n**Or give the heading as words.** `heading` draws them in a `heading` part\nthat is a heading at `heading-level`, 3 where it is not set, so a page\nrendering from data or on a server gets a heading a reader finds in the\noutline without writing the element. A heading slotted in replaces it.\n\n**Whatever is slotted into `heading` is read as a heading.** An element that\nis no heading, such as a `<span>` or a `<p>`, is set inside the `heading`\npart at `heading-level`, so a screen reader still finds it in the outline.\nA heading element, or an element holding one, keeps its own level. A server\ncannot see the slotted element, so a served `<span>` becomes a heading once\nthe script runs.",
|
|
59890
60342
|
"name": "HelixHeadlessEmpty",
|
|
59891
60343
|
"cssParts": [
|
|
60344
|
+
{
|
|
60345
|
+
"description": "The slot the actions arrive through. A slot draws no box, so it passes inherited properties to the actions; `display: flex` lays them out in a row.",
|
|
60346
|
+
"name": "actions"
|
|
60347
|
+
},
|
|
59892
60348
|
{
|
|
59893
60349
|
"description": "The heading at `heading-level`: the one `heading` draws while nothing is slotted into `heading`, or the one around a slotted element that is no heading.",
|
|
59894
60350
|
"name": "heading"
|
|
59895
60351
|
},
|
|
60352
|
+
{
|
|
60353
|
+
"description": "The slot the icon arrives through, drawing no box, as `actions` does.",
|
|
60354
|
+
"name": "icon"
|
|
60355
|
+
},
|
|
59896
60356
|
{
|
|
59897
60357
|
"description": "A copy of the heading and the message, in a live region that screen readers announce when the view appears. Visually hidden in the styled tier.",
|
|
59898
60358
|
"name": "live"
|
|
60359
|
+
},
|
|
60360
|
+
{
|
|
60361
|
+
"description": "The slot the message arrives through, drawing no box, as `actions` does.",
|
|
60362
|
+
"name": "message"
|
|
59899
60363
|
}
|
|
59900
60364
|
],
|
|
59901
60365
|
"slots": [
|
|
@@ -59957,6 +60421,13 @@
|
|
|
59957
60421
|
"default": "false",
|
|
59958
60422
|
"description": "Whether the `heading` slot holds elements and none of them is or holds a\nheading, read from the children before each render."
|
|
59959
60423
|
},
|
|
60424
|
+
{
|
|
60425
|
+
"kind": "field",
|
|
60426
|
+
"name": "readRegions",
|
|
60427
|
+
"privacy": "private",
|
|
60428
|
+
"readonly": true,
|
|
60429
|
+
"description": "Says which regions hold something, one call apiece so each pairs with its `@cssstate`."
|
|
60430
|
+
},
|
|
59960
60431
|
{
|
|
59961
60432
|
"kind": "field",
|
|
59962
60433
|
"name": "arrival",
|
|
@@ -60352,6 +60823,24 @@
|
|
|
60352
60823
|
"fieldName": "noAnnounce"
|
|
60353
60824
|
}
|
|
60354
60825
|
],
|
|
60826
|
+
"cssStates": [
|
|
60827
|
+
{
|
|
60828
|
+
"description": "Something is slotted into `actions`.",
|
|
60829
|
+
"name": "has-actions"
|
|
60830
|
+
},
|
|
60831
|
+
{
|
|
60832
|
+
"description": "Something is slotted into `icon`.",
|
|
60833
|
+
"name": "has-icon"
|
|
60834
|
+
},
|
|
60835
|
+
{
|
|
60836
|
+
"description": "Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.",
|
|
60837
|
+
"name": "settled",
|
|
60838
|
+
"inheritedFrom": {
|
|
60839
|
+
"name": "HelixElement",
|
|
60840
|
+
"module": "src/helix-element/helix-element.ts"
|
|
60841
|
+
}
|
|
60842
|
+
}
|
|
60843
|
+
],
|
|
60355
60844
|
"superclass": {
|
|
60356
60845
|
"name": "HelixElement",
|
|
60357
60846
|
"package": "@fusion.dev/helix-core"
|
|
@@ -60381,16 +60870,6 @@
|
|
|
60381
60870
|
},
|
|
60382
60871
|
"tagName": "helix-headless-empty",
|
|
60383
60872
|
"customElement": true,
|
|
60384
|
-
"cssStates": [
|
|
60385
|
-
{
|
|
60386
|
-
"description": "Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.",
|
|
60387
|
-
"name": "settled",
|
|
60388
|
-
"inheritedFrom": {
|
|
60389
|
-
"name": "HelixElement",
|
|
60390
|
-
"module": "src/helix-element/helix-element.ts"
|
|
60391
|
-
}
|
|
60392
|
-
}
|
|
60393
|
-
],
|
|
60394
60873
|
"modulePath": "src/empty/root/empty-root.ts",
|
|
60395
60874
|
"definitionPath": "src/empty/root/empty-root.ts"
|
|
60396
60875
|
}
|
|
@@ -73287,7 +73766,7 @@
|
|
|
73287
73766
|
"text": "boolean"
|
|
73288
73767
|
},
|
|
73289
73768
|
"privacy": "private",
|
|
73290
|
-
"description": "Whether this render can tell a table with no readings from one it has not\nresolved yet.\n\n**Unknown is not empty, which is what an empty state must never say.**\n`for` names an id and resolving an id wants a document, so a server has\nnone and a hydrating render must not look either. Without this the server\ndrew \"No readings\" over a table holding ninety days of them, a crawler read\nthat sentence, and the strip flipped to a full one on hydration: the fault\n`MixinCollection` names for a slotted collection, arriving through the one\nchannel that mixin cannot see.\n\nThe same shape as `childrenKnown`, asked of a tree that can answer about\nids rather than of one that holds children. An id that resolves to nothing\nin a browser is still known, and still empty: a `for` naming no table\nshould say so rather than sit blank, which is why this asks\n`searchableById` and not `elementById
|
|
73769
|
+
"description": "Whether this render can tell a table with no readings from one it has not\nresolved yet.\n\n**Unknown is not empty, which is what an empty state must never say.**\n`for` names an id and resolving an id wants a document, so a server has\nnone and a hydrating render must not look either. Without this the server\ndrew \"No readings\" over a table holding ninety days of them, a crawler read\nthat sentence, and the strip flipped to a full one on hydration: the fault\n`MixinCollection` names for a slotted collection, arriving through the one\nchannel that mixin cannot see.\n\nThe same shape as `childrenKnown`, asked of a tree that can answer about\nids rather than of one that holds children. An id that resolves to nothing\nin a browser is still known, and still empty: a `for` naming no table\nshould say so rather than sit blank, which is why this asks\n`searchableById` and not `elementById`.\n\n`readingsKnown` asks it for every chart, and for `data` too, which a\nserver does not draw.",
|
|
73291
73770
|
"readonly": true
|
|
73292
73771
|
},
|
|
73293
73772
|
{
|
|
@@ -73487,6 +73966,19 @@
|
|
|
73487
73966
|
"module": "src/mixins/mixin-chart-source/mixin-chart-source.ts"
|
|
73488
73967
|
}
|
|
73489
73968
|
},
|
|
73969
|
+
{
|
|
73970
|
+
"kind": "field",
|
|
73971
|
+
"name": "data",
|
|
73972
|
+
"type": {
|
|
73973
|
+
"text": "ChartData | undefined"
|
|
73974
|
+
},
|
|
73975
|
+
"default": "undefined",
|
|
73976
|
+
"description": "The readings as data, in the shape of a table, where the page has no\ntable to point `for` at. `for` wins where both are set.\n\n```js\nchart.data = {\n caption: 'Sessions by channel',\n columns: ['Month', 'Direct', 'Referral'],\n rows: [['Jan', 10, 4], ['Feb', 20, 8]],\n}\n```\n\nThe first column holds each row's label and every column after it a\nseries, as in a table. A cell is a number, words, `null` for a blank,\nor `{ value, text }` for a number shown as words, such as `$128k`. A\nnumber is shown in `locale`.\n\n**A table is still the better source where the page can show one**:\nit reads with no script and before hydration, and a reader can sort and\ncopy it. Data is drawn on the client only, so a server serves the\nframe, and the summary, the keys and the readout are then the whole of\nwhat a screen reader is given. Set a new object to redraw: the chart\ndoes not look inside the one it has.",
|
|
73977
|
+
"inheritedFrom": {
|
|
73978
|
+
"name": "MixinChartSource",
|
|
73979
|
+
"module": "src/mixins/mixin-chart-source/mixin-chart-source.ts"
|
|
73980
|
+
}
|
|
73981
|
+
},
|
|
73490
73982
|
{
|
|
73491
73983
|
"kind": "field",
|
|
73492
73984
|
"name": "for",
|
|
@@ -73623,6 +74115,19 @@
|
|
|
73623
74115
|
"module": "src/mixins/mixin-chart-source/mixin-chart-source.ts"
|
|
73624
74116
|
}
|
|
73625
74117
|
},
|
|
74118
|
+
{
|
|
74119
|
+
"kind": "field",
|
|
74120
|
+
"name": "readingsKnown",
|
|
74121
|
+
"type": {
|
|
74122
|
+
"text": "boolean"
|
|
74123
|
+
},
|
|
74124
|
+
"description": "Whether the readings have been looked for: false on the server and\nwhile hydrating, where no table is resolved and no data is read. A\nchart says it has no readings only once this is true.",
|
|
74125
|
+
"readonly": true,
|
|
74126
|
+
"inheritedFrom": {
|
|
74127
|
+
"name": "MixinChartSource",
|
|
74128
|
+
"module": "src/mixins/mixin-chart-source/mixin-chart-source.ts"
|
|
74129
|
+
}
|
|
74130
|
+
},
|
|
73626
74131
|
{
|
|
73627
74132
|
"kind": "field",
|
|
73628
74133
|
"name": "sourceRows",
|
|
@@ -76014,6 +76519,74 @@
|
|
|
76014
76519
|
}
|
|
76015
76520
|
]
|
|
76016
76521
|
},
|
|
76522
|
+
{
|
|
76523
|
+
"kind": "javascript-module",
|
|
76524
|
+
"path": "src/icon/fetch.ts",
|
|
76525
|
+
"declarations": [
|
|
76526
|
+
{
|
|
76527
|
+
"kind": "function",
|
|
76528
|
+
"name": "readIconFile",
|
|
76529
|
+
"return": {
|
|
76530
|
+
"type": {
|
|
76531
|
+
"text": "HelixIcon | undefined"
|
|
76532
|
+
}
|
|
76533
|
+
},
|
|
76534
|
+
"parameters": [
|
|
76535
|
+
{
|
|
76536
|
+
"name": "text",
|
|
76537
|
+
"type": {
|
|
76538
|
+
"text": "string"
|
|
76539
|
+
},
|
|
76540
|
+
"description": "The file's text."
|
|
76541
|
+
},
|
|
76542
|
+
{
|
|
76543
|
+
"name": "name",
|
|
76544
|
+
"type": {
|
|
76545
|
+
"text": "string"
|
|
76546
|
+
},
|
|
76547
|
+
"description": "What the icon is known by, its URL."
|
|
76548
|
+
}
|
|
76549
|
+
],
|
|
76550
|
+
"description": "Reads an SVG file's text as an icon, or `undefined` where it is no SVG.\n\n**What could run is taken out**, because the markup is drawn as it is: every\n`<script>` and `<foreignObject>`, every `on…` attribute, every link to a\n`javascript:` URL, and every animation that writes a link or a handler. The\nroot's paint attributes are kept on a group around the shapes, and its\n`viewBox`, or its width and height, is the box."
|
|
76551
|
+
},
|
|
76552
|
+
{
|
|
76553
|
+
"kind": "function",
|
|
76554
|
+
"name": "fetchIcon",
|
|
76555
|
+
"return": {
|
|
76556
|
+
"type": {
|
|
76557
|
+
"text": "HelixIcon | Promise<HelixIcon | undefined> | undefined"
|
|
76558
|
+
}
|
|
76559
|
+
},
|
|
76560
|
+
"parameters": [
|
|
76561
|
+
{
|
|
76562
|
+
"name": "src",
|
|
76563
|
+
"type": {
|
|
76564
|
+
"text": "string"
|
|
76565
|
+
}
|
|
76566
|
+
}
|
|
76567
|
+
],
|
|
76568
|
+
"description": "The icon in the SVG file at `src`: at once where it has been fetched, or a\npromise of it the first time, fetched once a page however many elements ask.\n`undefined` where the file could not be fetched or is no SVG."
|
|
76569
|
+
}
|
|
76570
|
+
],
|
|
76571
|
+
"exports": [
|
|
76572
|
+
{
|
|
76573
|
+
"kind": "js",
|
|
76574
|
+
"name": "readIconFile",
|
|
76575
|
+
"declaration": {
|
|
76576
|
+
"name": "readIconFile",
|
|
76577
|
+
"module": "src/icon/fetch.ts"
|
|
76578
|
+
}
|
|
76579
|
+
},
|
|
76580
|
+
{
|
|
76581
|
+
"kind": "js",
|
|
76582
|
+
"name": "fetchIcon",
|
|
76583
|
+
"declaration": {
|
|
76584
|
+
"name": "fetchIcon",
|
|
76585
|
+
"module": "src/icon/fetch.ts"
|
|
76586
|
+
}
|
|
76587
|
+
}
|
|
76588
|
+
]
|
|
76589
|
+
},
|
|
76017
76590
|
{
|
|
76018
76591
|
"kind": "javascript-module",
|
|
76019
76592
|
"path": "src/icon/index.ts",
|
|
@@ -76252,7 +76825,7 @@
|
|
|
76252
76825
|
"declarations": [
|
|
76253
76826
|
{
|
|
76254
76827
|
"kind": "class",
|
|
76255
|
-
"description": "The icons are Phosphor, drawn on a 256 box at stroke-width 16. Each glyph\nrenders its full inner markup, because most icons are several elements, each\nwith its own stroke and fill.\n\nThe markup is generated at build time from SVG files in this repository and\nnever comes from user input, so rendering it with `unsafeSVG` is safe.\n\nThe `<svg>` carries `fill=\"currentColor\"`. The generator keeps only the inner\nmarkup, and Phosphor sets its fill on the root tag that the generator\ndiscards. Without it, the 65 solid glyphs fall back to black and disappear on\na dark background. Shapes that set their own `fill` or `stroke` are\nunaffected.\n\n**A name is looked up in a registry.** The family's entry registers the\nwhole set, so any name in it draws. The element's own entry,\n`@fusion.dev/helix-headless/icon/root`, registers none: a page that imports\nit and calls `registerIcons` with the glyphs it names ships those and no\nothers. `registerIconLibrary` resolves names under a prefix of your own,\nsuch as `lucide:camera`, at once or later, and the element fires `load` when\na glyph that came later is drawn. A glyph registered after the element\nrendered is drawn then.\n\nA name with no match renders nothing, and the
|
|
76828
|
+
"description": "The icons are Phosphor, drawn on a 256 box at stroke-width 16. Each glyph\nrenders its full inner markup, because most icons are several elements, each\nwith its own stroke and fill.\n\nThe markup is generated at build time from SVG files in this repository and\nnever comes from user input, so rendering it with `unsafeSVG` is safe.\n\nThe `<svg>` carries `fill=\"currentColor\"`. The generator keeps only the inner\nmarkup, and Phosphor sets its fill on the root tag that the generator\ndiscards. Without it, the 65 solid glyphs fall back to black and disappear on\na dark background. Shapes that set their own `fill` or `stroke` are\nunaffected.\n\n**A name is looked up in a registry.** The family's entry registers the\nwhole set, so any name in it draws. The element's own entry,\n`@fusion.dev/helix-headless/icon/root`, registers none: a page that imports\nit and calls `registerIcons` with the glyphs it names ships those and no\nothers. `registerIconLibrary` resolves names under a prefix of your own,\nsuch as `lucide:camera`, at once or later, and the element fires `load` when\na glyph that came later is drawn. A glyph registered after the element\nrendered is drawn then.\n\n**Or point `src` at an SVG file**, such as `src=\"/icons/rocket.svg\"`, and\nthe element fetches it and draws its shapes in `currentColor` where the file\ndoes not color them. A file is fetched once a page, however many icons name\nit, and `load` fires when it is drawn. Scripts, event handlers and\n`javascript:` links in the file are taken out before it is drawn. A server\nfetches nothing, so a served icon with a `src` is drawn once the script\nruns.\n\nA name with no match, or a `src` that is no SVG, renders nothing, and the\nelement fires `error`, so a typo in a name can be heard. It waits until the page has loaded and painted\nfirst, so a library a later module registers is not taken for a typo.\n\nAn icon is decorative by default and hidden from assistive technology. Set\n`label` only when the icon is the only carrier of meaning, such as in a\nbutton with no text. An `aria-label` on the element works too: the element\nis then an image with that name.\n\n**A decorative icon that is all a control holds is reported.** In a\ndevelopment build, a button or a link whose only content is an icon with no\n`label`, and which has no name of its own, warns `missing-name` once,\nthrough the runtime channel every Helix warning uses.",
|
|
76256
76829
|
"name": "HelixHeadlessIcon",
|
|
76257
76830
|
"cssParts": [
|
|
76258
76831
|
{
|
|
@@ -76299,6 +76872,16 @@
|
|
|
76299
76872
|
"description": "The name of the icon in the Helix set.\n\n**A lookup, and the reason both this and `icon` exist.** A name is a string,\nso it is what markup can carry, and resolving one means an index of the\nwhole set that no bundler can shake: 15 kB for a consumer who renders one\nmark. An attribute is the only thing an HTML author can write, and that is\nworth the index; a consumer who would rather not pay it imports the\nelement from `icon/root` and registers the glyphs it names, or hands over\nthe value instead.\n\nA name written `prefix:name` asks the library registered under that\nprefix.",
|
|
76300
76873
|
"attribute": "name"
|
|
76301
76874
|
},
|
|
76875
|
+
{
|
|
76876
|
+
"kind": "field",
|
|
76877
|
+
"name": "src",
|
|
76878
|
+
"type": {
|
|
76879
|
+
"text": "string"
|
|
76880
|
+
},
|
|
76881
|
+
"default": "''",
|
|
76882
|
+
"description": "The URL of an SVG file to draw, fetched once a page and drawn in\n`currentColor` where the file does not color its shapes.\n\nWins over `name`; `icon` wins over both. Absent draws `name`.",
|
|
76883
|
+
"attribute": "src"
|
|
76884
|
+
},
|
|
76302
76885
|
{
|
|
76303
76886
|
"kind": "field",
|
|
76304
76887
|
"name": "observedAttributes",
|
|
@@ -76390,6 +76973,16 @@
|
|
|
76390
76973
|
"privacy": "private",
|
|
76391
76974
|
"description": "Stops listening to the registry."
|
|
76392
76975
|
},
|
|
76976
|
+
{
|
|
76977
|
+
"kind": "field",
|
|
76978
|
+
"name": "asked",
|
|
76979
|
+
"type": {
|
|
76980
|
+
"text": "string"
|
|
76981
|
+
},
|
|
76982
|
+
"privacy": "private",
|
|
76983
|
+
"description": "What the glyph is asked for by: `src` where it is set, and `name` otherwise.",
|
|
76984
|
+
"readonly": true
|
|
76985
|
+
},
|
|
76393
76986
|
{
|
|
76394
76987
|
"kind": "method",
|
|
76395
76988
|
"name": "lookup",
|
|
@@ -76399,7 +76992,7 @@
|
|
|
76399
76992
|
"text": "HelixIcon | undefined"
|
|
76400
76993
|
}
|
|
76401
76994
|
},
|
|
76402
|
-
"description": "What the registry gives
|
|
76995
|
+
"description": "What `src` or the registry gives now, starting the wait for a late glyph.\nA file is fetched only where the page can be read: a server fetches\nnothing, and a hydrating render draws what the server sent."
|
|
76403
76996
|
},
|
|
76404
76997
|
{
|
|
76405
76998
|
"kind": "method",
|
|
@@ -76789,7 +77382,7 @@
|
|
|
76789
77382
|
"type": {
|
|
76790
77383
|
"text": "Event"
|
|
76791
77384
|
},
|
|
76792
|
-
"description": "`name` matches no registered icon and no library answers it, so nothing is drawn.",
|
|
77385
|
+
"description": "`name` matches no registered icon and no library answers it, or `src` is no SVG, so nothing is drawn.",
|
|
76793
77386
|
"name": "error",
|
|
76794
77387
|
"reactProp": "onerror"
|
|
76795
77388
|
},
|
|
@@ -76797,7 +77390,7 @@
|
|
|
76797
77390
|
"type": {
|
|
76798
77391
|
"text": "Event"
|
|
76799
77392
|
},
|
|
76800
|
-
"description": "A glyph a library gave later for `name` is drawn.",
|
|
77393
|
+
"description": "A glyph a library gave later for `name`, or the file at `src`, is drawn.",
|
|
76801
77394
|
"name": "load",
|
|
76802
77395
|
"reactProp": "onload"
|
|
76803
77396
|
}
|
|
@@ -76829,6 +77422,15 @@
|
|
|
76829
77422
|
"default": "''",
|
|
76830
77423
|
"description": "The name of the icon in the Helix set.\n\n**A lookup, and the reason both this and `icon` exist.** A name is a string,\nso it is what markup can carry, and resolving one means an index of the\nwhole set that no bundler can shake: 15 kB for a consumer who renders one\nmark. An attribute is the only thing an HTML author can write, and that is\nworth the index; a consumer who would rather not pay it imports the\nelement from `icon/root` and registers the glyphs it names, or hands over\nthe value instead.\n\nA name written `prefix:name` asks the library registered under that\nprefix.",
|
|
76831
77424
|
"fieldName": "name"
|
|
77425
|
+
},
|
|
77426
|
+
{
|
|
77427
|
+
"name": "src",
|
|
77428
|
+
"type": {
|
|
77429
|
+
"text": "string"
|
|
77430
|
+
},
|
|
77431
|
+
"default": "''",
|
|
77432
|
+
"description": "The URL of an SVG file to draw, fetched once a page and drawn in\n`currentColor` where the file does not color its shapes.\n\nWins over `name`; `icon` wins over both. Absent draws `name`.",
|
|
77433
|
+
"fieldName": "src"
|
|
76832
77434
|
}
|
|
76833
77435
|
],
|
|
76834
77436
|
"superclass": {
|
|
@@ -85249,7 +85851,7 @@
|
|
|
85249
85851
|
"declarations": [
|
|
85250
85852
|
{
|
|
85251
85853
|
"kind": "class",
|
|
85252
|
-
"description": "A line chart shows the shape of each series: where the readings went.\n\nThe scale covers the range of the data. Including zero in the range of a\nseries that moves between 980 and 1020 would flatten the line into a rule\nacross the top of the box. `BarChart` always starts at zero, because a bar's\nlength is its value. Set `zero` when the distance from zero is the point.\n\nEvery series shares one scale, as in the bar chart.\n\n`dashed` names the series drawn as a dashed line, such as a forecast or a\ntarget beside the readings: `dashed=\"Forecast\"`. Each takes a\n`line-dashed` part beside `line`.\n\n`area` fills each series down to the floor on its own, so the fills overlap.\nFor a total made of parts, use `Area Chart`, which stacks the series so the\ntop edge is the total and each band is a share.\n\nThe labels are HTML beside the drawing, as in `BarChart`. Text inside an\n`<svg>` that fills its box scales with the box, so the same `font-size` can\nrender at 10px in a narrow chart and 43px in a wide one.\n\n`value-axis` draws the scale's numbers beside the plot, at the levels\n`gridlines` rules, written in `locale`.\n\nThe table is the accessible representation, and the drawing is hidden from\nscreen readers, who get the numbers. The `summary` part names the chart, from\n`label` or the table's caption, and gives each series' latest reading.\n\n**The plot is read by key.** It takes focus, named by `label` or the caption.\nThe left and right arrows move from reading to reading, Home and End go to\nthe first and the last, and the up and down arrows move among the series of\na reading. The tooltip follows, the `live` part says the reading in words,\nand Escape puts the tooltip away.\n\n**A tap shows the reading under it**, and keeps it until a tap lands\nelsewhere. `helix-reading-change` says each move of the reading, by pointer,\ntap or key, and `helix-reading-press` says a reading was clicked, tapped, or\npressed with Enter or Space, for a page that opens what a reading stands for.",
|
|
85854
|
+
"description": "A line chart shows the shape of each series: where the readings went.\n\nThe scale covers the range of the data. Including zero in the range of a\nseries that moves between 980 and 1020 would flatten the line into a rule\nacross the top of the box. `BarChart` always starts at zero, because a bar's\nlength is its value. Set `zero` when the distance from zero is the point.\n\nEvery series shares one scale, as in the bar chart.\n\n`dashed` names the series drawn as a dashed line, such as a forecast or a\ntarget beside the readings: `dashed=\"Forecast\"`. Each takes a\n`line-dashed` part beside `line`.\n\n`area` fills each series down to the floor on its own, so the fills overlap.\nFor a total made of parts, use `Area Chart`, which stacks the series so the\ntop edge is the total and each band is a share.\n\nThe labels are HTML beside the drawing, as in `BarChart`. Text inside an\n`<svg>` that fills its box scales with the box, so the same `font-size` can\nrender at 10px in a narrow chart and 43px in a wide one.\n\n`value-axis` draws the scale's numbers beside the plot, at the levels\n`gridlines` rules, written in `locale`.\n\nThe table is the accessible representation, and the drawing is hidden from\nscreen readers, who get the numbers. The `summary` part names the chart, from\n`label` or the table's caption, and gives each series' latest reading.\n\n**The plot is read by key.** It takes focus, named by `label` or the caption.\nThe left and right arrows move from reading to reading, Home and End go to\nthe first and the last, and the up and down arrows move among the series of\na reading. The tooltip follows, the `live` part says the reading in words,\nand Escape puts the tooltip away.\n\n**A tap shows the reading under it**, and keeps it until a tap lands\nelsewhere. `helix-reading-change` says each move of the reading, by pointer,\ntap or key, and `helix-reading-press` says a reading was clicked, tapped, or\npressed with Enter or Space, for a page that opens what a reading stands for.\n\n**`data` takes the readings as data** where the page has no table to point\n`for` at, in a table's shape: the column headings, then one row per reading\nwith its label first. A table is still the better source where the page can\nshow one, since it reads before any script runs.\n\n**A chart with nothing to draw says so.** A table with no readings shows\n`empty-text`, \"No readings\", in the plot, and `loading` shows `loading-text`\nthere until readings arrive. The `empty` and `loading` slots take markup in\ntheir place, such as a link to add the first reading.",
|
|
85253
85855
|
"name": "HelixHeadlessLineChart",
|
|
85254
85856
|
"cssProperties": [
|
|
85255
85857
|
{
|
|
@@ -85282,6 +85884,10 @@
|
|
|
85282
85884
|
"description": "The rule at zero, where zero is inside the range.",
|
|
85283
85885
|
"name": "baseline"
|
|
85284
85886
|
},
|
|
85887
|
+
{
|
|
85888
|
+
"description": "The words in place of the drawing when the table has no readings: the `empty` slot, falling back to `empty-text`. Not drawn while the table cannot be read yet, on the server and during hydration.",
|
|
85889
|
+
"name": "empty"
|
|
85890
|
+
},
|
|
85285
85891
|
{
|
|
85286
85892
|
"description": "One rule across the plot, under `gridlines`.",
|
|
85287
85893
|
"name": "gridline"
|
|
@@ -85310,6 +85916,10 @@
|
|
|
85310
85916
|
"description": "The readout: a polite live region that says the reading the keys moved to. Hide it visually.",
|
|
85311
85917
|
"name": "live"
|
|
85312
85918
|
},
|
|
85919
|
+
{
|
|
85920
|
+
"description": "The words in place of the drawing while `loading` is set and there are no readings: the `loading` slot, falling back to `loading-text`.",
|
|
85921
|
+
"name": "loading"
|
|
85922
|
+
},
|
|
85313
85923
|
{
|
|
85314
85924
|
"description": "The invisible point the tooltip is anchored to.",
|
|
85315
85925
|
"name": "mark"
|
|
@@ -85407,6 +86017,16 @@
|
|
|
85407
86017
|
"name": "tooltip-value"
|
|
85408
86018
|
}
|
|
85409
86019
|
],
|
|
86020
|
+
"slots": [
|
|
86021
|
+
{
|
|
86022
|
+
"description": "Content shown in place of the drawing when the table has no readings, such as a link to add the first. Falls back to `empty-text`.",
|
|
86023
|
+
"name": "empty"
|
|
86024
|
+
},
|
|
86025
|
+
{
|
|
86026
|
+
"description": "Content shown in place of the drawing while `loading` is set and there are no readings yet. Falls back to `loading-text`.",
|
|
86027
|
+
"name": "loading"
|
|
86028
|
+
}
|
|
86029
|
+
],
|
|
85410
86030
|
"members": [
|
|
85411
86031
|
{
|
|
85412
86032
|
"kind": "field",
|
|
@@ -85867,6 +86487,70 @@
|
|
|
85867
86487
|
},
|
|
85868
86488
|
"description": "What a pointer resting on a reading shows.\n\nA seam over `drawTooltip`, which holds the markup every chart shares. The\nusual reason to override is arrangement: every cell of the row is already\nthere, including the columns nothing was plotted from."
|
|
85869
86489
|
},
|
|
86490
|
+
{
|
|
86491
|
+
"kind": "field",
|
|
86492
|
+
"name": "emptyText",
|
|
86493
|
+
"type": {
|
|
86494
|
+
"text": "string"
|
|
86495
|
+
},
|
|
86496
|
+
"default": "'No readings'",
|
|
86497
|
+
"description": "The words shown in place of the drawing when the table has no readings,\nand the fallback of the `empty` slot.",
|
|
86498
|
+
"attribute": "empty-text",
|
|
86499
|
+
"helix": {
|
|
86500
|
+
"words": true
|
|
86501
|
+
},
|
|
86502
|
+
"inheritedFrom": {
|
|
86503
|
+
"name": "MixinChartStatus",
|
|
86504
|
+
"module": "src/mixins/mixin-chart-status/mixin-chart-status.ts"
|
|
86505
|
+
}
|
|
86506
|
+
},
|
|
86507
|
+
{
|
|
86508
|
+
"kind": "field",
|
|
86509
|
+
"name": "loading",
|
|
86510
|
+
"type": {
|
|
86511
|
+
"text": "boolean"
|
|
86512
|
+
},
|
|
86513
|
+
"default": "false",
|
|
86514
|
+
"description": "Whether the readings are still on their way. The chart shows\n`loading-text` in place of an empty drawing until it has readings.\n\nReflected, so a stylesheet can treat the chart while it waits. A chart\nthat already has readings keeps drawing them, so a refresh does not\nblank it.",
|
|
86515
|
+
"attribute": "loading",
|
|
86516
|
+
"reflects": true,
|
|
86517
|
+
"inheritedFrom": {
|
|
86518
|
+
"name": "MixinChartStatus",
|
|
86519
|
+
"module": "src/mixins/mixin-chart-status/mixin-chart-status.ts"
|
|
86520
|
+
}
|
|
86521
|
+
},
|
|
86522
|
+
{
|
|
86523
|
+
"kind": "field",
|
|
86524
|
+
"name": "loadingText",
|
|
86525
|
+
"type": {
|
|
86526
|
+
"text": "string"
|
|
86527
|
+
},
|
|
86528
|
+
"default": "'Loading readings'",
|
|
86529
|
+
"description": "The words shown in place of the drawing while `loading` is set and\nthere are no readings yet, and the fallback of the `loading` slot.",
|
|
86530
|
+
"attribute": "loading-text",
|
|
86531
|
+
"helix": {
|
|
86532
|
+
"words": true
|
|
86533
|
+
},
|
|
86534
|
+
"inheritedFrom": {
|
|
86535
|
+
"name": "MixinChartStatus",
|
|
86536
|
+
"module": "src/mixins/mixin-chart-status/mixin-chart-status.ts"
|
|
86537
|
+
}
|
|
86538
|
+
},
|
|
86539
|
+
{
|
|
86540
|
+
"kind": "method",
|
|
86541
|
+
"name": "renderStatus",
|
|
86542
|
+
"privacy": "protected",
|
|
86543
|
+
"return": {
|
|
86544
|
+
"type": {
|
|
86545
|
+
"text": "TemplateResult | typeof nothing"
|
|
86546
|
+
}
|
|
86547
|
+
},
|
|
86548
|
+
"description": "What stands in the plot while there is nothing to draw: the `loading`\nline, the `empty` line, or nothing while the table cannot be read yet.\n\n`dir=\"auto\"`, so words in a right-to-left script read their own way in\na plot that holds itself left to right, as Scatter Chart's does.",
|
|
86549
|
+
"inheritedFrom": {
|
|
86550
|
+
"name": "MixinChartStatus",
|
|
86551
|
+
"module": "src/mixins/mixin-chart-status/mixin-chart-status.ts"
|
|
86552
|
+
}
|
|
86553
|
+
},
|
|
85870
86554
|
{
|
|
85871
86555
|
"kind": "field",
|
|
85872
86556
|
"name": "source",
|
|
@@ -85890,6 +86574,19 @@
|
|
|
85890
86574
|
"module": "src/mixins/mixin-chart-source/mixin-chart-source.ts"
|
|
85891
86575
|
}
|
|
85892
86576
|
},
|
|
86577
|
+
{
|
|
86578
|
+
"kind": "field",
|
|
86579
|
+
"name": "data",
|
|
86580
|
+
"type": {
|
|
86581
|
+
"text": "ChartData | undefined"
|
|
86582
|
+
},
|
|
86583
|
+
"default": "undefined",
|
|
86584
|
+
"description": "The readings as data, in the shape of a table, where the page has no\ntable to point `for` at. `for` wins where both are set.\n\n```js\nchart.data = {\n caption: 'Sessions by channel',\n columns: ['Month', 'Direct', 'Referral'],\n rows: [['Jan', 10, 4], ['Feb', 20, 8]],\n}\n```\n\nThe first column holds each row's label and every column after it a\nseries, as in a table. A cell is a number, words, `null` for a blank,\nor `{ value, text }` for a number shown as words, such as `$128k`. A\nnumber is shown in `locale`.\n\n**A table is still the better source where the page can show one**:\nit reads with no script and before hydration, and a reader can sort and\ncopy it. Data is drawn on the client only, so a server serves the\nframe, and the summary, the keys and the readout are then the whole of\nwhat a screen reader is given. Set a new object to redraw: the chart\ndoes not look inside the one it has.",
|
|
86585
|
+
"inheritedFrom": {
|
|
86586
|
+
"name": "MixinChartSource",
|
|
86587
|
+
"module": "src/mixins/mixin-chart-source/mixin-chart-source.ts"
|
|
86588
|
+
}
|
|
86589
|
+
},
|
|
85893
86590
|
{
|
|
85894
86591
|
"kind": "field",
|
|
85895
86592
|
"name": "for",
|
|
@@ -86026,6 +86723,19 @@
|
|
|
86026
86723
|
"module": "src/mixins/mixin-chart-source/mixin-chart-source.ts"
|
|
86027
86724
|
}
|
|
86028
86725
|
},
|
|
86726
|
+
{
|
|
86727
|
+
"kind": "field",
|
|
86728
|
+
"name": "readingsKnown",
|
|
86729
|
+
"type": {
|
|
86730
|
+
"text": "boolean"
|
|
86731
|
+
},
|
|
86732
|
+
"description": "Whether the readings have been looked for: false on the server and\nwhile hydrating, where no table is resolved and no data is read. A\nchart says it has no readings only once this is true.",
|
|
86733
|
+
"readonly": true,
|
|
86734
|
+
"inheritedFrom": {
|
|
86735
|
+
"name": "MixinChartSource",
|
|
86736
|
+
"module": "src/mixins/mixin-chart-source/mixin-chart-source.ts"
|
|
86737
|
+
}
|
|
86738
|
+
},
|
|
86029
86739
|
{
|
|
86030
86740
|
"kind": "field",
|
|
86031
86741
|
"name": "sourceRows",
|
|
@@ -86593,6 +87303,45 @@
|
|
|
86593
87303
|
"description": "Whether the range always includes zero.\n\nAbsent measures from the data's own extent, which is what a line is for.\nSet it where the distance from nothing is the point rather than the shape,\nand accept that a series which never approaches zero becomes a flat rule\nnear the top of the box.",
|
|
86594
87304
|
"fieldName": "zero"
|
|
86595
87305
|
},
|
|
87306
|
+
{
|
|
87307
|
+
"name": "empty-text",
|
|
87308
|
+
"type": {
|
|
87309
|
+
"text": "string"
|
|
87310
|
+
},
|
|
87311
|
+
"default": "'No readings'",
|
|
87312
|
+
"description": "The words shown in place of the drawing when the table has no readings,\nand the fallback of the `empty` slot.",
|
|
87313
|
+
"fieldName": "emptyText",
|
|
87314
|
+
"inheritedFrom": {
|
|
87315
|
+
"name": "MixinChartStatus",
|
|
87316
|
+
"module": "src/mixins/mixin-chart-status/mixin-chart-status.ts"
|
|
87317
|
+
}
|
|
87318
|
+
},
|
|
87319
|
+
{
|
|
87320
|
+
"name": "loading",
|
|
87321
|
+
"type": {
|
|
87322
|
+
"text": "boolean"
|
|
87323
|
+
},
|
|
87324
|
+
"default": "false",
|
|
87325
|
+
"description": "Whether the readings are still on their way. The chart shows\n`loading-text` in place of an empty drawing until it has readings.\n\nReflected, so a stylesheet can treat the chart while it waits. A chart\nthat already has readings keeps drawing them, so a refresh does not\nblank it.",
|
|
87326
|
+
"fieldName": "loading",
|
|
87327
|
+
"inheritedFrom": {
|
|
87328
|
+
"name": "MixinChartStatus",
|
|
87329
|
+
"module": "src/mixins/mixin-chart-status/mixin-chart-status.ts"
|
|
87330
|
+
}
|
|
87331
|
+
},
|
|
87332
|
+
{
|
|
87333
|
+
"name": "loading-text",
|
|
87334
|
+
"type": {
|
|
87335
|
+
"text": "string"
|
|
87336
|
+
},
|
|
87337
|
+
"default": "'Loading readings'",
|
|
87338
|
+
"description": "The words shown in place of the drawing while `loading` is set and\nthere are no readings yet, and the fallback of the `loading` slot.",
|
|
87339
|
+
"fieldName": "loadingText",
|
|
87340
|
+
"inheritedFrom": {
|
|
87341
|
+
"name": "MixinChartStatus",
|
|
87342
|
+
"module": "src/mixins/mixin-chart-status/mixin-chart-status.ts"
|
|
87343
|
+
}
|
|
87344
|
+
},
|
|
86596
87345
|
{
|
|
86597
87346
|
"name": "for",
|
|
86598
87347
|
"type": {
|
|
@@ -86647,6 +87396,10 @@
|
|
|
86647
87396
|
}
|
|
86648
87397
|
],
|
|
86649
87398
|
"mixins": [
|
|
87399
|
+
{
|
|
87400
|
+
"name": "MixinChartStatus",
|
|
87401
|
+
"package": "@fusion.dev/helix-core"
|
|
87402
|
+
},
|
|
86650
87403
|
{
|
|
86651
87404
|
"name": "MixinChartSource",
|
|
86652
87405
|
"package": "@fusion.dev/helix-core"
|
|
@@ -91994,7 +92747,7 @@
|
|
|
91994
92747
|
"declarations": [
|
|
91995
92748
|
{
|
|
91996
92749
|
"kind": "class",
|
|
91997
|
-
"description": "Draws two concentric circles: a track and a moving arc. The track shows the\narc as a proportion of a whole, and costs one element.\n\n**The center is a slot, empty by default.** Put your logo there once, where\nyour app wraps the loader. When nothing is slotted, nothing extra is\nrendered.\n\nSlotted content does not rotate. Only the arc moves, so a logo stays\nreadable.\n\nThe role is set on the host through `ElementInternals`. A `role` in the\nshadow root would leave the host itself without a role in the light DOM, and\na `role` attribute on the host would be missing from React server-rendered\nmarkup.\n\n**`for` names the region being loaded**, and the loader sets\n`aria-busy=\"true\"` on it for as long as the loader is on the page, so a\nscreen reader waits for the region rather than reading it half filled. Two\nloaders in one region hold it busy until the last one leaves. A region drawn\nafter the loader is marked when it arrives.\n\n**`delay` keeps a quick load from flashing a loader.** The loader stays\nhidden, and silent, for that many milliseconds, and appears only if the work\nis still going. While it waits it carries `:state(waiting)`.",
|
|
92750
|
+
"description": "Draws two concentric circles: a track and a moving arc. The track shows the\narc as a proportion of a whole, and costs one element.\n\n**For work whose length is known, use `Progress` with `shape=\"ring\"`.** It\ndraws the same ring filled to the value, says the value as a progress bar\ndoes, and says when the work is complete. A loader claims no proportion, so\nit takes no value.\n\n**The center is a slot, empty by default.** Put your logo there once, where\nyour app wraps the loader. When nothing is slotted, nothing extra is\nrendered.\n\nSlotted content does not rotate. Only the arc moves, so a logo stays\nreadable.\n\nThe role is set on the host through `ElementInternals`. A `role` in the\nshadow root would leave the host itself without a role in the light DOM, and\na `role` attribute on the host would be missing from React server-rendered\nmarkup.\n\n**`for` names the region being loaded**, and the loader sets\n`aria-busy=\"true\"` on it for as long as the loader is on the page, so a\nscreen reader waits for the region rather than reading it half filled. Two\nloaders in one region hold it busy until the last one leaves. A region drawn\nafter the loader is marked when it arrives.\n\n**`delay` keeps a quick load from flashing a loader.** The loader stays\nhidden, and silent, for that many milliseconds, and appears only if the work\nis still going. While it waits it carries `:state(waiting)`.",
|
|
91998
92751
|
"name": "HelixHeadlessLoader",
|
|
91999
92752
|
"cssParts": [
|
|
92000
92753
|
{
|
|
@@ -123470,7 +124223,7 @@
|
|
|
123470
124223
|
"declarations": [
|
|
123471
124224
|
{
|
|
123472
124225
|
"kind": "class",
|
|
123473
|
-
"description": "Determinate by default. Set `indeterminate` for a task whose total is not\nknown yet. Use `Loader` for a short wait or one with no place of its own on\nthe page.\n\nThe indeterminate bar runs a segment across the track and does not fill, so\nit shows that work is happening without claiming a proportion.\n`aria-valuenow` is omitted in that state, which is the platform's signal for\nthe same thing.\n\nThe fill is a fraction of the track, written as a custom property.\n\n**Reaching `max` is said and sent.** When the value arrives at `max` from\nbelow, the bar says `complete-label`, \"Complete\" by default, in a polite\n`live` region and sends `helix-complete`, so a reader hears that the work is\ndone and a page can move on. A bar that starts full says nothing, and an\nempty `complete-label` keeps it quiet. The `complete` custom state is set\nwhile the bar is full.",
|
|
124226
|
+
"description": "Determinate by default. Set `indeterminate` for a task whose total is not\nknown yet. Use `Loader` for a short wait or one with no place of its own on\nthe page.\n\nThe indeterminate bar runs a segment across the track and does not fill, so\nit shows that work is happening without claiming a proportion.\n`aria-valuenow` is omitted in that state, which is the platform's signal for\nthe same thing.\n\nThe fill is a fraction of the track, written as a custom property.\n\n**The reading is said in the words the bar would show**: a whole percentage\nof the range in `locale`, the reading `format-options` writes, or\n`value-text`, as `aria-valuetext` beside the number.\n\n**Words set in the default slot are drawn on the bar**, or in the middle of a\nring, such as `62%` or `3 of 8`, and are what the bar says as its reading\nwhere `value-text` is not set. While there are any, the bar carries\n`:state(content)`, so a sheet can make room for them.\n\n**Reaching `max` is said and sent.** When the value arrives at `max` from\nbelow, the bar says `complete-label`, \"Complete\" by default, in a polite\n`live` region and sends `helix-complete`, so a reader hears that the work is\ndone and a page can move on. A bar that starts full says nothing, and an\nempty `complete-label` keeps it quiet. The `complete` custom state is set\nwhile the bar is full.",
|
|
123474
124227
|
"name": "HelixHeadlessProgress",
|
|
123475
124228
|
"cssProperties": [
|
|
123476
124229
|
{
|
|
@@ -123479,6 +124232,10 @@
|
|
|
123479
124232
|
}
|
|
123480
124233
|
],
|
|
123481
124234
|
"cssParts": [
|
|
124235
|
+
{
|
|
124236
|
+
"description": "The box holding the words of the default slot, over the track or in the middle of the ring. Carries `--progress-fraction`.",
|
|
124237
|
+
"name": "content"
|
|
124238
|
+
},
|
|
123482
124239
|
{
|
|
123483
124240
|
"description": "The unfilled circle under the ring's filled arc.",
|
|
123484
124241
|
"name": "groove"
|
|
@@ -123501,6 +124258,10 @@
|
|
|
123501
124258
|
}
|
|
123502
124259
|
],
|
|
123503
124260
|
"slots": [
|
|
124261
|
+
{
|
|
124262
|
+
"description": "Words drawn on the bar, or in the middle of a ring, such as the reading. Said as the reading where `value-text` is not set.",
|
|
124263
|
+
"name": ""
|
|
124264
|
+
},
|
|
123504
124265
|
{
|
|
123505
124266
|
"description": "A visible label. Its words name the progress bar in place of `label`.",
|
|
123506
124267
|
"name": "label"
|
|
@@ -123536,7 +124297,7 @@
|
|
|
123536
124297
|
"type": {
|
|
123537
124298
|
"text": "Intl.NumberFormatOptions | undefined"
|
|
123538
124299
|
},
|
|
123539
|
-
"description": "`Intl.NumberFormat` options the reading is written with, as React Aria's\nMeter and ProgressBar take them: a unit, a currency, or a number of\ndecimals. Written as JSON in the attribute.\n\n```html\n<helix-progress value=\"18\" max=\"32\" format-options='{\"style\":\"unit\",\"unit\":\"gigabyte\"}'></helix-progress>\n```\n\nA `percent` style writes the share of the range, and any other the value\nitself, so the example says \"18 GB\". Absent is a whole percentage. The\nwords are announced
|
|
124300
|
+
"description": "`Intl.NumberFormat` options the reading is written with, as React Aria's\nMeter and ProgressBar take them: a unit, a currency, or a number of\ndecimals. Written as JSON in the attribute.\n\n```html\n<helix-progress value=\"18\" max=\"32\" format-options='{\"style\":\"unit\",\"unit\":\"gigabyte\"}'></helix-progress>\n```\n\nA `percent` style writes the share of the range, and any other the value\nitself, so the example says \"18 GB\". Absent is a whole percentage. The\nwords are announced whether or not `show-value` shows them. `value-text`\nstill wins.",
|
|
123540
124301
|
"attribute": "format-options"
|
|
123541
124302
|
},
|
|
123542
124303
|
{
|
|
@@ -123697,6 +124458,13 @@
|
|
|
123697
124458
|
"readonly": true,
|
|
123698
124459
|
"description": "A label's words changed, so the name is written again."
|
|
123699
124460
|
},
|
|
124461
|
+
{
|
|
124462
|
+
"kind": "field",
|
|
124463
|
+
"name": "reworded",
|
|
124464
|
+
"privacy": "private",
|
|
124465
|
+
"readonly": true,
|
|
124466
|
+
"description": "The words on the bar changed, so the reading is said again and the state set."
|
|
124467
|
+
},
|
|
123700
124468
|
{
|
|
123701
124469
|
"kind": "field",
|
|
123702
124470
|
"name": "tier",
|
|
@@ -124062,7 +124830,7 @@
|
|
|
124062
124830
|
"type": {
|
|
124063
124831
|
"text": "Intl.NumberFormatOptions | undefined"
|
|
124064
124832
|
},
|
|
124065
|
-
"description": "`Intl.NumberFormat` options the reading is written with, as React Aria's\nMeter and ProgressBar take them: a unit, a currency, or a number of\ndecimals. Written as JSON in the attribute.\n\n```html\n<helix-progress value=\"18\" max=\"32\" format-options='{\"style\":\"unit\",\"unit\":\"gigabyte\"}'></helix-progress>\n```\n\nA `percent` style writes the share of the range, and any other the value\nitself, so the example says \"18 GB\". Absent is a whole percentage. The\nwords are announced
|
|
124833
|
+
"description": "`Intl.NumberFormat` options the reading is written with, as React Aria's\nMeter and ProgressBar take them: a unit, a currency, or a number of\ndecimals. Written as JSON in the attribute.\n\n```html\n<helix-progress value=\"18\" max=\"32\" format-options='{\"style\":\"unit\",\"unit\":\"gigabyte\"}'></helix-progress>\n```\n\nA `percent` style writes the share of the range, and any other the value\nitself, so the example says \"18 GB\". Absent is a whole percentage. The\nwords are announced whether or not `show-value` shows them. `value-text`\nstill wins.",
|
|
124066
124834
|
"fieldName": "formatOptions"
|
|
124067
124835
|
},
|
|
124068
124836
|
{
|
|
@@ -124151,6 +124919,10 @@
|
|
|
124151
124919
|
"description": "The value is at `max` and the bar is not indeterminate.",
|
|
124152
124920
|
"name": "complete"
|
|
124153
124921
|
},
|
|
124922
|
+
{
|
|
124923
|
+
"description": "Words are set in the default slot.",
|
|
124924
|
+
"name": "content"
|
|
124925
|
+
},
|
|
124154
124926
|
{
|
|
124155
124927
|
"description": "Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.",
|
|
124156
124928
|
"name": "settled",
|
|
@@ -125239,7 +126011,7 @@
|
|
|
125239
126011
|
"declarations": [
|
|
125240
126012
|
{
|
|
125241
126013
|
"kind": "class",
|
|
125242
|
-
"description": "Renders a real `<q>`, so the browser supplies the quotation marks. It inserts\nthe correct marks for the document's language and nests them correctly when\none quotation sits inside another. Do not type quotation marks into the\ncontent: one that starts or ends with a typed mark warns once, with the\nruntime kind `typed-marks`. A quotation in a language other than the page's takes `lang` on the\nelement, and its marks follow it: `lang=\"de\"` sets „…“ and `lang=\"fr\"` «…»\ninside an English page.\n\nFor a passage set off from the surrounding text, use a blockquote.",
|
|
126014
|
+
"description": "Renders a real `<q>`, so the browser supplies the quotation marks. It inserts\nthe correct marks for the document's language and nests them correctly when\none quotation sits inside another. Do not type quotation marks into the\ncontent: one that starts or ends with a typed mark warns once, with the\nruntime kind `typed-marks`. A quotation in a language other than the page's takes `lang` on the\nelement, and its marks follow it: `lang=\"de\"` sets „…“ and `lang=\"fr\"` «…»\ninside an English page.\n\n**`no-marks` leaves the marks off**, for a quotation set where the page draws\nits own, such as a pull quote with a large decorative mark beside it or a\ntable of sayings. The quotation still counts toward nesting, so a quote\ninside it takes the inner marks it would have had. Text with marks typed\ninto it raises no warning under `no-marks`.\n\nFor a passage set off from the surrounding text, use a blockquote.",
|
|
125243
126015
|
"name": "HelixHeadlessQuote",
|
|
125244
126016
|
"cssParts": [
|
|
125245
126017
|
{
|
|
@@ -125264,6 +126036,17 @@
|
|
|
125264
126036
|
"description": "URL identifying where the quotation came from.",
|
|
125265
126037
|
"attribute": "cite"
|
|
125266
126038
|
},
|
|
126039
|
+
{
|
|
126040
|
+
"kind": "field",
|
|
126041
|
+
"name": "noMarks",
|
|
126042
|
+
"type": {
|
|
126043
|
+
"text": "boolean"
|
|
126044
|
+
},
|
|
126045
|
+
"default": "false",
|
|
126046
|
+
"description": "Whether to leave the quotation marks off, for a quotation set where the\npage draws its own.\n\nNegative, because the marks are on by default and a boolean attribute is\ntrue whenever it is present. Reflected, because a stylesheet takes the\nmarks off on it.",
|
|
126047
|
+
"attribute": "no-marks",
|
|
126048
|
+
"reflects": true
|
|
126049
|
+
},
|
|
125267
126050
|
{
|
|
125268
126051
|
"kind": "field",
|
|
125269
126052
|
"name": "warned",
|
|
@@ -125630,6 +126413,15 @@
|
|
|
125630
126413
|
"default": "''",
|
|
125631
126414
|
"description": "URL identifying where the quotation came from.",
|
|
125632
126415
|
"fieldName": "cite"
|
|
126416
|
+
},
|
|
126417
|
+
{
|
|
126418
|
+
"name": "no-marks",
|
|
126419
|
+
"type": {
|
|
126420
|
+
"text": "boolean"
|
|
126421
|
+
},
|
|
126422
|
+
"default": "false",
|
|
126423
|
+
"description": "Whether to leave the quotation marks off, for a quotation set where the\npage draws its own.\n\nNegative, because the marks are on by default and a boolean attribute is\ntrue whenever it is present. Reflected, because a stylesheet takes the\nmarks off on it.",
|
|
126424
|
+
"fieldName": "noMarks"
|
|
125633
126425
|
}
|
|
125634
126426
|
],
|
|
125635
126427
|
"superclass": {
|
|
@@ -130351,7 +131143,7 @@
|
|
|
130351
131143
|
"declarations": [
|
|
130352
131144
|
{
|
|
130353
131145
|
"kind": "class",
|
|
130354
|
-
"description": "A scatter chart shows how two measures relate. The table's first numeric\ncolumn is measured across, every other numeric column is measured up, and\neach row is one point. A table of countries with an income column and a life\nexpectancy column draws one point for each country. Each additional numeric\ncolumn is another series, in its own color.\n\nBoth axes are labeled, because both positions are values. The ticks sit at\nround numbers, and the range extends to them.\n\n`trend` draws each series' line of best fit, by least squares, across the\nplot in the series' color.\n\n**`size-by` names a third measure, drawn as each point's size**, as a bubble\nchart does: `size-by=\"Population\"` takes that column out of the series and\ngives each point an area in proportion to its row's number there. The\ntooltip and the table still say the number.\n\nThe summary gives each series' correlation coefficient and its number of\npoints. The table has every number, and the drawing is hidden from screen\nreaders.\n\n**The plot is read by key.** It takes focus, named by `label` or the caption.\nThe left and right arrows move from row to row in the table's order, Home\nand End go to the first and the last, and the up and down arrows move among\nthe series of a row. The tooltip sits on that point, the `live` part says the\nrow in words, and Escape puts the tooltip away.\n\nEach point is a `<span>` placed by percentage over the drawing, as\n`LineChart` places its end points, so points stay round when the drawing\nstretches.\n\nThe plot runs left to right in every text direction, as a number line does.\nThe plot, its axes, and the axis names sit in a `plane` part with\n`dir=\"ltr\"`. The axis names carry `dir=\"auto\"`, so a name in Arabic or Hebrew\nreads in its own direction. The summary and the tooltip bubble follow the\npage's direction.\n\n**A tap shows the reading under it**, and keeps it until a tap lands\nelsewhere. `helix-reading-change` says each move of the reading, by pointer,\ntap or key, and `helix-reading-press` says a reading was clicked, tapped, or\npressed with Enter or Space, for a page that opens what a reading stands for.",
|
|
131146
|
+
"description": "A scatter chart shows how two measures relate. The table's first numeric\ncolumn is measured across, every other numeric column is measured up, and\neach row is one point. A table of countries with an income column and a life\nexpectancy column draws one point for each country. Each additional numeric\ncolumn is another series, in its own color.\n\nBoth axes are labeled, because both positions are values. The ticks sit at\nround numbers, and the range extends to them.\n\n`trend` draws each series' line of best fit, by least squares, across the\nplot in the series' color.\n\n**`size-by` names a third measure, drawn as each point's size**, as a bubble\nchart does: `size-by=\"Population\"` takes that column out of the series and\ngives each point an area in proportion to its row's number there. The\ntooltip and the table still say the number.\n\nThe summary gives each series' correlation coefficient and its number of\npoints. The table has every number, and the drawing is hidden from screen\nreaders.\n\n**The plot is read by key.** It takes focus, named by `label` or the caption.\nThe left and right arrows move from row to row in the table's order, Home\nand End go to the first and the last, and the up and down arrows move among\nthe series of a row. The tooltip sits on that point, the `live` part says the\nrow in words, and Escape puts the tooltip away.\n\nEach point is a `<span>` placed by percentage over the drawing, as\n`LineChart` places its end points, so points stay round when the drawing\nstretches.\n\nThe plot runs left to right in every text direction, as a number line does.\nThe plot, its axes, and the axis names sit in a `plane` part with\n`dir=\"ltr\"`. The axis names carry `dir=\"auto\"`, so a name in Arabic or Hebrew\nreads in its own direction. The summary and the tooltip bubble follow the\npage's direction.\n\n**A tap shows the reading under it**, and keeps it until a tap lands\nelsewhere. `helix-reading-change` says each move of the reading, by pointer,\ntap or key, and `helix-reading-press` says a reading was clicked, tapped, or\npressed with Enter or Space, for a page that opens what a reading stands for.\n\n**`data` takes the readings as data** where the page has no table to point\n`for` at, in a table's shape: the column headings, then one row per reading\nwith its label first. A table is still the better source where the page can\nshow one, since it reads before any script runs.\n\n**A chart with nothing to draw says so.** A table with no readings shows\n`empty-text`, \"No readings\", in the plot, and `loading` shows `loading-text`\nthere until readings arrive. The `empty` and `loading` slots take markup in\ntheir place, such as a link to add the first reading.",
|
|
130355
131147
|
"name": "HelixHeadlessScatterChart",
|
|
130356
131148
|
"cssProperties": [
|
|
130357
131149
|
{
|
|
@@ -130372,6 +131164,10 @@
|
|
|
130372
131164
|
}
|
|
130373
131165
|
],
|
|
130374
131166
|
"cssParts": [
|
|
131167
|
+
{
|
|
131168
|
+
"description": "The words in place of the drawing when the table has no readings: the `empty` slot, falling back to `empty-text`. Not drawn while the table cannot be read yet, on the server and during hydration.",
|
|
131169
|
+
"name": "empty"
|
|
131170
|
+
},
|
|
130375
131171
|
{
|
|
130376
131172
|
"description": "One line across the plot, drawn when `gridlines` is set.",
|
|
130377
131173
|
"name": "gridline"
|
|
@@ -130380,6 +131176,10 @@
|
|
|
130380
131176
|
"description": "The readout: a polite live region that says the row the keys moved to. Hide it visually.",
|
|
130381
131177
|
"name": "live"
|
|
130382
131178
|
},
|
|
131179
|
+
{
|
|
131180
|
+
"description": "The words in place of the drawing while `loading` is set and there are no readings: the `loading` slot, falling back to `loading-text`.",
|
|
131181
|
+
"name": "loading"
|
|
131182
|
+
},
|
|
130383
131183
|
{
|
|
130384
131184
|
"description": "The invisible point the tooltip is anchored to.",
|
|
130385
131185
|
"name": "mark"
|
|
@@ -130501,6 +131301,16 @@
|
|
|
130501
131301
|
"name": "y-tick"
|
|
130502
131302
|
}
|
|
130503
131303
|
],
|
|
131304
|
+
"slots": [
|
|
131305
|
+
{
|
|
131306
|
+
"description": "Content shown in place of the drawing when the table has no readings, such as a link to add the first. Falls back to `empty-text`.",
|
|
131307
|
+
"name": "empty"
|
|
131308
|
+
},
|
|
131309
|
+
{
|
|
131310
|
+
"description": "Content shown in place of the drawing while `loading` is set and there are no readings yet. Falls back to `loading-text`.",
|
|
131311
|
+
"name": "loading"
|
|
131312
|
+
}
|
|
131313
|
+
],
|
|
130504
131314
|
"members": [
|
|
130505
131315
|
{
|
|
130506
131316
|
"kind": "field",
|
|
@@ -130807,6 +131617,70 @@
|
|
|
130807
131617
|
"privacy": "private",
|
|
130808
131618
|
"readonly": true
|
|
130809
131619
|
},
|
|
131620
|
+
{
|
|
131621
|
+
"kind": "field",
|
|
131622
|
+
"name": "emptyText",
|
|
131623
|
+
"type": {
|
|
131624
|
+
"text": "string"
|
|
131625
|
+
},
|
|
131626
|
+
"default": "'No readings'",
|
|
131627
|
+
"description": "The words shown in place of the drawing when the table has no readings,\nand the fallback of the `empty` slot.",
|
|
131628
|
+
"attribute": "empty-text",
|
|
131629
|
+
"helix": {
|
|
131630
|
+
"words": true
|
|
131631
|
+
},
|
|
131632
|
+
"inheritedFrom": {
|
|
131633
|
+
"name": "MixinChartStatus",
|
|
131634
|
+
"module": "src/mixins/mixin-chart-status/mixin-chart-status.ts"
|
|
131635
|
+
}
|
|
131636
|
+
},
|
|
131637
|
+
{
|
|
131638
|
+
"kind": "field",
|
|
131639
|
+
"name": "loading",
|
|
131640
|
+
"type": {
|
|
131641
|
+
"text": "boolean"
|
|
131642
|
+
},
|
|
131643
|
+
"default": "false",
|
|
131644
|
+
"description": "Whether the readings are still on their way. The chart shows\n`loading-text` in place of an empty drawing until it has readings.\n\nReflected, so a stylesheet can treat the chart while it waits. A chart\nthat already has readings keeps drawing them, so a refresh does not\nblank it.",
|
|
131645
|
+
"attribute": "loading",
|
|
131646
|
+
"reflects": true,
|
|
131647
|
+
"inheritedFrom": {
|
|
131648
|
+
"name": "MixinChartStatus",
|
|
131649
|
+
"module": "src/mixins/mixin-chart-status/mixin-chart-status.ts"
|
|
131650
|
+
}
|
|
131651
|
+
},
|
|
131652
|
+
{
|
|
131653
|
+
"kind": "field",
|
|
131654
|
+
"name": "loadingText",
|
|
131655
|
+
"type": {
|
|
131656
|
+
"text": "string"
|
|
131657
|
+
},
|
|
131658
|
+
"default": "'Loading readings'",
|
|
131659
|
+
"description": "The words shown in place of the drawing while `loading` is set and\nthere are no readings yet, and the fallback of the `loading` slot.",
|
|
131660
|
+
"attribute": "loading-text",
|
|
131661
|
+
"helix": {
|
|
131662
|
+
"words": true
|
|
131663
|
+
},
|
|
131664
|
+
"inheritedFrom": {
|
|
131665
|
+
"name": "MixinChartStatus",
|
|
131666
|
+
"module": "src/mixins/mixin-chart-status/mixin-chart-status.ts"
|
|
131667
|
+
}
|
|
131668
|
+
},
|
|
131669
|
+
{
|
|
131670
|
+
"kind": "method",
|
|
131671
|
+
"name": "renderStatus",
|
|
131672
|
+
"privacy": "protected",
|
|
131673
|
+
"return": {
|
|
131674
|
+
"type": {
|
|
131675
|
+
"text": "TemplateResult | typeof nothing"
|
|
131676
|
+
}
|
|
131677
|
+
},
|
|
131678
|
+
"description": "What stands in the plot while there is nothing to draw: the `loading`\nline, the `empty` line, or nothing while the table cannot be read yet.\n\n`dir=\"auto\"`, so words in a right-to-left script read their own way in\na plot that holds itself left to right, as Scatter Chart's does.",
|
|
131679
|
+
"inheritedFrom": {
|
|
131680
|
+
"name": "MixinChartStatus",
|
|
131681
|
+
"module": "src/mixins/mixin-chart-status/mixin-chart-status.ts"
|
|
131682
|
+
}
|
|
131683
|
+
},
|
|
130810
131684
|
{
|
|
130811
131685
|
"kind": "field",
|
|
130812
131686
|
"name": "source",
|
|
@@ -130830,6 +131704,19 @@
|
|
|
130830
131704
|
"module": "src/mixins/mixin-chart-source/mixin-chart-source.ts"
|
|
130831
131705
|
}
|
|
130832
131706
|
},
|
|
131707
|
+
{
|
|
131708
|
+
"kind": "field",
|
|
131709
|
+
"name": "data",
|
|
131710
|
+
"type": {
|
|
131711
|
+
"text": "ChartData | undefined"
|
|
131712
|
+
},
|
|
131713
|
+
"default": "undefined",
|
|
131714
|
+
"description": "The readings as data, in the shape of a table, where the page has no\ntable to point `for` at. `for` wins where both are set.\n\n```js\nchart.data = {\n caption: 'Sessions by channel',\n columns: ['Month', 'Direct', 'Referral'],\n rows: [['Jan', 10, 4], ['Feb', 20, 8]],\n}\n```\n\nThe first column holds each row's label and every column after it a\nseries, as in a table. A cell is a number, words, `null` for a blank,\nor `{ value, text }` for a number shown as words, such as `$128k`. A\nnumber is shown in `locale`.\n\n**A table is still the better source where the page can show one**:\nit reads with no script and before hydration, and a reader can sort and\ncopy it. Data is drawn on the client only, so a server serves the\nframe, and the summary, the keys and the readout are then the whole of\nwhat a screen reader is given. Set a new object to redraw: the chart\ndoes not look inside the one it has.",
|
|
131715
|
+
"inheritedFrom": {
|
|
131716
|
+
"name": "MixinChartSource",
|
|
131717
|
+
"module": "src/mixins/mixin-chart-source/mixin-chart-source.ts"
|
|
131718
|
+
}
|
|
131719
|
+
},
|
|
130833
131720
|
{
|
|
130834
131721
|
"kind": "field",
|
|
130835
131722
|
"name": "for",
|
|
@@ -130966,6 +131853,19 @@
|
|
|
130966
131853
|
"module": "src/mixins/mixin-chart-source/mixin-chart-source.ts"
|
|
130967
131854
|
}
|
|
130968
131855
|
},
|
|
131856
|
+
{
|
|
131857
|
+
"kind": "field",
|
|
131858
|
+
"name": "readingsKnown",
|
|
131859
|
+
"type": {
|
|
131860
|
+
"text": "boolean"
|
|
131861
|
+
},
|
|
131862
|
+
"description": "Whether the readings have been looked for: false on the server and\nwhile hydrating, where no table is resolved and no data is read. A\nchart says it has no readings only once this is true.",
|
|
131863
|
+
"readonly": true,
|
|
131864
|
+
"inheritedFrom": {
|
|
131865
|
+
"name": "MixinChartSource",
|
|
131866
|
+
"module": "src/mixins/mixin-chart-source/mixin-chart-source.ts"
|
|
131867
|
+
}
|
|
131868
|
+
},
|
|
130969
131869
|
{
|
|
130970
131870
|
"kind": "field",
|
|
130971
131871
|
"name": "sourceRows",
|
|
@@ -131492,6 +132392,45 @@
|
|
|
131492
132392
|
"description": "Draws each series' line of best fit across the plot, by least squares, in\nthe series' color: the regression line a reader would otherwise draw by\neye.\n\nAbsent draws none. A series with fewer than two points, or with every\npoint at one measure across, has no line to draw. The summary already\ngives each series' correlation, which says how near the points are to it.",
|
|
131493
132393
|
"fieldName": "trend"
|
|
131494
132394
|
},
|
|
132395
|
+
{
|
|
132396
|
+
"name": "empty-text",
|
|
132397
|
+
"type": {
|
|
132398
|
+
"text": "string"
|
|
132399
|
+
},
|
|
132400
|
+
"default": "'No readings'",
|
|
132401
|
+
"description": "The words shown in place of the drawing when the table has no readings,\nand the fallback of the `empty` slot.",
|
|
132402
|
+
"fieldName": "emptyText",
|
|
132403
|
+
"inheritedFrom": {
|
|
132404
|
+
"name": "MixinChartStatus",
|
|
132405
|
+
"module": "src/mixins/mixin-chart-status/mixin-chart-status.ts"
|
|
132406
|
+
}
|
|
132407
|
+
},
|
|
132408
|
+
{
|
|
132409
|
+
"name": "loading",
|
|
132410
|
+
"type": {
|
|
132411
|
+
"text": "boolean"
|
|
132412
|
+
},
|
|
132413
|
+
"default": "false",
|
|
132414
|
+
"description": "Whether the readings are still on their way. The chart shows\n`loading-text` in place of an empty drawing until it has readings.\n\nReflected, so a stylesheet can treat the chart while it waits. A chart\nthat already has readings keeps drawing them, so a refresh does not\nblank it.",
|
|
132415
|
+
"fieldName": "loading",
|
|
132416
|
+
"inheritedFrom": {
|
|
132417
|
+
"name": "MixinChartStatus",
|
|
132418
|
+
"module": "src/mixins/mixin-chart-status/mixin-chart-status.ts"
|
|
132419
|
+
}
|
|
132420
|
+
},
|
|
132421
|
+
{
|
|
132422
|
+
"name": "loading-text",
|
|
132423
|
+
"type": {
|
|
132424
|
+
"text": "string"
|
|
132425
|
+
},
|
|
132426
|
+
"default": "'Loading readings'",
|
|
132427
|
+
"description": "The words shown in place of the drawing while `loading` is set and\nthere are no readings yet, and the fallback of the `loading` slot.",
|
|
132428
|
+
"fieldName": "loadingText",
|
|
132429
|
+
"inheritedFrom": {
|
|
132430
|
+
"name": "MixinChartStatus",
|
|
132431
|
+
"module": "src/mixins/mixin-chart-status/mixin-chart-status.ts"
|
|
132432
|
+
}
|
|
132433
|
+
},
|
|
131495
132434
|
{
|
|
131496
132435
|
"name": "for",
|
|
131497
132436
|
"type": {
|
|
@@ -131546,6 +132485,10 @@
|
|
|
131546
132485
|
}
|
|
131547
132486
|
],
|
|
131548
132487
|
"mixins": [
|
|
132488
|
+
{
|
|
132489
|
+
"name": "MixinChartStatus",
|
|
132490
|
+
"package": "@fusion.dev/helix-core"
|
|
132491
|
+
},
|
|
131549
132492
|
{
|
|
131550
132493
|
"name": "MixinChartSource",
|
|
131551
132494
|
"package": "@fusion.dev/helix-core"
|
|
@@ -135418,6 +136361,17 @@
|
|
|
135418
136361
|
"description": "Whether the skeleton holds content, read off its children where they can\nbe known. Not on a server, where an unlabeled skeleton is taken for an\nempty one until the page has its children.",
|
|
135419
136362
|
"readonly": true
|
|
135420
136363
|
},
|
|
136364
|
+
{
|
|
136365
|
+
"kind": "method",
|
|
136366
|
+
"name": "renderShape",
|
|
136367
|
+
"privacy": "protected",
|
|
136368
|
+
"return": {
|
|
136369
|
+
"type": {
|
|
136370
|
+
"text": "TemplateResult"
|
|
136371
|
+
}
|
|
136372
|
+
},
|
|
136373
|
+
"description": "The placeholder shape and the sheen inside it.\n\nA method, so a tier above can draw the placeholder as several shapes, as\nthe styled tier draws a paragraph of lines."
|
|
136374
|
+
},
|
|
135421
136375
|
{
|
|
135422
136376
|
"kind": "field",
|
|
135423
136377
|
"name": "tier",
|
|
@@ -143323,7 +144277,7 @@
|
|
|
143323
144277
|
"declarations": [
|
|
143324
144278
|
{
|
|
143325
144279
|
"kind": "class",
|
|
143326
|
-
"description": "
|
|
144280
|
+
"description": "**A named group is a group**, so a screen reader announces the stats\ntogether under its name, such as \"Usage, group\". Name it with `label`,\n`aria-label` or `aria-labelledby`. An unnamed one has no role, since a group\nwith no name only adds \"group\" to what a reader says, as an unnamed Card\nhas none. The figures are read together and their order has no meaning, so\nthe group does not announce positions such as \"1 of 4\".",
|
|
143327
144281
|
"name": "HelixHeadlessStatGroup",
|
|
143328
144282
|
"slots": [
|
|
143329
144283
|
{
|
|
@@ -143339,9 +144293,52 @@
|
|
|
143339
144293
|
"text": "string"
|
|
143340
144294
|
},
|
|
143341
144295
|
"default": "''",
|
|
143342
|
-
"description": "Accessible name for the group.",
|
|
144296
|
+
"description": "Accessible name for the group, which makes it a group.\n\nAbsent leaves the stats with no group around them, unless `aria-label` or\n`aria-labelledby` names it.",
|
|
143343
144297
|
"attribute": "label"
|
|
143344
144298
|
},
|
|
144299
|
+
{
|
|
144300
|
+
"kind": "field",
|
|
144301
|
+
"name": "observedAttributes",
|
|
144302
|
+
"type": {
|
|
144303
|
+
"text": "string[]"
|
|
144304
|
+
},
|
|
144305
|
+
"static": true,
|
|
144306
|
+
"description": "Hears a name written on the element, which no property mirrors.\n\nLit observes the attributes of its own properties only, and `ariaLabel`\nand `ariaLabelledByElements` belong to the platform.",
|
|
144307
|
+
"readonly": true
|
|
144308
|
+
},
|
|
144309
|
+
{
|
|
144310
|
+
"kind": "method",
|
|
144311
|
+
"name": "attributeChangedCallback",
|
|
144312
|
+
"return": {
|
|
144313
|
+
"type": {
|
|
144314
|
+
"text": "void"
|
|
144315
|
+
}
|
|
144316
|
+
},
|
|
144317
|
+
"parameters": [
|
|
144318
|
+
{
|
|
144319
|
+
"name": "name",
|
|
144320
|
+
"type": {
|
|
144321
|
+
"text": "string"
|
|
144322
|
+
}
|
|
144323
|
+
},
|
|
144324
|
+
{
|
|
144325
|
+
"name": "old",
|
|
144326
|
+
"type": {
|
|
144327
|
+
"text": "string | null"
|
|
144328
|
+
}
|
|
144329
|
+
},
|
|
144330
|
+
{
|
|
144331
|
+
"name": "value",
|
|
144332
|
+
"type": {
|
|
144333
|
+
"text": "string | null"
|
|
144334
|
+
}
|
|
144335
|
+
}
|
|
144336
|
+
],
|
|
144337
|
+
"description": "Called by the browser when an observed attribute changes. A name written\nor taken off asks for an update, because it decides whether the stats are\na group.",
|
|
144338
|
+
"type": {
|
|
144339
|
+
"text": "attributeChangedCallback(name: string, old: string | null, value: string | null) => void"
|
|
144340
|
+
}
|
|
144341
|
+
},
|
|
143345
144342
|
{
|
|
143346
144343
|
"kind": "field",
|
|
143347
144344
|
"name": "tier",
|
|
@@ -143689,7 +144686,7 @@
|
|
|
143689
144686
|
"text": "string"
|
|
143690
144687
|
},
|
|
143691
144688
|
"default": "''",
|
|
143692
|
-
"description": "Accessible name for the group.",
|
|
144689
|
+
"description": "Accessible name for the group, which makes it a group.\n\nAbsent leaves the stats with no group around them, unless `aria-label` or\n`aria-labelledby` names it.",
|
|
143693
144690
|
"fieldName": "label"
|
|
143694
144691
|
}
|
|
143695
144692
|
],
|
|
@@ -143775,11 +144772,23 @@
|
|
|
143775
144772
|
"declarations": [
|
|
143776
144773
|
{
|
|
143777
144774
|
"kind": "class",
|
|
143778
|
-
"description": "The label comes first in the markup and the value after it, so a screen\nreader reads what the figure counts before the number. Visually, the number\nstands out either way.\n\nBoth are bare slots. An element that assigned itself a slot on connect would\nadd an attribute after upgrade, which markup rendered on the server by React\ndoes not have.\n\n**A stat with a label is a group named by it**, so a reader moving through a\ndashboard hears \"Revenue, group\" and then the figure, its unit and its\ntrend as one reading, rather than a run of loose words. The role and the name\nare set through `ElementInternals` once the label is known, which writes no\nattribute; a stat with no label has no role. Put a `Trend` in the `trend`\nslot to have it read inside the group, after the figure it qualifies.",
|
|
144775
|
+
"description": "The label comes first in the markup and the value after it, so a screen\nreader reads what the figure counts before the number. Visually, the number\nstands out either way.\n\nBoth are bare slots. An element that assigned itself a slot on connect would\nadd an attribute after upgrade, which markup rendered on the server by React\ndoes not have.\n\n**A stat with a label is a group named by it**, so a reader moving through a\ndashboard hears \"Revenue, group\" and then the figure, its unit and its\ntrend as one reading, rather than a run of loose words. The role and the name\nare set through `ElementInternals` once the label is known, which writes no\nattribute; a stat with no label has no role. Put a `Trend` in the `trend`\nslot to have it read inside the group, after the figure it qualifies.\n\n**Or give the figure as a number.** `value` is written with\n`Intl.NumberFormat`, in `locale` and with `format-options`, so\n`value=\"1234567\" format-options='{\"notation\":\"compact\"}'` shows `1.2M`, and\na server writes it as the browser does. A number in `value` takes the place\nof a slotted figure.\n\n**Each slot is a part of the same name**, and `value` for the figure, so a\npage reaches the label, the unit and the trend from outside. A slot draws no\nbox, so a part passes inherited properties to what is slotted. **The stat\nsays which pieces it holds**, as `:state(has-label)`, `:state(has-unit)` and\n`:state(has-trend)`, read in the browser, so a served stat carries none\nuntil the script runs.",
|
|
143779
144776
|
"name": "HelixHeadlessStat",
|
|
143780
144777
|
"cssParts": [
|
|
143781
144778
|
{
|
|
143782
|
-
"description": "The slot the
|
|
144779
|
+
"description": "The slot the label arrives through, drawing no box, as `value` does.",
|
|
144780
|
+
"name": "label"
|
|
144781
|
+
},
|
|
144782
|
+
{
|
|
144783
|
+
"description": "The slot the trend arrives through, drawing no box, as `value` does.",
|
|
144784
|
+
"name": "trend"
|
|
144785
|
+
},
|
|
144786
|
+
{
|
|
144787
|
+
"description": "The slot the unit arrives through, drawing no box, as `value` does.",
|
|
144788
|
+
"name": "unit"
|
|
144789
|
+
},
|
|
144790
|
+
{
|
|
144791
|
+
"description": "The slot the value is written in, or the figure `value` writes. A slot draws no box, so it takes the inherited properties, such as color and font, and passes them to the value.",
|
|
143783
144792
|
"name": "value"
|
|
143784
144793
|
}
|
|
143785
144794
|
],
|
|
@@ -143812,6 +144821,41 @@
|
|
|
143812
144821
|
"attribute": "direction",
|
|
143813
144822
|
"reflects": true
|
|
143814
144823
|
},
|
|
144824
|
+
{
|
|
144825
|
+
"kind": "field",
|
|
144826
|
+
"name": "formatOptions",
|
|
144827
|
+
"type": {
|
|
144828
|
+
"text": "Intl.NumberFormatOptions | undefined"
|
|
144829
|
+
},
|
|
144830
|
+
"description": "`Intl.NumberFormat` options `value` is written with, such as\n`{\"notation\":\"compact\"}` for `1.2M` or `{\"style\":\"percent\"}` for `98%`,\nwritten as JSON in the attribute.\n\nAbsent writes the number as the locale writes any number.",
|
|
144831
|
+
"attribute": "format-options"
|
|
144832
|
+
},
|
|
144833
|
+
{
|
|
144834
|
+
"kind": "field",
|
|
144835
|
+
"name": "locale",
|
|
144836
|
+
"type": {
|
|
144837
|
+
"text": "string"
|
|
144838
|
+
},
|
|
144839
|
+
"default": "''",
|
|
144840
|
+
"description": "The locale `value` is written in, such as `de` for `1.234.567`.\n\nAbsent reads the nearest `lang`, then the runtime's own. Set it on a page\nrendered on a server, so the server and the browser write the figure\nalike.",
|
|
144841
|
+
"attribute": "locale"
|
|
144842
|
+
},
|
|
144843
|
+
{
|
|
144844
|
+
"kind": "field",
|
|
144845
|
+
"name": "value",
|
|
144846
|
+
"type": {
|
|
144847
|
+
"text": "number | undefined"
|
|
144848
|
+
},
|
|
144849
|
+
"description": "The figure as a number, written with `format-options` in `locale` in\nplace of a slotted value.\n\nAbsent leaves the figure to the slot.",
|
|
144850
|
+
"attribute": "value"
|
|
144851
|
+
},
|
|
144852
|
+
{
|
|
144853
|
+
"kind": "field",
|
|
144854
|
+
"name": "readPieces",
|
|
144855
|
+
"privacy": "private",
|
|
144856
|
+
"readonly": true,
|
|
144857
|
+
"description": "Says which pieces the stat holds, one call apiece so each pairs with its `@cssstate`."
|
|
144858
|
+
},
|
|
143815
144859
|
{
|
|
143816
144860
|
"kind": "field",
|
|
143817
144861
|
"name": "tier",
|
|
@@ -144160,6 +145204,53 @@
|
|
|
144160
145204
|
},
|
|
144161
145205
|
"description": "Which way the label and the value are arranged.\n\nAbsent is a column, the label over the number, which is how a figure is read\non a dashboard: the words say what is coming and the number answers.\n`column-reverse` puts the number first, which is right where the number is\nthe headline and the label is a caption under it.\n\nThe row directions set them side by side, for a figure in a line of text or\na narrow strip where a stacked pair would be two lines of almost nothing.\n\nA property rather than a `Flex` around it, because the unit has to stay on\nthe value's baseline whichever way the pair goes, and only this element\nknows which of its children the unit belongs to.\n\nThe name and the values are `Flex`'s, which lays out the same way. Which\nway a number moved is `Trend`'s `movement`. On a Stat, `up`, `down` and\n`neutral` are not layouts, and the pair stays the column.\n\n**Optional rather than defaulted to `column`, which is not a style\npreference.** A reflecting property with a default writes its attribute onto\nthe host the moment the element upgrades, and the host is markup the\nconsumer rendered: React compares what it rendered against what is there and\nreports a hydration mismatch. The absent attribute is the column, which the\nstylesheet reads as the base case, and the server spec asserts the host\ncarries nothing nobody wrote.",
|
|
144162
145206
|
"fieldName": "direction"
|
|
145207
|
+
},
|
|
145208
|
+
{
|
|
145209
|
+
"name": "format-options",
|
|
145210
|
+
"type": {
|
|
145211
|
+
"text": "Intl.NumberFormatOptions | undefined"
|
|
145212
|
+
},
|
|
145213
|
+
"description": "`Intl.NumberFormat` options `value` is written with, such as\n`{\"notation\":\"compact\"}` for `1.2M` or `{\"style\":\"percent\"}` for `98%`,\nwritten as JSON in the attribute.\n\nAbsent writes the number as the locale writes any number.",
|
|
145214
|
+
"fieldName": "formatOptions"
|
|
145215
|
+
},
|
|
145216
|
+
{
|
|
145217
|
+
"name": "locale",
|
|
145218
|
+
"type": {
|
|
145219
|
+
"text": "string"
|
|
145220
|
+
},
|
|
145221
|
+
"default": "''",
|
|
145222
|
+
"description": "The locale `value` is written in, such as `de` for `1.234.567`.\n\nAbsent reads the nearest `lang`, then the runtime's own. Set it on a page\nrendered on a server, so the server and the browser write the figure\nalike.",
|
|
145223
|
+
"fieldName": "locale"
|
|
145224
|
+
},
|
|
145225
|
+
{
|
|
145226
|
+
"name": "value",
|
|
145227
|
+
"type": {
|
|
145228
|
+
"text": "number | undefined"
|
|
145229
|
+
},
|
|
145230
|
+
"description": "The figure as a number, written with `format-options` in `locale` in\nplace of a slotted value.\n\nAbsent leaves the figure to the slot.",
|
|
145231
|
+
"fieldName": "value"
|
|
145232
|
+
}
|
|
145233
|
+
],
|
|
145234
|
+
"cssStates": [
|
|
145235
|
+
{
|
|
145236
|
+
"description": "Something is slotted into `label`.",
|
|
145237
|
+
"name": "has-label"
|
|
145238
|
+
},
|
|
145239
|
+
{
|
|
145240
|
+
"description": "Something is slotted into `trend`.",
|
|
145241
|
+
"name": "has-trend"
|
|
145242
|
+
},
|
|
145243
|
+
{
|
|
145244
|
+
"description": "Something is slotted into `unit`.",
|
|
145245
|
+
"name": "has-unit"
|
|
145246
|
+
},
|
|
145247
|
+
{
|
|
145248
|
+
"description": "Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.",
|
|
145249
|
+
"name": "settled",
|
|
145250
|
+
"inheritedFrom": {
|
|
145251
|
+
"name": "HelixElement",
|
|
145252
|
+
"module": "src/helix-element/helix-element.ts"
|
|
145253
|
+
}
|
|
144163
145254
|
}
|
|
144164
145255
|
],
|
|
144165
145256
|
"superclass": {
|
|
@@ -144191,16 +145282,6 @@
|
|
|
144191
145282
|
},
|
|
144192
145283
|
"tagName": "helix-headless-stat",
|
|
144193
145284
|
"customElement": true,
|
|
144194
|
-
"cssStates": [
|
|
144195
|
-
{
|
|
144196
|
-
"description": "Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.",
|
|
144197
|
-
"name": "settled",
|
|
144198
|
-
"inheritedFrom": {
|
|
144199
|
-
"name": "HelixElement",
|
|
144200
|
-
"module": "src/helix-element/helix-element.ts"
|
|
144201
|
-
}
|
|
144202
|
-
}
|
|
144203
|
-
],
|
|
144204
145285
|
"modulePath": "src/stat/root/stat-root.ts",
|
|
144205
145286
|
"definitionPath": "src/stat/root/stat-root.ts"
|
|
144206
145287
|
}
|
|
@@ -183750,6 +184831,6 @@
|
|
|
183750
184831
|
],
|
|
183751
184832
|
"helix": {
|
|
183752
184833
|
"package": "@fusion.dev/helix-headless",
|
|
183753
|
-
"version": "0.
|
|
184834
|
+
"version": "0.154.0"
|
|
183754
184835
|
}
|
|
183755
184836
|
}
|