@fusion.dev/helix-headless 0.33.5 → 0.34.1
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 +22 -0
- package/dist/tree/root/tree-root.d.ts +36 -0
- package/dist/tree/root/tree-root.js +3 -0
- package/package.json +5 -5
- package/types/jsx.d.ts +134 -0
- package/types/vue.d.ts +34 -0
package/custom-elements.json
CHANGED
|
@@ -102607,6 +102607,16 @@
|
|
|
102607
102607
|
"description": "Accessible name for the tree.",
|
|
102608
102608
|
"attribute": "label"
|
|
102609
102609
|
},
|
|
102610
|
+
{
|
|
102611
|
+
"kind": "field",
|
|
102612
|
+
"name": "nesting",
|
|
102613
|
+
"type": {
|
|
102614
|
+
"text": "'heading' | 'peer' | 'subordinate' | undefined"
|
|
102615
|
+
},
|
|
102616
|
+
"description": "What a step inward means: nothing, a rank, or a heading over what follows.\n\nAll three answers are right, for different trees, which is why this is\nasked rather than decided. `peer` is a file explorer: every row is the same\nkind of thing, a name that may hold more names, and the indent alone says\nwhere one sits. `subordinate` is side navigation or a categorization: a\nsection holds pages and a facet holds values, so a step inward is a change\nof kind and the rows say so. `heading` is a documentation sidebar, where\nthe change is at the *parent*: \"Getting started\" is not a lesser page than\nthe pages under it and not a page at all, it is the name of the list, so\nthe branch takes the rail-heading treatment and its children stay at the\nsize every other row is.\n\n`subordinate` and `heading` are not the same answer said twice. One keys on\ndepth and quiets the child; the other keys on holding children and relabels\nthe parent, so a top-level leaf beside a branch is untouched by the first\nand untouched by the second for opposite reasons.\n\nOn the root rather than the item, because it is a fact about the tree. Set\nper row it would make a tree writable in which one branch ranks its\nchildren and the next does not, and it would have to be repeated on every\nrow to say one thing.\n\nHere rather than on the styled tier, because it is not about paint: with\nevery stylesheet deleted it is still true that this tree ranks its depths,\nthat this one heads them, and that a file explorer does neither. The styled\ntier steps a subordinate row once down the type scale and sets a heading\nbranch as a label; a headless consumer reads the attribute and the\n`--tree-level` each row carries, and draws either however they like.\n\n**Optional, with no default**, per the reflected-property rule: a value\nwritten here appears in the served markup of every tree anybody renders.\nThe resting state is the absence of the attribute, which is `peer`.",
|
|
102617
|
+
"attribute": "nesting",
|
|
102618
|
+
"reflects": true
|
|
102619
|
+
},
|
|
102610
102620
|
{
|
|
102611
102621
|
"kind": "field",
|
|
102612
102622
|
"name": "watcher",
|
|
@@ -103324,6 +103334,14 @@
|
|
|
103324
103334
|
"description": "Accessible name for the tree.",
|
|
103325
103335
|
"fieldName": "label"
|
|
103326
103336
|
},
|
|
103337
|
+
{
|
|
103338
|
+
"name": "nesting",
|
|
103339
|
+
"type": {
|
|
103340
|
+
"text": "'heading' | 'peer' | 'subordinate' | undefined"
|
|
103341
|
+
},
|
|
103342
|
+
"description": "What a step inward means: nothing, a rank, or a heading over what follows.\n\nAll three answers are right, for different trees, which is why this is\nasked rather than decided. `peer` is a file explorer: every row is the same\nkind of thing, a name that may hold more names, and the indent alone says\nwhere one sits. `subordinate` is side navigation or a categorization: a\nsection holds pages and a facet holds values, so a step inward is a change\nof kind and the rows say so. `heading` is a documentation sidebar, where\nthe change is at the *parent*: \"Getting started\" is not a lesser page than\nthe pages under it and not a page at all, it is the name of the list, so\nthe branch takes the rail-heading treatment and its children stay at the\nsize every other row is.\n\n`subordinate` and `heading` are not the same answer said twice. One keys on\ndepth and quiets the child; the other keys on holding children and relabels\nthe parent, so a top-level leaf beside a branch is untouched by the first\nand untouched by the second for opposite reasons.\n\nOn the root rather than the item, because it is a fact about the tree. Set\nper row it would make a tree writable in which one branch ranks its\nchildren and the next does not, and it would have to be repeated on every\nrow to say one thing.\n\nHere rather than on the styled tier, because it is not about paint: with\nevery stylesheet deleted it is still true that this tree ranks its depths,\nthat this one heads them, and that a file explorer does neither. The styled\ntier steps a subordinate row once down the type scale and sets a heading\nbranch as a label; a headless consumer reads the attribute and the\n`--tree-level` each row carries, and draws either however they like.\n\n**Optional, with no default**, per the reflected-property rule: a value\nwritten here appears in the served markup of every tree anybody renders.\nThe resting state is the absence of the attribute, which is `peer`.",
|
|
103343
|
+
"fieldName": "nesting"
|
|
103344
|
+
},
|
|
103327
103345
|
{
|
|
103328
103346
|
"name": "empty-text",
|
|
103329
103347
|
"type": {
|
|
@@ -103420,6 +103438,10 @@
|
|
|
103420
103438
|
{
|
|
103421
103439
|
"description": "The same tree on the headless tier, with every rule written by hand.",
|
|
103422
103440
|
"slug": "preview"
|
|
103441
|
+
},
|
|
103442
|
+
{
|
|
103443
|
+
"description": "Depth as a position, depth as a rank, and a branch that is a heading, with every rule written by hand.",
|
|
103444
|
+
"slug": "nesting"
|
|
103423
103445
|
}
|
|
103424
103446
|
],
|
|
103425
103447
|
"source": "helix/headless/src/tree"
|
|
@@ -34,6 +34,42 @@ export declare class HelixHeadlessTree extends HelixHeadlessTree_base {
|
|
|
34
34
|
* Accessible name for the tree.
|
|
35
35
|
*/
|
|
36
36
|
label: string;
|
|
37
|
+
/**
|
|
38
|
+
* What a step inward means: nothing, a rank, or a heading over what follows.
|
|
39
|
+
*
|
|
40
|
+
* All three answers are right, for different trees, which is why this is
|
|
41
|
+
* asked rather than decided. `peer` is a file explorer: every row is the same
|
|
42
|
+
* kind of thing, a name that may hold more names, and the indent alone says
|
|
43
|
+
* where one sits. `subordinate` is side navigation or a categorization: a
|
|
44
|
+
* section holds pages and a facet holds values, so a step inward is a change
|
|
45
|
+
* of kind and the rows say so. `heading` is a documentation sidebar, where
|
|
46
|
+
* the change is at the *parent*: "Getting started" is not a lesser page than
|
|
47
|
+
* the pages under it and not a page at all, it is the name of the list, so
|
|
48
|
+
* the branch takes the rail-heading treatment and its children stay at the
|
|
49
|
+
* size every other row is.
|
|
50
|
+
*
|
|
51
|
+
* `subordinate` and `heading` are not the same answer said twice. One keys on
|
|
52
|
+
* depth and quiets the child; the other keys on holding children and relabels
|
|
53
|
+
* the parent, so a top-level leaf beside a branch is untouched by the first
|
|
54
|
+
* and untouched by the second for opposite reasons.
|
|
55
|
+
*
|
|
56
|
+
* On the root rather than the item, because it is a fact about the tree. Set
|
|
57
|
+
* per row it would make a tree writable in which one branch ranks its
|
|
58
|
+
* children and the next does not, and it would have to be repeated on every
|
|
59
|
+
* row to say one thing.
|
|
60
|
+
*
|
|
61
|
+
* Here rather than on the styled tier, because it is not about paint: with
|
|
62
|
+
* every stylesheet deleted it is still true that this tree ranks its depths,
|
|
63
|
+
* that this one heads them, and that a file explorer does neither. The styled
|
|
64
|
+
* tier steps a subordinate row once down the type scale and sets a heading
|
|
65
|
+
* branch as a label; a headless consumer reads the attribute and the
|
|
66
|
+
* `--tree-level` each row carries, and draws either however they like.
|
|
67
|
+
*
|
|
68
|
+
* **Optional, with no default**, per the reflected-property rule: a value
|
|
69
|
+
* written here appears in the served markup of every tree anybody renders.
|
|
70
|
+
* The resting state is the absence of the attribute, which is `peer`.
|
|
71
|
+
*/
|
|
72
|
+
nesting?: 'heading' | 'peer' | 'subordinate';
|
|
37
73
|
private watcher;
|
|
38
74
|
/**
|
|
39
75
|
* Every item, in the order a reader moving down would meet them.
|
|
@@ -176,6 +176,9 @@ let HelixHeadlessTree = class HelixHeadlessTree extends MixinCollection(MixinCon
|
|
|
176
176
|
__decorate([
|
|
177
177
|
property()
|
|
178
178
|
], HelixHeadlessTree.prototype, "label", void 0);
|
|
179
|
+
__decorate([
|
|
180
|
+
property({ reflect: true })
|
|
181
|
+
], HelixHeadlessTree.prototype, "nesting", void 0);
|
|
179
182
|
HelixHeadlessTree = __decorate([
|
|
180
183
|
customElement('helix-headless-tree')
|
|
181
184
|
], HelixHeadlessTree);
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fusion.dev/helix-headless",
|
|
3
3
|
"description": "Headless component tier. Structure, accessibility, state, and form participation. No styling.",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.34.1",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Ross Sheppard <ross.sheppard@fusion.dev>",
|
|
7
7
|
"repository": {
|
|
@@ -46,14 +46,14 @@
|
|
|
46
46
|
},
|
|
47
47
|
"bugs": "https://github.com/project-fusion/fusion/issues",
|
|
48
48
|
"dependencies": {
|
|
49
|
-
"@fusion.dev/helix-core": "0.
|
|
50
|
-
"@fusion.dev/helix-icons": "0.
|
|
49
|
+
"@fusion.dev/helix-core": "0.34.1",
|
|
50
|
+
"@fusion.dev/helix-icons": "0.34.1",
|
|
51
51
|
"uqr": "^0.1.3"
|
|
52
52
|
},
|
|
53
53
|
"devDependencies": {
|
|
54
54
|
"@custom-elements-manifest/analyzer": "^0.11.0",
|
|
55
|
-
"@fusion.dev/helix-cem": "0.
|
|
56
|
-
"@fusion.dev/helix-testing": "0.
|
|
55
|
+
"@fusion.dev/helix-cem": "0.34.1",
|
|
56
|
+
"@fusion.dev/helix-testing": "0.34.1",
|
|
57
57
|
"@fusion.dev/scripts": "0.0.0-dev",
|
|
58
58
|
"@happy-dom/global-registrator": "^20.0.0",
|
|
59
59
|
"@lit-labs/ssr": "^4.1.0",
|
package/types/jsx.d.ts
CHANGED
|
@@ -16069,6 +16069,40 @@ export type HelixHeadlessTreeHelixSelectElementEvent =
|
|
|
16069
16069
|
export type HelixHeadlessTreeProps = {
|
|
16070
16070
|
/** Accessible name for the tree. */
|
|
16071
16071
|
label?: (HelixHeadlessTree["label"]) | undefined;
|
|
16072
|
+
/** What a step inward means: nothing, a rank, or a heading over what follows.
|
|
16073
|
+
|
|
16074
|
+
All three answers are right, for different trees, which is why this is
|
|
16075
|
+
asked rather than decided. `peer` is a file explorer: every row is the same
|
|
16076
|
+
kind of thing, a name that may hold more names, and the indent alone says
|
|
16077
|
+
where one sits. `subordinate` is side navigation or a categorization: a
|
|
16078
|
+
section holds pages and a facet holds values, so a step inward is a change
|
|
16079
|
+
of kind and the rows say so. `heading` is a documentation sidebar, where
|
|
16080
|
+
the change is at the *parent*: "Getting started" is not a lesser page than
|
|
16081
|
+
the pages under it and not a page at all, it is the name of the list, so
|
|
16082
|
+
the branch takes the rail-heading treatment and its children stay at the
|
|
16083
|
+
size every other row is.
|
|
16084
|
+
|
|
16085
|
+
`subordinate` and `heading` are not the same answer said twice. One keys on
|
|
16086
|
+
depth and quiets the child; the other keys on holding children and relabels
|
|
16087
|
+
the parent, so a top-level leaf beside a branch is untouched by the first
|
|
16088
|
+
and untouched by the second for opposite reasons.
|
|
16089
|
+
|
|
16090
|
+
On the root rather than the item, because it is a fact about the tree. Set
|
|
16091
|
+
per row it would make a tree writable in which one branch ranks its
|
|
16092
|
+
children and the next does not, and it would have to be repeated on every
|
|
16093
|
+
row to say one thing.
|
|
16094
|
+
|
|
16095
|
+
Here rather than on the styled tier, because it is not about paint: with
|
|
16096
|
+
every stylesheet deleted it is still true that this tree ranks its depths,
|
|
16097
|
+
that this one heads them, and that a file explorer does neither. The styled
|
|
16098
|
+
tier steps a subordinate row once down the type scale and sets a heading
|
|
16099
|
+
branch as a label; a headless consumer reads the attribute and the
|
|
16100
|
+
`--tree-level` each row carries, and draws either however they like.
|
|
16101
|
+
|
|
16102
|
+
**Optional, with no default**, per the reflected-property rule: a value
|
|
16103
|
+
written here appears in the served markup of every tree anybody renders.
|
|
16104
|
+
The resting state is the absence of the attribute, which is `peer`. */
|
|
16105
|
+
nesting?: (HelixHeadlessTree["nesting"]) | undefined;
|
|
16072
16106
|
/** What is said where there are none, and none are coming. */
|
|
16073
16107
|
"empty-text"?: (HelixHeadlessTree["emptyText"]) | undefined;
|
|
16074
16108
|
/** What is said where there are none, and none are coming. */
|
|
@@ -16114,6 +16148,40 @@ Ignored once `active` is written. */
|
|
|
16114
16148
|
export type HelixHeadlessTreeSolidJsProps = {
|
|
16115
16149
|
/** Accessible name for the tree. */
|
|
16116
16150
|
"prop:label"?: (HelixHeadlessTree["label"]) | undefined;
|
|
16151
|
+
/** What a step inward means: nothing, a rank, or a heading over what follows.
|
|
16152
|
+
|
|
16153
|
+
All three answers are right, for different trees, which is why this is
|
|
16154
|
+
asked rather than decided. `peer` is a file explorer: every row is the same
|
|
16155
|
+
kind of thing, a name that may hold more names, and the indent alone says
|
|
16156
|
+
where one sits. `subordinate` is side navigation or a categorization: a
|
|
16157
|
+
section holds pages and a facet holds values, so a step inward is a change
|
|
16158
|
+
of kind and the rows say so. `heading` is a documentation sidebar, where
|
|
16159
|
+
the change is at the *parent*: "Getting started" is not a lesser page than
|
|
16160
|
+
the pages under it and not a page at all, it is the name of the list, so
|
|
16161
|
+
the branch takes the rail-heading treatment and its children stay at the
|
|
16162
|
+
size every other row is.
|
|
16163
|
+
|
|
16164
|
+
`subordinate` and `heading` are not the same answer said twice. One keys on
|
|
16165
|
+
depth and quiets the child; the other keys on holding children and relabels
|
|
16166
|
+
the parent, so a top-level leaf beside a branch is untouched by the first
|
|
16167
|
+
and untouched by the second for opposite reasons.
|
|
16168
|
+
|
|
16169
|
+
On the root rather than the item, because it is a fact about the tree. Set
|
|
16170
|
+
per row it would make a tree writable in which one branch ranks its
|
|
16171
|
+
children and the next does not, and it would have to be repeated on every
|
|
16172
|
+
row to say one thing.
|
|
16173
|
+
|
|
16174
|
+
Here rather than on the styled tier, because it is not about paint: with
|
|
16175
|
+
every stylesheet deleted it is still true that this tree ranks its depths,
|
|
16176
|
+
that this one heads them, and that a file explorer does neither. The styled
|
|
16177
|
+
tier steps a subordinate row once down the type scale and sets a heading
|
|
16178
|
+
branch as a label; a headless consumer reads the attribute and the
|
|
16179
|
+
`--tree-level` each row carries, and draws either however they like.
|
|
16180
|
+
|
|
16181
|
+
**Optional, with no default**, per the reflected-property rule: a value
|
|
16182
|
+
written here appears in the served markup of every tree anybody renders.
|
|
16183
|
+
The resting state is the absence of the attribute, which is `peer`. */
|
|
16184
|
+
"prop:nesting"?: (HelixHeadlessTree["nesting"]) | undefined;
|
|
16117
16185
|
/** What is said where there are none, and none are coming. */
|
|
16118
16186
|
"attr:empty-text"?: (HelixHeadlessTree["emptyText"]) | undefined;
|
|
16119
16187
|
/** What is said where there are none, and none are coming. */
|
|
@@ -33486,6 +33554,39 @@ export type CustomElements = {
|
|
|
33486
33554
|
* Component attributes and properties that can be applied to the element or by using JavaScript.
|
|
33487
33555
|
*
|
|
33488
33556
|
* - `label`: Accessible name for the tree.
|
|
33557
|
+
* - `nesting`: What a step inward means: nothing, a rank, or a heading over what follows.
|
|
33558
|
+
*
|
|
33559
|
+
* All three answers are right, for different trees, which is why this is
|
|
33560
|
+
* asked rather than decided. `peer` is a file explorer: every row is the same
|
|
33561
|
+
* kind of thing, a name that may hold more names, and the indent alone says
|
|
33562
|
+
* where one sits. `subordinate` is side navigation or a categorization: a
|
|
33563
|
+
* section holds pages and a facet holds values, so a step inward is a change
|
|
33564
|
+
* of kind and the rows say so. `heading` is a documentation sidebar, where
|
|
33565
|
+
* the change is at the *parent*: "Getting started" is not a lesser page than
|
|
33566
|
+
* the pages under it and not a page at all, it is the name of the list, so
|
|
33567
|
+
* the branch takes the rail-heading treatment and its children stay at the
|
|
33568
|
+
* size every other row is.
|
|
33569
|
+
*
|
|
33570
|
+
* `subordinate` and `heading` are not the same answer said twice. One keys on
|
|
33571
|
+
* depth and quiets the child; the other keys on holding children and relabels
|
|
33572
|
+
* the parent, so a top-level leaf beside a branch is untouched by the first
|
|
33573
|
+
* and untouched by the second for opposite reasons.
|
|
33574
|
+
*
|
|
33575
|
+
* On the root rather than the item, because it is a fact about the tree. Set
|
|
33576
|
+
* per row it would make a tree writable in which one branch ranks its
|
|
33577
|
+
* children and the next does not, and it would have to be repeated on every
|
|
33578
|
+
* row to say one thing.
|
|
33579
|
+
*
|
|
33580
|
+
* Here rather than on the styled tier, because it is not about paint: with
|
|
33581
|
+
* every stylesheet deleted it is still true that this tree ranks its depths,
|
|
33582
|
+
* that this one heads them, and that a file explorer does neither. The styled
|
|
33583
|
+
* tier steps a subordinate row once down the type scale and sets a heading
|
|
33584
|
+
* branch as a label; a headless consumer reads the attribute and the
|
|
33585
|
+
* `--tree-level` each row carries, and draws either however they like.
|
|
33586
|
+
*
|
|
33587
|
+
* **Optional, with no default**, per the reflected-property rule: a value
|
|
33588
|
+
* written here appears in the served markup of every tree anybody renders.
|
|
33589
|
+
* The resting state is the absence of the attribute, which is `peer`.
|
|
33489
33590
|
* - `empty-text`/`emptyText`: What is said where there are none, and none are coming.
|
|
33490
33591
|
* - `loading`: Whether the rows are still on their way.
|
|
33491
33592
|
*
|
|
@@ -51128,6 +51229,39 @@ export type CustomElementsSolidJs = {
|
|
|
51128
51229
|
* Component attributes and properties that can be applied to the element or by using JavaScript.
|
|
51129
51230
|
*
|
|
51130
51231
|
* - `label`: Accessible name for the tree.
|
|
51232
|
+
* - `nesting`: What a step inward means: nothing, a rank, or a heading over what follows.
|
|
51233
|
+
*
|
|
51234
|
+
* All three answers are right, for different trees, which is why this is
|
|
51235
|
+
* asked rather than decided. `peer` is a file explorer: every row is the same
|
|
51236
|
+
* kind of thing, a name that may hold more names, and the indent alone says
|
|
51237
|
+
* where one sits. `subordinate` is side navigation or a categorization: a
|
|
51238
|
+
* section holds pages and a facet holds values, so a step inward is a change
|
|
51239
|
+
* of kind and the rows say so. `heading` is a documentation sidebar, where
|
|
51240
|
+
* the change is at the *parent*: "Getting started" is not a lesser page than
|
|
51241
|
+
* the pages under it and not a page at all, it is the name of the list, so
|
|
51242
|
+
* the branch takes the rail-heading treatment and its children stay at the
|
|
51243
|
+
* size every other row is.
|
|
51244
|
+
*
|
|
51245
|
+
* `subordinate` and `heading` are not the same answer said twice. One keys on
|
|
51246
|
+
* depth and quiets the child; the other keys on holding children and relabels
|
|
51247
|
+
* the parent, so a top-level leaf beside a branch is untouched by the first
|
|
51248
|
+
* and untouched by the second for opposite reasons.
|
|
51249
|
+
*
|
|
51250
|
+
* On the root rather than the item, because it is a fact about the tree. Set
|
|
51251
|
+
* per row it would make a tree writable in which one branch ranks its
|
|
51252
|
+
* children and the next does not, and it would have to be repeated on every
|
|
51253
|
+
* row to say one thing.
|
|
51254
|
+
*
|
|
51255
|
+
* Here rather than on the styled tier, because it is not about paint: with
|
|
51256
|
+
* every stylesheet deleted it is still true that this tree ranks its depths,
|
|
51257
|
+
* that this one heads them, and that a file explorer does neither. The styled
|
|
51258
|
+
* tier steps a subordinate row once down the type scale and sets a heading
|
|
51259
|
+
* branch as a label; a headless consumer reads the attribute and the
|
|
51260
|
+
* `--tree-level` each row carries, and draws either however they like.
|
|
51261
|
+
*
|
|
51262
|
+
* **Optional, with no default**, per the reflected-property rule: a value
|
|
51263
|
+
* written here appears in the served markup of every tree anybody renders.
|
|
51264
|
+
* The resting state is the absence of the attribute, which is `peer`.
|
|
51131
51265
|
* - `empty-text`/`emptyText`: What is said where there are none, and none are coming.
|
|
51132
51266
|
* - `loading`: Whether the rows are still on their way.
|
|
51133
51267
|
*
|
package/types/vue.d.ts
CHANGED
|
@@ -8257,6 +8257,40 @@ export type HelixHeadlessTreeHelixSelectElementEvent =
|
|
|
8257
8257
|
export type HelixHeadlessTreeVueProps = {
|
|
8258
8258
|
/** Accessible name for the tree. */
|
|
8259
8259
|
label?: (HelixHeadlessTree["label"]) | undefined;
|
|
8260
|
+
/** What a step inward means: nothing, a rank, or a heading over what follows.
|
|
8261
|
+
|
|
8262
|
+
All three answers are right, for different trees, which is why this is
|
|
8263
|
+
asked rather than decided. `peer` is a file explorer: every row is the same
|
|
8264
|
+
kind of thing, a name that may hold more names, and the indent alone says
|
|
8265
|
+
where one sits. `subordinate` is side navigation or a categorization: a
|
|
8266
|
+
section holds pages and a facet holds values, so a step inward is a change
|
|
8267
|
+
of kind and the rows say so. `heading` is a documentation sidebar, where
|
|
8268
|
+
the change is at the *parent*: "Getting started" is not a lesser page than
|
|
8269
|
+
the pages under it and not a page at all, it is the name of the list, so
|
|
8270
|
+
the branch takes the rail-heading treatment and its children stay at the
|
|
8271
|
+
size every other row is.
|
|
8272
|
+
|
|
8273
|
+
`subordinate` and `heading` are not the same answer said twice. One keys on
|
|
8274
|
+
depth and quiets the child; the other keys on holding children and relabels
|
|
8275
|
+
the parent, so a top-level leaf beside a branch is untouched by the first
|
|
8276
|
+
and untouched by the second for opposite reasons.
|
|
8277
|
+
|
|
8278
|
+
On the root rather than the item, because it is a fact about the tree. Set
|
|
8279
|
+
per row it would make a tree writable in which one branch ranks its
|
|
8280
|
+
children and the next does not, and it would have to be repeated on every
|
|
8281
|
+
row to say one thing.
|
|
8282
|
+
|
|
8283
|
+
Here rather than on the styled tier, because it is not about paint: with
|
|
8284
|
+
every stylesheet deleted it is still true that this tree ranks its depths,
|
|
8285
|
+
that this one heads them, and that a file explorer does neither. The styled
|
|
8286
|
+
tier steps a subordinate row once down the type scale and sets a heading
|
|
8287
|
+
branch as a label; a headless consumer reads the attribute and the
|
|
8288
|
+
`--tree-level` each row carries, and draws either however they like.
|
|
8289
|
+
|
|
8290
|
+
**Optional, with no default**, per the reflected-property rule: a value
|
|
8291
|
+
written here appears in the served markup of every tree anybody renders.
|
|
8292
|
+
The resting state is the absence of the attribute, which is `peer`. */
|
|
8293
|
+
nesting?: (HelixHeadlessTree["nesting"]) | undefined;
|
|
8260
8294
|
/** What is said where there are none, and none are coming. */
|
|
8261
8295
|
"empty-text"?: (HelixHeadlessTree["emptyText"]) | undefined;
|
|
8262
8296
|
/** What is said where there are none, and none are coming. */
|