@fusion.dev/helix 0.171.0 → 0.173.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 +2531 -95
- package/dist/chat/composer/chat-composer.css.js +1 -1
- package/dist/copy-button/root/copy-button-root.css.js +1 -1
- package/dist/element-events.generated.js +9 -1
- package/dist/graph/root/graph-root.css.js +2 -1
- package/dist/orb/root/orb-root.css.js +1 -1
- package/dist/orb/root/orb-root.d.ts +24 -5
- package/dist/orb/root/orb-root.js +24 -6
- package/dist/sandbox/index.d.ts +1 -0
- package/dist/sandbox/index.js +1 -0
- package/dist/sandbox/preview/sandbox-preview.d.ts +39 -2
- package/dist/sandbox/preview/sandbox-preview.js +37 -5
- package/dist/sandbox/root/sandbox-root.css.js +1 -1
- package/dist/sandbox/root/sandbox-root.d.ts +44 -4
- package/dist/sandbox/root/sandbox-root.js +92 -17
- package/dist/sandbox/source/editing.d.ts +111 -0
- package/dist/sandbox/source/editing.js +185 -0
- package/dist/sandbox/source/sandbox-source.css.js +2 -1
- package/dist/sandbox/source/sandbox-source.d.ts +131 -6
- package/dist/sandbox/source/sandbox-source.js +301 -17
- package/dist/timeline/root/timeline-root.css.js +1 -1
- package/dist/virtual-list/reorder/index.d.ts +1 -0
- package/dist/virtual-list/reorder/index.js +5 -0
- package/dist/virtual-list/reorder/virtual-list-reorder.css.d.ts +1 -0
- package/dist/virtual-list/reorder/virtual-list-reorder.css.js +12 -0
- package/dist/virtual-list/root/virtual-list-root.d.ts +9 -0
- package/lint.json +1 -1
- package/package.json +6 -6
- package/types/jsx.d.ts +996 -38
- package/types/vue.d.ts +236 -6
- package/types/words.d.ts +27 -0
package/custom-elements.json
CHANGED
|
@@ -14536,6 +14536,21 @@
|
|
|
14536
14536
|
"module": "src/button-group/root/button-group-root.ts"
|
|
14537
14537
|
}
|
|
14538
14538
|
},
|
|
14539
|
+
{
|
|
14540
|
+
"kind": "field",
|
|
14541
|
+
"name": "disabled",
|
|
14542
|
+
"type": {
|
|
14543
|
+
"text": "boolean"
|
|
14544
|
+
},
|
|
14545
|
+
"default": "false",
|
|
14546
|
+
"description": "Disables every button in the group, and says so on the group with\n`aria-disabled`. Reflected, so a stylesheet can select on it.",
|
|
14547
|
+
"attribute": "disabled",
|
|
14548
|
+
"reflects": true,
|
|
14549
|
+
"inheritedFrom": {
|
|
14550
|
+
"name": "HelixHeadlessButtonGroup",
|
|
14551
|
+
"module": "src/button-group/root/button-group-root.ts"
|
|
14552
|
+
}
|
|
14553
|
+
},
|
|
14539
14554
|
{
|
|
14540
14555
|
"kind": "field",
|
|
14541
14556
|
"name": "disallowEmptySelection",
|
|
@@ -14606,6 +14621,18 @@
|
|
|
14606
14621
|
"module": "src/button-group/root/button-group-root.ts"
|
|
14607
14622
|
}
|
|
14608
14623
|
},
|
|
14624
|
+
{
|
|
14625
|
+
"kind": "field",
|
|
14626
|
+
"name": "values",
|
|
14627
|
+
"type": {
|
|
14628
|
+
"text": "string[]"
|
|
14629
|
+
},
|
|
14630
|
+
"description": "The pressed values as a list, in a selection mode, and an empty list\notherwise. Written, it presses exactly those buttons.",
|
|
14631
|
+
"inheritedFrom": {
|
|
14632
|
+
"name": "HelixHeadlessButtonGroup",
|
|
14633
|
+
"module": "src/button-group/root/button-group-root.ts"
|
|
14634
|
+
}
|
|
14635
|
+
},
|
|
14609
14636
|
{
|
|
14610
14637
|
"kind": "field",
|
|
14611
14638
|
"name": "buttons",
|
|
@@ -14695,6 +14722,47 @@
|
|
|
14695
14722
|
"module": "src/button-group/root/button-group-root.ts"
|
|
14696
14723
|
}
|
|
14697
14724
|
},
|
|
14725
|
+
{
|
|
14726
|
+
"kind": "field",
|
|
14727
|
+
"name": "members",
|
|
14728
|
+
"type": {
|
|
14729
|
+
"text": "DisableableItem[]"
|
|
14730
|
+
},
|
|
14731
|
+
"privacy": "private",
|
|
14732
|
+
"description": "The children that can be disabled: Helix buttons and native ones alike. Empty on a server.",
|
|
14733
|
+
"readonly": true,
|
|
14734
|
+
"inheritedFrom": {
|
|
14735
|
+
"name": "HelixHeadlessButtonGroup",
|
|
14736
|
+
"module": "src/button-group/root/button-group-root.ts"
|
|
14737
|
+
}
|
|
14738
|
+
},
|
|
14739
|
+
{
|
|
14740
|
+
"kind": "field",
|
|
14741
|
+
"name": "held",
|
|
14742
|
+
"privacy": "private",
|
|
14743
|
+
"readonly": true,
|
|
14744
|
+
"default": "new Set<DisableableItem>()",
|
|
14745
|
+
"description": "The members this group has disabled, so one that leaves is given back its own answer.",
|
|
14746
|
+
"inheritedFrom": {
|
|
14747
|
+
"name": "HelixHeadlessButtonGroup",
|
|
14748
|
+
"module": "src/button-group/root/button-group-root.ts"
|
|
14749
|
+
}
|
|
14750
|
+
},
|
|
14751
|
+
{
|
|
14752
|
+
"kind": "method",
|
|
14753
|
+
"name": "cascade",
|
|
14754
|
+
"privacy": "private",
|
|
14755
|
+
"return": {
|
|
14756
|
+
"type": {
|
|
14757
|
+
"text": "void"
|
|
14758
|
+
}
|
|
14759
|
+
},
|
|
14760
|
+
"description": "Passes `disabled` down to the members, and gives a member that left\nwhat it said for itself.\n\nA member already disabled is not written to again: the watcher hears\nevery write to a native button's `disabled`, changed or not, and would\nanswer it with this.",
|
|
14761
|
+
"inheritedFrom": {
|
|
14762
|
+
"name": "HelixHeadlessButtonGroup",
|
|
14763
|
+
"module": "src/button-group/root/button-group-root.ts"
|
|
14764
|
+
}
|
|
14765
|
+
},
|
|
14698
14766
|
{
|
|
14699
14767
|
"kind": "method",
|
|
14700
14768
|
"name": "sync",
|
|
@@ -15160,6 +15228,19 @@
|
|
|
15160
15228
|
"description": "Whether the buttons are one bar or a spaced row.\n\nJoined by default: one control made of parts, sharing borders, reading as a\nsegmented bar.\n\n`spaced` is the same set with air between them, for a row of related but\nseparate actions. The semantics and the joining are separate questions:\n`role=\"group\"` and a shared name are what make a set of buttons a set, and\n`helix-flex` gives the spacing without the group.",
|
|
15161
15229
|
"fieldName": "variant"
|
|
15162
15230
|
},
|
|
15231
|
+
{
|
|
15232
|
+
"name": "disabled",
|
|
15233
|
+
"type": {
|
|
15234
|
+
"text": "boolean"
|
|
15235
|
+
},
|
|
15236
|
+
"default": "false",
|
|
15237
|
+
"description": "Disables every button in the group, and says so on the group with\n`aria-disabled`. Reflected, so a stylesheet can select on it.",
|
|
15238
|
+
"fieldName": "disabled",
|
|
15239
|
+
"inheritedFrom": {
|
|
15240
|
+
"name": "HelixHeadlessButtonGroup",
|
|
15241
|
+
"module": "src/button-group/root/button-group-root.ts"
|
|
15242
|
+
}
|
|
15243
|
+
},
|
|
15163
15244
|
{
|
|
15164
15245
|
"name": "disallow-empty-selection",
|
|
15165
15246
|
"type": {
|
|
@@ -15247,6 +15328,10 @@
|
|
|
15247
15328
|
"description": "Buttons joined into one control, sharing their edges.",
|
|
15248
15329
|
"slug": "preview"
|
|
15249
15330
|
},
|
|
15331
|
+
{
|
|
15332
|
+
"description": "A group switched off as a whole with `disabled`, which disables every button in it.",
|
|
15333
|
+
"slug": "disabled"
|
|
15334
|
+
},
|
|
15250
15335
|
{
|
|
15251
15336
|
"description": "Text styles that stay pressed, any number at once, set with `selection-mode`.",
|
|
15252
15337
|
"slug": "selection"
|
|
@@ -21409,6 +21494,21 @@
|
|
|
21409
21494
|
"module": "src/canvas/root/canvas-root.ts"
|
|
21410
21495
|
}
|
|
21411
21496
|
},
|
|
21497
|
+
{
|
|
21498
|
+
"kind": "field",
|
|
21499
|
+
"name": "loading",
|
|
21500
|
+
"type": {
|
|
21501
|
+
"text": "boolean"
|
|
21502
|
+
},
|
|
21503
|
+
"default": "false",
|
|
21504
|
+
"description": "Marks the board as busy while its document arrives: the board is\n`aria-busy`, and the `loading` slot is shown.",
|
|
21505
|
+
"attribute": "loading",
|
|
21506
|
+
"reflects": true,
|
|
21507
|
+
"inheritedFrom": {
|
|
21508
|
+
"name": "HelixHeadlessCanvas",
|
|
21509
|
+
"module": "src/canvas/root/canvas-root.ts"
|
|
21510
|
+
}
|
|
21511
|
+
},
|
|
21412
21512
|
{
|
|
21413
21513
|
"kind": "field",
|
|
21414
21514
|
"name": "movedLabel",
|
|
@@ -25197,6 +25297,19 @@
|
|
|
25197
25297
|
"module": "src/canvas/root/canvas-root.ts"
|
|
25198
25298
|
}
|
|
25199
25299
|
},
|
|
25300
|
+
{
|
|
25301
|
+
"name": "loading",
|
|
25302
|
+
"type": {
|
|
25303
|
+
"text": "boolean"
|
|
25304
|
+
},
|
|
25305
|
+
"default": "false",
|
|
25306
|
+
"description": "Marks the board as busy while its document arrives: the board is\n`aria-busy`, and the `loading` slot is shown.",
|
|
25307
|
+
"fieldName": "loading",
|
|
25308
|
+
"inheritedFrom": {
|
|
25309
|
+
"name": "HelixHeadlessCanvas",
|
|
25310
|
+
"module": "src/canvas/root/canvas-root.ts"
|
|
25311
|
+
}
|
|
25312
|
+
},
|
|
25200
25313
|
{
|
|
25201
25314
|
"name": "moved-label",
|
|
25202
25315
|
"type": {
|
|
@@ -25565,6 +25678,14 @@
|
|
|
25565
25678
|
"module": "src/canvas/root/canvas-root.ts"
|
|
25566
25679
|
}
|
|
25567
25680
|
},
|
|
25681
|
+
{
|
|
25682
|
+
"description": "Content shown while `loading` is set, such as a progress bar while the document arrives.",
|
|
25683
|
+
"name": "loading",
|
|
25684
|
+
"inheritedFrom": {
|
|
25685
|
+
"name": "HelixHeadlessCanvas",
|
|
25686
|
+
"module": "src/canvas/root/canvas-root.ts"
|
|
25687
|
+
}
|
|
25688
|
+
},
|
|
25568
25689
|
{
|
|
25569
25690
|
"description": "Replaces the glyph inside the pan down button.",
|
|
25570
25691
|
"name": "pan-down-icon",
|
|
@@ -26071,6 +26192,14 @@
|
|
|
26071
26192
|
"module": "src/canvas/root/canvas-root.ts"
|
|
26072
26193
|
}
|
|
26073
26194
|
},
|
|
26195
|
+
{
|
|
26196
|
+
"description": "While `loading` is set.",
|
|
26197
|
+
"name": "loading",
|
|
26198
|
+
"inheritedFrom": {
|
|
26199
|
+
"name": "HelixHeadlessCanvas",
|
|
26200
|
+
"module": "src/canvas/root/canvas-root.ts"
|
|
26201
|
+
}
|
|
26202
|
+
},
|
|
26074
26203
|
{
|
|
26075
26204
|
"description": "While a press on the board, its cards or its connections is under way.",
|
|
26076
26205
|
"name": "pressing",
|
|
@@ -29320,6 +29449,14 @@
|
|
|
29320
29449
|
"module": "src/chat/composer/chat-composer.ts"
|
|
29321
29450
|
}
|
|
29322
29451
|
},
|
|
29452
|
+
{
|
|
29453
|
+
"description": "The `feedback` message, under the field while it is set.",
|
|
29454
|
+
"name": "feedback",
|
|
29455
|
+
"inheritedFrom": {
|
|
29456
|
+
"name": "HelixHeadlessChatComposer",
|
|
29457
|
+
"module": "src/chat/composer/chat-composer.ts"
|
|
29458
|
+
}
|
|
29459
|
+
},
|
|
29323
29460
|
{
|
|
29324
29461
|
"description": "The icon inside the send button.",
|
|
29325
29462
|
"name": "mark",
|
|
@@ -29384,6 +29521,20 @@
|
|
|
29384
29521
|
"module": "src/chat/composer/chat-composer.ts"
|
|
29385
29522
|
}
|
|
29386
29523
|
},
|
|
29524
|
+
{
|
|
29525
|
+
"kind": "field",
|
|
29526
|
+
"name": "feedback",
|
|
29527
|
+
"type": {
|
|
29528
|
+
"text": "string"
|
|
29529
|
+
},
|
|
29530
|
+
"default": "''",
|
|
29531
|
+
"description": "A message about the draft, shown under the field. While set, the composer\nis invalid, does not send, and does not submit, as a field's `feedback`\ndoes, and the message is announced as it appears.",
|
|
29532
|
+
"attribute": "feedback",
|
|
29533
|
+
"inheritedFrom": {
|
|
29534
|
+
"name": "HelixHeadlessChatComposer",
|
|
29535
|
+
"module": "src/chat/composer/chat-composer.ts"
|
|
29536
|
+
}
|
|
29537
|
+
},
|
|
29387
29538
|
{
|
|
29388
29539
|
"kind": "field",
|
|
29389
29540
|
"name": "label",
|
|
@@ -29556,6 +29707,20 @@
|
|
|
29556
29707
|
"module": "src/chat/composer/chat-composer.ts"
|
|
29557
29708
|
}
|
|
29558
29709
|
},
|
|
29710
|
+
{
|
|
29711
|
+
"kind": "field",
|
|
29712
|
+
"name": "edited",
|
|
29713
|
+
"type": {
|
|
29714
|
+
"text": "boolean"
|
|
29715
|
+
},
|
|
29716
|
+
"privacy": "private",
|
|
29717
|
+
"default": "false",
|
|
29718
|
+
"description": "Whether the reader has typed in the field since it last held a fresh\ndraft: since it rendered, since a send cleared it, or since a reset.\n\n**A send clears the field, and the field still sends `change` as it is\nleft**, because the platform compares the text with what it held when it\nwas focused. Measured in Chromium before this: a required composer sent\n\"hi\", cleared, and on Tab showed itself invalid over an empty draft\nnobody had written.",
|
|
29719
|
+
"inheritedFrom": {
|
|
29720
|
+
"name": "HelixHeadlessChatComposer",
|
|
29721
|
+
"module": "src/chat/composer/chat-composer.ts"
|
|
29722
|
+
}
|
|
29723
|
+
},
|
|
29559
29724
|
{
|
|
29560
29725
|
"kind": "field",
|
|
29561
29726
|
"name": "shownInvalid",
|
|
@@ -29677,6 +29842,17 @@
|
|
|
29677
29842
|
"module": "src/chat/composer/chat-composer.ts"
|
|
29678
29843
|
}
|
|
29679
29844
|
},
|
|
29845
|
+
{
|
|
29846
|
+
"kind": "field",
|
|
29847
|
+
"name": "handleChange",
|
|
29848
|
+
"privacy": "private",
|
|
29849
|
+
"readonly": true,
|
|
29850
|
+
"description": "The field's `change`, which counts only after the reader typed in it.",
|
|
29851
|
+
"inheritedFrom": {
|
|
29852
|
+
"name": "HelixHeadlessChatComposer",
|
|
29853
|
+
"module": "src/chat/composer/chat-composer.ts"
|
|
29854
|
+
}
|
|
29855
|
+
},
|
|
29680
29856
|
{
|
|
29681
29857
|
"kind": "method",
|
|
29682
29858
|
"name": "formStateRestoreCallback",
|
|
@@ -30597,6 +30773,19 @@
|
|
|
30597
30773
|
"tagName": "helix-chat-composer",
|
|
30598
30774
|
"customElement": true,
|
|
30599
30775
|
"attributes": [
|
|
30776
|
+
{
|
|
30777
|
+
"name": "feedback",
|
|
30778
|
+
"type": {
|
|
30779
|
+
"text": "string"
|
|
30780
|
+
},
|
|
30781
|
+
"default": "''",
|
|
30782
|
+
"description": "A message about the draft, shown under the field. While set, the composer\nis invalid, does not send, and does not submit, as a field's `feedback`\ndoes, and the message is announced as it appears.",
|
|
30783
|
+
"fieldName": "feedback",
|
|
30784
|
+
"inheritedFrom": {
|
|
30785
|
+
"name": "HelixHeadlessChatComposer",
|
|
30786
|
+
"module": "src/chat/composer/chat-composer.ts"
|
|
30787
|
+
}
|
|
30788
|
+
},
|
|
30600
30789
|
{
|
|
30601
30790
|
"name": "label",
|
|
30602
30791
|
"type": {
|
|
@@ -30792,7 +30981,7 @@
|
|
|
30792
30981
|
],
|
|
30793
30982
|
"cssStates": [
|
|
30794
30983
|
{
|
|
30795
|
-
"description": "The draft fails `required`, `minlength`, `maxlength`, or a custom error, and the reader has tried to send or submit it, or edited the field and left it.",
|
|
30984
|
+
"description": "The draft fails `required`, `minlength`, `maxlength`, or a custom error, and the reader has tried to send or submit it, or edited the field and left it. Or `feedback` is set.",
|
|
30796
30985
|
"name": "invalid",
|
|
30797
30986
|
"inheritedFrom": {
|
|
30798
30987
|
"name": "HelixHeadlessChatComposer",
|
|
@@ -33544,6 +33733,56 @@
|
|
|
33544
33733
|
"module": "src/chat/root/chat-root.ts"
|
|
33545
33734
|
}
|
|
33546
33735
|
},
|
|
33736
|
+
{
|
|
33737
|
+
"kind": "field",
|
|
33738
|
+
"name": "held",
|
|
33739
|
+
"type": {
|
|
33740
|
+
"text": "{ at: number; id: unknown } | undefined"
|
|
33741
|
+
},
|
|
33742
|
+
"privacy": "private",
|
|
33743
|
+
"description": "The turn focus is in, by its place and its identity, once a reader is in one.",
|
|
33744
|
+
"inheritedFrom": {
|
|
33745
|
+
"name": "HelixHeadlessChat",
|
|
33746
|
+
"module": "src/chat/root/chat-root.ts"
|
|
33747
|
+
}
|
|
33748
|
+
},
|
|
33749
|
+
{
|
|
33750
|
+
"kind": "field",
|
|
33751
|
+
"name": "handleFocusIn",
|
|
33752
|
+
"privacy": "private",
|
|
33753
|
+
"readonly": true,
|
|
33754
|
+
"description": "Notes the turn focus went into, or that it went somewhere else.",
|
|
33755
|
+
"inheritedFrom": {
|
|
33756
|
+
"name": "HelixHeadlessChat",
|
|
33757
|
+
"module": "src/chat/root/chat-root.ts"
|
|
33758
|
+
}
|
|
33759
|
+
},
|
|
33760
|
+
{
|
|
33761
|
+
"kind": "field",
|
|
33762
|
+
"name": "handleFocusOut",
|
|
33763
|
+
"privacy": "private",
|
|
33764
|
+
"readonly": true,
|
|
33765
|
+
"description": "Forgets the turn once focus moves to something outside the transcript.\nA move to nothing is kept, since removing the turn that held focus is\none.",
|
|
33766
|
+
"inheritedFrom": {
|
|
33767
|
+
"name": "HelixHeadlessChat",
|
|
33768
|
+
"module": "src/chat/root/chat-root.ts"
|
|
33769
|
+
}
|
|
33770
|
+
},
|
|
33771
|
+
{
|
|
33772
|
+
"kind": "method",
|
|
33773
|
+
"name": "followRemoved",
|
|
33774
|
+
"privacy": "private",
|
|
33775
|
+
"return": {
|
|
33776
|
+
"type": {
|
|
33777
|
+
"text": "void"
|
|
33778
|
+
}
|
|
33779
|
+
},
|
|
33780
|
+
"description": "Moves focus to a neighbor where removing the turn that held it dropped\nfocus to the body: the turn that took its place, or the one before it\nwhere it was the last.\n\n**Focus went to the body**, and Page Down did nothing until the reader\ntabbed back into the transcript. List and Virtual List move focus to a\nneighbor the same way, as React Aria's GridList does. Focus anywhere but\nthe body is where you put it, and is left there.",
|
|
33781
|
+
"inheritedFrom": {
|
|
33782
|
+
"name": "HelixHeadlessChat",
|
|
33783
|
+
"module": "src/chat/root/chat-root.ts"
|
|
33784
|
+
}
|
|
33785
|
+
},
|
|
33547
33786
|
{
|
|
33548
33787
|
"kind": "method",
|
|
33549
33788
|
"name": "tellTurns",
|
|
@@ -43194,6 +43433,31 @@
|
|
|
43194
43433
|
"module": "src/color-input/root/color-input-root.ts"
|
|
43195
43434
|
}
|
|
43196
43435
|
},
|
|
43436
|
+
{
|
|
43437
|
+
"kind": "field",
|
|
43438
|
+
"name": "pressedOpen",
|
|
43439
|
+
"type": {
|
|
43440
|
+
"text": "boolean"
|
|
43441
|
+
},
|
|
43442
|
+
"privacy": "private",
|
|
43443
|
+
"default": "false",
|
|
43444
|
+
"description": "Whether the trigger's press opened the panel that is open now.",
|
|
43445
|
+
"inheritedFrom": {
|
|
43446
|
+
"name": "HelixHeadlessColorInput",
|
|
43447
|
+
"module": "src/color-input/root/color-input-root.ts"
|
|
43448
|
+
}
|
|
43449
|
+
},
|
|
43450
|
+
{
|
|
43451
|
+
"kind": "field",
|
|
43452
|
+
"name": "handlePress",
|
|
43453
|
+
"privacy": "private",
|
|
43454
|
+
"readonly": true,
|
|
43455
|
+
"description": "The trigger's press, which notes that it opened the panel, so Escape hands\nfocus back to the trigger.",
|
|
43456
|
+
"inheritedFrom": {
|
|
43457
|
+
"name": "HelixHeadlessColorInput",
|
|
43458
|
+
"module": "src/color-input/root/color-input-root.ts"
|
|
43459
|
+
}
|
|
43460
|
+
},
|
|
43197
43461
|
{
|
|
43198
43462
|
"kind": "method",
|
|
43199
43463
|
"name": "renderPicker",
|
|
@@ -45249,7 +45513,7 @@
|
|
|
45249
45513
|
"text": "TemplateResult | typeof nothing"
|
|
45250
45514
|
}
|
|
45251
45515
|
},
|
|
45252
|
-
"description": "The `feedback` line, or nothing while there is none.",
|
|
45516
|
+
"description": "The `feedback` line, or nothing while there is none.\n\n`role=\"alert\"`, as a field's feedback line has, so the message is\nannounced when it appears and the label and hint are not read with it.",
|
|
45253
45517
|
"inheritedFrom": {
|
|
45254
45518
|
"name": "MixinPickerFeedback",
|
|
45255
45519
|
"module": "src/mixins/mixin-picker-feedback/mixin-picker-feedback.ts"
|
|
@@ -54606,6 +54870,48 @@
|
|
|
54606
54870
|
"module": "src/button/root/button-root.ts"
|
|
54607
54871
|
}
|
|
54608
54872
|
},
|
|
54873
|
+
{
|
|
54874
|
+
"kind": "field",
|
|
54875
|
+
"name": "showLabel",
|
|
54876
|
+
"type": {
|
|
54877
|
+
"text": "boolean"
|
|
54878
|
+
},
|
|
54879
|
+
"default": "false",
|
|
54880
|
+
"description": "Draws the name as words beside the icon, and the result in their place\nafter a press. The button stays as wide as the longest of them.",
|
|
54881
|
+
"attribute": "show-label",
|
|
54882
|
+
"reflects": true,
|
|
54883
|
+
"inheritedFrom": {
|
|
54884
|
+
"name": "HelixHeadlessCopyButton",
|
|
54885
|
+
"module": "src/copy-button/root/copy-button-root.ts"
|
|
54886
|
+
}
|
|
54887
|
+
},
|
|
54888
|
+
{
|
|
54889
|
+
"kind": "field",
|
|
54890
|
+
"name": "tooltip",
|
|
54891
|
+
"type": {
|
|
54892
|
+
"text": "'copy' | 'full' | 'none' | undefined"
|
|
54893
|
+
},
|
|
54894
|
+
"description": "When the tooltip shows: `full` on hover and focus and after a press,\n`copy` only after a press, to show the result, and `none` never, for a\nbutton whose result shows another way, such as under `show-label`.\n\nUnset is `full`, and the attribute stays absent until you write it.",
|
|
54895
|
+
"attribute": "tooltip",
|
|
54896
|
+
"inheritedFrom": {
|
|
54897
|
+
"name": "HelixHeadlessCopyButton",
|
|
54898
|
+
"module": "src/copy-button/root/copy-button-root.ts"
|
|
54899
|
+
}
|
|
54900
|
+
},
|
|
54901
|
+
{
|
|
54902
|
+
"kind": "field",
|
|
54903
|
+
"name": "tooltipPlacement",
|
|
54904
|
+
"type": {
|
|
54905
|
+
"text": "'bottom' | 'bottom-end' | 'bottom-start' | 'left' | 'left-end' | 'left-start' | 'right' | 'right-end' | 'right-start' | 'top' | 'top-end' | 'top-start'"
|
|
54906
|
+
},
|
|
54907
|
+
"default": "'top'",
|
|
54908
|
+
"description": "The side the tooltip prefers. It moves to another side where this one\ndoes not fit.",
|
|
54909
|
+
"attribute": "tooltip-placement",
|
|
54910
|
+
"inheritedFrom": {
|
|
54911
|
+
"name": "HelixHeadlessCopyButton",
|
|
54912
|
+
"module": "src/copy-button/root/copy-button-root.ts"
|
|
54913
|
+
}
|
|
54914
|
+
},
|
|
54609
54915
|
{
|
|
54610
54916
|
"kind": "field",
|
|
54611
54917
|
"name": "value",
|
|
@@ -54634,6 +54940,20 @@
|
|
|
54634
54940
|
"module": "src/copy-button/root/copy-button-root.ts"
|
|
54635
54941
|
}
|
|
54636
54942
|
},
|
|
54943
|
+
{
|
|
54944
|
+
"kind": "field",
|
|
54945
|
+
"name": "showedResult",
|
|
54946
|
+
"type": {
|
|
54947
|
+
"text": "boolean"
|
|
54948
|
+
},
|
|
54949
|
+
"privacy": "private",
|
|
54950
|
+
"default": "false",
|
|
54951
|
+
"description": "Whether the last render showed a result, so `tooltip=\"copy\"` opens and closes on the change.",
|
|
54952
|
+
"inheritedFrom": {
|
|
54953
|
+
"name": "HelixHeadlessCopyButton",
|
|
54954
|
+
"module": "src/copy-button/root/copy-button-root.ts"
|
|
54955
|
+
}
|
|
54956
|
+
},
|
|
54637
54957
|
{
|
|
54638
54958
|
"kind": "field",
|
|
54639
54959
|
"name": "clipboard",
|
|
@@ -54765,6 +55085,21 @@
|
|
|
54765
55085
|
"module": "src/copy-button/root/copy-button-root.ts"
|
|
54766
55086
|
}
|
|
54767
55087
|
},
|
|
55088
|
+
{
|
|
55089
|
+
"kind": "method",
|
|
55090
|
+
"name": "renderText",
|
|
55091
|
+
"privacy": "protected",
|
|
55092
|
+
"return": {
|
|
55093
|
+
"type": {
|
|
55094
|
+
"text": "TemplateResult | typeof nothing"
|
|
55095
|
+
}
|
|
55096
|
+
},
|
|
55097
|
+
"description": "The words beside the icon, under `show-label`, behind a seam of its own.\n\nAll three are drawn and only the current one shows, so the button is as\nwide as the longest of them and a press does not resize it. Hidden from a\nscreen reader, which hears the same words as the button's name.",
|
|
55098
|
+
"inheritedFrom": {
|
|
55099
|
+
"name": "HelixHeadlessCopyButton",
|
|
55100
|
+
"module": "src/copy-button/root/copy-button-root.ts"
|
|
55101
|
+
}
|
|
55102
|
+
},
|
|
54768
55103
|
{
|
|
54769
55104
|
"kind": "method",
|
|
54770
55105
|
"name": "renderTooltip",
|
|
@@ -55951,6 +56286,10 @@
|
|
|
55951
56286
|
{
|
|
55952
56287
|
"description": "The `helix-copy` event, sent after the text is on the clipboard.",
|
|
55953
56288
|
"slug": "events"
|
|
56289
|
+
},
|
|
56290
|
+
{
|
|
56291
|
+
"description": "The name as words beside the icon with `show-label`, and a tooltip that shows only the result of a copy.",
|
|
56292
|
+
"slug": "label"
|
|
55954
56293
|
}
|
|
55955
56294
|
],
|
|
55956
56295
|
"source": "helix/styled/src/copy-button"
|
|
@@ -56047,6 +56386,44 @@
|
|
|
56047
56386
|
"module": "src/button/root/button-root.ts"
|
|
56048
56387
|
}
|
|
56049
56388
|
},
|
|
56389
|
+
{
|
|
56390
|
+
"name": "show-label",
|
|
56391
|
+
"type": {
|
|
56392
|
+
"text": "boolean"
|
|
56393
|
+
},
|
|
56394
|
+
"default": "false",
|
|
56395
|
+
"description": "Draws the name as words beside the icon, and the result in their place\nafter a press. The button stays as wide as the longest of them.",
|
|
56396
|
+
"fieldName": "showLabel",
|
|
56397
|
+
"inheritedFrom": {
|
|
56398
|
+
"name": "HelixHeadlessCopyButton",
|
|
56399
|
+
"module": "src/copy-button/root/copy-button-root.ts"
|
|
56400
|
+
}
|
|
56401
|
+
},
|
|
56402
|
+
{
|
|
56403
|
+
"name": "tooltip",
|
|
56404
|
+
"type": {
|
|
56405
|
+
"text": "'copy' | 'full' | 'none' | undefined"
|
|
56406
|
+
},
|
|
56407
|
+
"description": "When the tooltip shows: `full` on hover and focus and after a press,\n`copy` only after a press, to show the result, and `none` never, for a\nbutton whose result shows another way, such as under `show-label`.\n\nUnset is `full`, and the attribute stays absent until you write it.",
|
|
56408
|
+
"fieldName": "tooltip",
|
|
56409
|
+
"inheritedFrom": {
|
|
56410
|
+
"name": "HelixHeadlessCopyButton",
|
|
56411
|
+
"module": "src/copy-button/root/copy-button-root.ts"
|
|
56412
|
+
}
|
|
56413
|
+
},
|
|
56414
|
+
{
|
|
56415
|
+
"name": "tooltip-placement",
|
|
56416
|
+
"type": {
|
|
56417
|
+
"text": "'bottom' | 'bottom-end' | 'bottom-start' | 'left' | 'left-end' | 'left-start' | 'right' | 'right-end' | 'right-start' | 'top' | 'top-end' | 'top-start'"
|
|
56418
|
+
},
|
|
56419
|
+
"default": "'top'",
|
|
56420
|
+
"description": "The side the tooltip prefers. It moves to another side where this one\ndoes not fit.",
|
|
56421
|
+
"fieldName": "tooltipPlacement",
|
|
56422
|
+
"inheritedFrom": {
|
|
56423
|
+
"name": "HelixHeadlessCopyButton",
|
|
56424
|
+
"module": "src/copy-button/root/copy-button-root.ts"
|
|
56425
|
+
}
|
|
56426
|
+
},
|
|
56050
56427
|
{
|
|
56051
56428
|
"name": "value",
|
|
56052
56429
|
"type": {
|
|
@@ -56183,6 +56560,14 @@
|
|
|
56183
56560
|
"module": "src/button/root/button-root.ts"
|
|
56184
56561
|
}
|
|
56185
56562
|
},
|
|
56563
|
+
{
|
|
56564
|
+
"description": "The words beside the icon, under `show-label`. It holds all three, `label`, `copied-label` and `error-label`, with all but the current one hidden.",
|
|
56565
|
+
"name": "text",
|
|
56566
|
+
"inheritedFrom": {
|
|
56567
|
+
"name": "HelixHeadlessButton",
|
|
56568
|
+
"module": "src/button/root/button-root.ts"
|
|
56569
|
+
}
|
|
56570
|
+
},
|
|
56186
56571
|
{
|
|
56187
56572
|
"description": "The tooltip bubble, forwarded from the tooltip inside the button.",
|
|
56188
56573
|
"name": "tooltip",
|
|
@@ -58073,7 +58458,7 @@
|
|
|
58073
58458
|
"text": "boolean"
|
|
58074
58459
|
},
|
|
58075
58460
|
"default": "false",
|
|
58076
|
-
"description": "Draws only the rows in view, with empty space in place of the rest.\n\n**Not a `mode`.** `mode` says where the rows come from and who filtered\nthem; this says how many of the ones we hold get drawn. They are\nindependent: a consumer fetching five thousand rows a chunk at a time wants\n`mode=\"server\"` and this at once, and folding this into `mode` would be an\nAPI that forbids that combination for no reason.\n\n**Composes with `paginated` rather than excluding it.** A window over a\npage is coherent -- the page is the slice of the result, the window is the\npart of that slice on screen -- and the arithmetic is the same either way,\nso there is nothing to forbid. Together they suit a table paging at a\nthousand rows, where the page is a reasonable fetch and a poor render.\n\nOff by default. Windowing costs a scroll listener, a measurement per row\ndrawn, and a `block-size` on the scrolling box, and a table of twenty rows\nshould pay none of them.",
|
|
58461
|
+
"description": "Draws only the rows in view, with empty space in place of the rest.\n\n**Not a `mode`.** `mode` says where the rows come from and who filtered\nthem; this says how many of the ones we hold get drawn. They are\nindependent: a consumer fetching five thousand rows a chunk at a time wants\n`mode=\"server\"` and this at once, and folding this into `mode` would be an\nAPI that forbids that combination for no reason.\n\n**Composes with `paginated` rather than excluding it.** A window over a\npage is coherent -- the page is the slice of the result, the window is the\npart of that slice on screen -- and the arithmetic is the same either way,\nso there is nothing to forbid. Together they suit a table paging at a\nthousand rows, where the page is a reasonable fetch and a poor render.\n\nOff by default. Windowing costs a scroll listener, a measurement per row\ndrawn, and a `block-size` on the scrolling box, and a table of twenty rows\nshould pay none of them.\n\nWhile windowed, the `table` part scrolls on this tier: it carries\n`data-scroller`, and `core` ships `[data-scroller] { overflow: auto }` into\nevery shadow root. You still need to give it a block size.",
|
|
58077
58462
|
"attribute": "windowed",
|
|
58078
58463
|
"reflects": true,
|
|
58079
58464
|
"inheritedFrom": {
|
|
@@ -61635,7 +62020,7 @@
|
|
|
61635
62020
|
"text": "boolean"
|
|
61636
62021
|
},
|
|
61637
62022
|
"default": "false",
|
|
61638
|
-
"description": "Draws only the rows in view, with empty space in place of the rest.\n\n**Not a `mode`.** `mode` says where the rows come from and who filtered\nthem; this says how many of the ones we hold get drawn. They are\nindependent: a consumer fetching five thousand rows a chunk at a time wants\n`mode=\"server\"` and this at once, and folding this into `mode` would be an\nAPI that forbids that combination for no reason.\n\n**Composes with `paginated` rather than excluding it.** A window over a\npage is coherent -- the page is the slice of the result, the window is the\npart of that slice on screen -- and the arithmetic is the same either way,\nso there is nothing to forbid. Together they suit a table paging at a\nthousand rows, where the page is a reasonable fetch and a poor render.\n\nOff by default. Windowing costs a scroll listener, a measurement per row\ndrawn, and a `block-size` on the scrolling box, and a table of twenty rows\nshould pay none of them.",
|
|
62023
|
+
"description": "Draws only the rows in view, with empty space in place of the rest.\n\n**Not a `mode`.** `mode` says where the rows come from and who filtered\nthem; this says how many of the ones we hold get drawn. They are\nindependent: a consumer fetching five thousand rows a chunk at a time wants\n`mode=\"server\"` and this at once, and folding this into `mode` would be an\nAPI that forbids that combination for no reason.\n\n**Composes with `paginated` rather than excluding it.** A window over a\npage is coherent -- the page is the slice of the result, the window is the\npart of that slice on screen -- and the arithmetic is the same either way,\nso there is nothing to forbid. Together they suit a table paging at a\nthousand rows, where the page is a reasonable fetch and a poor render.\n\nOff by default. Windowing costs a scroll listener, a measurement per row\ndrawn, and a `block-size` on the scrolling box, and a table of twenty rows\nshould pay none of them.\n\nWhile windowed, the `table` part scrolls on this tier: it carries\n`data-scroller`, and `core` ships `[data-scroller] { overflow: auto }` into\nevery shadow root. You still need to give it a block size.",
|
|
61639
62024
|
"fieldName": "windowed",
|
|
61640
62025
|
"inheritedFrom": {
|
|
61641
62026
|
"name": "HelixHeadlessDataTable",
|
|
@@ -67310,7 +67695,7 @@
|
|
|
67310
67695
|
"text": "TemplateResult | typeof nothing"
|
|
67311
67696
|
}
|
|
67312
67697
|
},
|
|
67313
|
-
"description": "The `feedback` line, or nothing while there is none.",
|
|
67698
|
+
"description": "The `feedback` line, or nothing while there is none.\n\n`role=\"alert\"`, as a field's feedback line has, so the message is\nannounced when it appears and the label and hint are not read with it.",
|
|
67314
67699
|
"inheritedFrom": {
|
|
67315
67700
|
"name": "MixinPickerFeedback",
|
|
67316
67701
|
"module": "src/mixins/mixin-picker-feedback/mixin-picker-feedback.ts"
|
|
@@ -72413,7 +72798,7 @@
|
|
|
72413
72798
|
"name": "commands",
|
|
72414
72799
|
"privacy": "protected",
|
|
72415
72800
|
"readonly": true,
|
|
72416
|
-
"default": "new CommandController(this, { commands: { '--close': () => this.close(), '--show': () => this.show(), '--toggle': () => this.toggleOpen(), }, })",
|
|
72801
|
+
"default": "new CommandController(this, { commands: { '--close': () => this.close(), '--show': () => this.show(), '--toggle': () => this.toggleOpen(), }, expanded: () => this.open, })",
|
|
72417
72802
|
"inheritedFrom": {
|
|
72418
72803
|
"name": "HelixHeadlessDialog",
|
|
72419
72804
|
"module": "src/dialog/root/dialog-root.ts"
|
|
@@ -75958,7 +76343,7 @@
|
|
|
75958
76343
|
"name": "commands",
|
|
75959
76344
|
"privacy": "protected",
|
|
75960
76345
|
"readonly": true,
|
|
75961
|
-
"default": "new CommandController(this, { commands: { '--close': () => this.requestOpen(false), '--show': () => this.requestOpen(true), '--toggle': () => this.toggleOpen(), }, })",
|
|
76346
|
+
"default": "new CommandController(this, { commands: { '--close': () => this.requestOpen(false), '--show': () => this.requestOpen(true), '--toggle': () => this.toggleOpen(), }, expanded: () => this.open, })",
|
|
75962
76347
|
"inheritedFrom": {
|
|
75963
76348
|
"name": "HelixHeadlessDrawer",
|
|
75964
76349
|
"module": "src/drawer/root/drawer-root.ts"
|
|
@@ -92669,6 +93054,38 @@
|
|
|
92669
93054
|
"module": "src/graph/root/graph-root.ts"
|
|
92670
93055
|
}
|
|
92671
93056
|
},
|
|
93057
|
+
{
|
|
93058
|
+
"kind": "field",
|
|
93059
|
+
"name": "loading",
|
|
93060
|
+
"type": {
|
|
93061
|
+
"text": "boolean"
|
|
93062
|
+
},
|
|
93063
|
+
"default": "false",
|
|
93064
|
+
"description": "Marks the graph as busy while its notes arrive: the list is `aria-busy`,\nand the panel says so where it holds no notes yet.",
|
|
93065
|
+
"attribute": "loading",
|
|
93066
|
+
"reflects": true,
|
|
93067
|
+
"inheritedFrom": {
|
|
93068
|
+
"name": "HelixHeadlessGraph",
|
|
93069
|
+
"module": "src/graph/root/graph-root.ts"
|
|
93070
|
+
}
|
|
93071
|
+
},
|
|
93072
|
+
{
|
|
93073
|
+
"kind": "field",
|
|
93074
|
+
"name": "loadingLabel",
|
|
93075
|
+
"type": {
|
|
93076
|
+
"text": "string"
|
|
93077
|
+
},
|
|
93078
|
+
"default": "'Loading notes'",
|
|
93079
|
+
"description": "What the panel says while `loading` is set and the list holds no notes.",
|
|
93080
|
+
"attribute": "loading-label",
|
|
93081
|
+
"helix": {
|
|
93082
|
+
"words": true
|
|
93083
|
+
},
|
|
93084
|
+
"inheritedFrom": {
|
|
93085
|
+
"name": "HelixHeadlessGraph",
|
|
93086
|
+
"module": "src/graph/root/graph-root.ts"
|
|
93087
|
+
}
|
|
93088
|
+
},
|
|
92672
93089
|
{
|
|
92673
93090
|
"kind": "field",
|
|
92674
93091
|
"name": "movedDownLabel",
|
|
@@ -92765,6 +93182,18 @@
|
|
|
92765
93182
|
"module": "src/graph/root/graph-root.ts"
|
|
92766
93183
|
}
|
|
92767
93184
|
},
|
|
93185
|
+
{
|
|
93186
|
+
"kind": "field",
|
|
93187
|
+
"name": "noteContent",
|
|
93188
|
+
"type": {
|
|
93189
|
+
"text": "((node: GraphNode) => unknown) | undefined | undefined"
|
|
93190
|
+
},
|
|
93191
|
+
"description": "What each note's row in the list shows in place of its name: a function\ngiven the note that returns text, an element or a Lit template.\n\nFor an icon by its kind, or a date under its name, as React Aria's\n`ListBoxItem` takes children. The row is still named by the note's name,\nwhich typeahead and the search find it by, and described by how it stands\nto the selected note. Return the name with your content where it should\nstill show. A property only, there being no way to write a function in\nmarkup.",
|
|
93192
|
+
"inheritedFrom": {
|
|
93193
|
+
"name": "HelixHeadlessGraph",
|
|
93194
|
+
"module": "src/graph/root/graph-root.ts"
|
|
93195
|
+
}
|
|
93196
|
+
},
|
|
92768
93197
|
{
|
|
92769
93198
|
"kind": "field",
|
|
92770
93199
|
"name": "notesLabel",
|
|
@@ -94206,6 +94635,32 @@
|
|
|
94206
94635
|
"module": "src/graph/root/graph-root.ts"
|
|
94207
94636
|
}
|
|
94208
94637
|
},
|
|
94638
|
+
{
|
|
94639
|
+
"name": "loading",
|
|
94640
|
+
"type": {
|
|
94641
|
+
"text": "boolean"
|
|
94642
|
+
},
|
|
94643
|
+
"default": "false",
|
|
94644
|
+
"description": "Marks the graph as busy while its notes arrive: the list is `aria-busy`,\nand the panel says so where it holds no notes yet.",
|
|
94645
|
+
"fieldName": "loading",
|
|
94646
|
+
"inheritedFrom": {
|
|
94647
|
+
"name": "HelixHeadlessGraph",
|
|
94648
|
+
"module": "src/graph/root/graph-root.ts"
|
|
94649
|
+
}
|
|
94650
|
+
},
|
|
94651
|
+
{
|
|
94652
|
+
"name": "loading-label",
|
|
94653
|
+
"type": {
|
|
94654
|
+
"text": "string"
|
|
94655
|
+
},
|
|
94656
|
+
"default": "'Loading notes'",
|
|
94657
|
+
"description": "What the panel says while `loading` is set and the list holds no notes.",
|
|
94658
|
+
"fieldName": "loadingLabel",
|
|
94659
|
+
"inheritedFrom": {
|
|
94660
|
+
"name": "HelixHeadlessGraph",
|
|
94661
|
+
"module": "src/graph/root/graph-root.ts"
|
|
94662
|
+
}
|
|
94663
|
+
},
|
|
94209
94664
|
{
|
|
94210
94665
|
"name": "moved-down-label",
|
|
94211
94666
|
"type": {
|
|
@@ -94548,6 +95003,14 @@
|
|
|
94548
95003
|
"module": "src/graph/root/graph-root.ts"
|
|
94549
95004
|
}
|
|
94550
95005
|
},
|
|
95006
|
+
{
|
|
95007
|
+
"description": "What the panel shows while `loading` is set and the list holds no notes. Defaults to `loading-label`.",
|
|
95008
|
+
"name": "loading",
|
|
95009
|
+
"inheritedFrom": {
|
|
95010
|
+
"name": "HelixHeadlessGraph",
|
|
95011
|
+
"module": "src/graph/root/graph-root.ts"
|
|
95012
|
+
}
|
|
95013
|
+
},
|
|
94551
95014
|
{
|
|
94552
95015
|
"description": "Replaces the glyph inside the pan down button.",
|
|
94553
95016
|
"name": "pan-down-icon",
|
|
@@ -94750,6 +95213,14 @@
|
|
|
94750
95213
|
"module": "src/graph/root/graph-root.ts"
|
|
94751
95214
|
}
|
|
94752
95215
|
},
|
|
95216
|
+
{
|
|
95217
|
+
"description": "The box in place of the list while `loading` is set and it holds no notes, holding the `loading` slot.",
|
|
95218
|
+
"name": "loading",
|
|
95219
|
+
"inheritedFrom": {
|
|
95220
|
+
"name": "HelixHeadlessGraph",
|
|
95221
|
+
"module": "src/graph/root/graph-root.ts"
|
|
95222
|
+
}
|
|
95223
|
+
},
|
|
94753
95224
|
{
|
|
94754
95225
|
"description": "One note in the list.",
|
|
94755
95226
|
"name": "note",
|
|
@@ -94928,6 +95399,14 @@
|
|
|
94928
95399
|
"module": "src/graph/root/graph-root.ts"
|
|
94929
95400
|
}
|
|
94930
95401
|
},
|
|
95402
|
+
{
|
|
95403
|
+
"description": "While `loading` is set.",
|
|
95404
|
+
"name": "loading",
|
|
95405
|
+
"inheritedFrom": {
|
|
95406
|
+
"name": "HelixHeadlessGraph",
|
|
95407
|
+
"module": "src/graph/root/graph-root.ts"
|
|
95408
|
+
}
|
|
95409
|
+
},
|
|
94931
95410
|
{
|
|
94932
95411
|
"description": "The drawing shows the selected note's local graph, with `depth`.",
|
|
94933
95412
|
"name": "local",
|
|
@@ -108625,7 +109104,7 @@
|
|
|
108625
109104
|
"name": "commands",
|
|
108626
109105
|
"privacy": "protected",
|
|
108627
109106
|
"readonly": true,
|
|
108628
|
-
"default": "new CommandController(this, { commands: { '--close': () => this.close(), '--fullscreen': () => this.toggleFullscreen(), '--next': () => this.next(), '--previous': () => this.previous(), '--show': () => this.show(), '--toggle': () => this.toggleOpen(), }, })",
|
|
109107
|
+
"default": "new CommandController(this, { commands: { '--close': () => this.close(), '--fullscreen': () => this.toggleFullscreen(), '--next': () => this.next(), '--previous': () => this.previous(), '--show': () => this.show(), '--toggle': () => this.toggleOpen(), }, expanded: () => this.open, })",
|
|
108629
109108
|
"inheritedFrom": {
|
|
108630
109109
|
"name": "HelixHeadlessLightbox",
|
|
108631
109110
|
"module": "src/lightbox/root/lightbox-root.ts"
|
|
@@ -113615,7 +114094,7 @@
|
|
|
113615
114094
|
"text": "string"
|
|
113616
114095
|
},
|
|
113617
114096
|
"default": "''",
|
|
113618
|
-
"description": "The selected rows' values, separated by commas with no spaces, such as `a,c`, in a list that selects.\n\
|
|
114097
|
+
"description": "The selected rows' values, separated by commas with no spaces, such as `a,c`, in a list that selects.\n\nA press or a key writes it in row order, as Data Table does, whatever\norder the rows were chosen in. Set it to start with rows selected. A row's value is its `value`, or its\nwords where it has none.",
|
|
113619
114098
|
"attribute": "value",
|
|
113620
114099
|
"inheritedFrom": {
|
|
113621
114100
|
"name": "HelixHeadlessList",
|
|
@@ -113979,7 +114458,7 @@
|
|
|
113979
114458
|
}
|
|
113980
114459
|
}
|
|
113981
114460
|
],
|
|
113982
|
-
"description": "Selects what a press or a key leaves, asking first. `helix-before-change`\ncarries the `value` it would leave, and `change` follows once it has moved
|
|
114461
|
+
"description": "Selects what a press or a key leaves, asking first. `helix-before-change`\ncarries the `value` it would leave, and `change` follows once it has moved.\n\nIn row order, as Data Table and Table write theirs, whatever order the\nrows were chosen in: a press on the fourth row and then the first is\n`a,d`.",
|
|
113983
114462
|
"inheritedFrom": {
|
|
113984
114463
|
"name": "HelixHeadlessList",
|
|
113985
114464
|
"module": "src/list/root/list-root.ts"
|
|
@@ -114960,7 +115439,7 @@
|
|
|
114960
115439
|
"text": "string"
|
|
114961
115440
|
},
|
|
114962
115441
|
"default": "''",
|
|
114963
|
-
"description": "The selected rows' values, separated by commas with no spaces, such as `a,c`, in a list that selects.\n\
|
|
115442
|
+
"description": "The selected rows' values, separated by commas with no spaces, such as `a,c`, in a list that selects.\n\nA press or a key writes it in row order, as Data Table does, whatever\norder the rows were chosen in. Set it to start with rows selected. A row's value is its `value`, or its\nwords where it has none.",
|
|
114964
115443
|
"fieldName": "value",
|
|
114965
115444
|
"inheritedFrom": {
|
|
114966
115445
|
"name": "HelixHeadlessList",
|
|
@@ -116567,7 +117046,7 @@
|
|
|
116567
117046
|
}
|
|
116568
117047
|
}
|
|
116569
117048
|
],
|
|
116570
|
-
"description": "Says how many options a filter left, in the live region.\n\n**A reader typing into a filter cannot see the list narrow**, and React\nAria and Web Awesome both say the count as it changes. Only \"No matches\"\nwas said here, so a query that left forty options and one that left one\nsounded the same. Said when the filter changes and the count with it, so\na keystroke that leaves the same options says nothing new. An empty filter\nsays nothing, being the list as it was given; no matches is `empty-text`,\nwhich the region says in place of this.",
|
|
117049
|
+
"description": "Says how many options a filter left, in the live region.\n\n**A reader typing into a filter cannot see the list narrow**, and React\nAria and Web Awesome both say the count as it changes. Only \"No matches\"\nwas said here, so a query that left forty options and one that left one\nsounded the same. Said when the filter changes and the count with it, so\na keystroke that leaves the same options says nothing new. An empty filter\nsays nothing, being the list as it was given; no matches is `empty-text`,\nwhich the region says in place of this. A load that ends says the count\ntoo, whatever the filter.",
|
|
116571
117050
|
"inheritedFrom": {
|
|
116572
117051
|
"name": "HelixHeadlessListbox",
|
|
116573
117052
|
"module": "src/listbox/root/listbox-root.ts"
|
|
@@ -133654,6 +134133,22 @@
|
|
|
133654
134133
|
"module": "src/menu/item/menu-item.ts"
|
|
133655
134134
|
}
|
|
133656
134135
|
},
|
|
134136
|
+
{
|
|
134137
|
+
"description": "The row is disabled.",
|
|
134138
|
+
"name": "disabled",
|
|
134139
|
+
"inheritedFrom": {
|
|
134140
|
+
"name": "HelixHeadlessMenuItem",
|
|
134141
|
+
"module": "src/menu/item/menu-item.ts"
|
|
134142
|
+
}
|
|
134143
|
+
},
|
|
134144
|
+
{
|
|
134145
|
+
"description": "Under `submenus=\"flyout\"`, the row's submenu is open beside it.",
|
|
134146
|
+
"name": "expanded",
|
|
134147
|
+
"inheritedFrom": {
|
|
134148
|
+
"name": "HelixHeadlessMenuItem",
|
|
134149
|
+
"module": "src/menu/item/menu-item.ts"
|
|
134150
|
+
}
|
|
134151
|
+
},
|
|
133657
134152
|
{
|
|
133658
134153
|
"description": "In a menu with `filterable`, the arrow keys or the pointer reached the row while focus stays in the filter field.",
|
|
133659
134154
|
"name": "highlighted",
|
|
@@ -134413,6 +134908,20 @@
|
|
|
134413
134908
|
"module": "src/menu/root/menu-root.ts"
|
|
134414
134909
|
}
|
|
134415
134910
|
},
|
|
134911
|
+
{
|
|
134912
|
+
"kind": "field",
|
|
134913
|
+
"name": "openOn",
|
|
134914
|
+
"type": {
|
|
134915
|
+
"text": "'click' | 'long-press'"
|
|
134916
|
+
},
|
|
134917
|
+
"default": "'click'",
|
|
134918
|
+
"description": "What opens the menu from its trigger. `long-press` leaves a press to the\ntrigger's own action and opens the menu on a press held for half a second,\nor on Alt+Down or Alt+Up.",
|
|
134919
|
+
"attribute": "open-on",
|
|
134920
|
+
"inheritedFrom": {
|
|
134921
|
+
"name": "HelixHeadlessMenu",
|
|
134922
|
+
"module": "src/menu/root/menu-root.ts"
|
|
134923
|
+
}
|
|
134924
|
+
},
|
|
134416
134925
|
{
|
|
134417
134926
|
"kind": "field",
|
|
134418
134927
|
"name": "pressHeld",
|
|
@@ -134454,13 +134963,13 @@
|
|
|
134454
134963
|
},
|
|
134455
134964
|
{
|
|
134456
134965
|
"kind": "field",
|
|
134457
|
-
"name": "
|
|
134966
|
+
"name": "placement",
|
|
134458
134967
|
"type": {
|
|
134459
|
-
"text": "'
|
|
134968
|
+
"text": "'bottom' | 'bottom-end' | 'bottom-start' | 'left' | 'left-end' | 'left-start' | 'right' | 'right-end' | 'right-start' | 'top' | 'top-end' | 'top-start'"
|
|
134460
134969
|
},
|
|
134461
|
-
"default": "'
|
|
134462
|
-
"description": "
|
|
134463
|
-
"attribute": "
|
|
134970
|
+
"default": "'bottom-start'",
|
|
134971
|
+
"description": "The side the menu opens on, when there is room.\n\nIt moves if that side does not fit.",
|
|
134972
|
+
"attribute": "placement",
|
|
134464
134973
|
"inheritedFrom": {
|
|
134465
134974
|
"name": "HelixHeadlessMenu",
|
|
134466
134975
|
"module": "src/menu/root/menu-root.ts"
|
|
@@ -134468,13 +134977,16 @@
|
|
|
134468
134977
|
},
|
|
134469
134978
|
{
|
|
134470
134979
|
"kind": "field",
|
|
134471
|
-
"name": "
|
|
134980
|
+
"name": "resultsLabel",
|
|
134472
134981
|
"type": {
|
|
134473
|
-
"text": "
|
|
134982
|
+
"text": "string"
|
|
134983
|
+
},
|
|
134984
|
+
"default": "'{count, plural, one {# result} other {# results}}'",
|
|
134985
|
+
"description": "What a screen reader hears when the filter narrows the rows. `{count}` is\nhow many rows are left, written in the locale, and each language writes\nthe forms it has, as Listbox's `results-label` does.",
|
|
134986
|
+
"attribute": "results-label",
|
|
134987
|
+
"helix": {
|
|
134988
|
+
"words": true
|
|
134474
134989
|
},
|
|
134475
|
-
"default": "'bottom-start'",
|
|
134476
|
-
"description": "The side the menu opens on, when there is room.\n\nIt moves if that side does not fit.",
|
|
134477
|
-
"attribute": "placement",
|
|
134478
134990
|
"inheritedFrom": {
|
|
134479
134991
|
"name": "HelixHeadlessMenu",
|
|
134480
134992
|
"module": "src/menu/root/menu-root.ts"
|
|
@@ -134518,6 +135030,17 @@
|
|
|
134518
135030
|
"module": "src/menu/root/menu-root.ts"
|
|
134519
135031
|
}
|
|
134520
135032
|
},
|
|
135033
|
+
{
|
|
135034
|
+
"kind": "field",
|
|
135035
|
+
"name": "phases",
|
|
135036
|
+
"privacy": "protected",
|
|
135037
|
+
"readonly": true,
|
|
135038
|
+
"default": "new OpenPhaseController(this, { mark: { entering: (on) => this.toggleState('entering', on), exiting: (on) => this.toggleState('exiting', on), }, open: () => this.open, surface: () => this.partNamed('surface'), })",
|
|
135039
|
+
"inheritedFrom": {
|
|
135040
|
+
"name": "HelixHeadlessMenu",
|
|
135041
|
+
"module": "src/menu/root/menu-root.ts"
|
|
135042
|
+
}
|
|
135043
|
+
},
|
|
134521
135044
|
{
|
|
134522
135045
|
"kind": "field",
|
|
134523
135046
|
"name": "aria",
|
|
@@ -134821,6 +135344,30 @@
|
|
|
134821
135344
|
"module": "src/menu/root/menu-root.ts"
|
|
134822
135345
|
}
|
|
134823
135346
|
},
|
|
135347
|
+
{
|
|
135348
|
+
"kind": "field",
|
|
135349
|
+
"name": "rowWatch",
|
|
135350
|
+
"type": {
|
|
135351
|
+
"text": "MutationObserver | undefined"
|
|
135352
|
+
},
|
|
135353
|
+
"privacy": "private",
|
|
135354
|
+
"description": "Watches for rows taken away while the menu is open.",
|
|
135355
|
+
"inheritedFrom": {
|
|
135356
|
+
"name": "HelixHeadlessMenu",
|
|
135357
|
+
"module": "src/menu/root/menu-root.ts"
|
|
135358
|
+
}
|
|
135359
|
+
},
|
|
135360
|
+
{
|
|
135361
|
+
"kind": "field",
|
|
135362
|
+
"name": "followRemoved",
|
|
135363
|
+
"privacy": "private",
|
|
135364
|
+
"readonly": true,
|
|
135365
|
+
"description": "Moves the reader to a neighbor when the page takes away the row they were\non: the row that took its place, or the one before it where it was the\nlast. A menu with no rows left closes and gives focus to its trigger.\n\n**Focus went to the body**, and the menu then ignored every key, its\nlistener being on the host: measured in Chromium, removing the focused\nrow and pressing ArrowUp did nothing. List and Virtual List move focus to\na neighbor the same way, as React Aria's collections do. With `filterable`,\nfocus stays in the field and the highlight moves. Focus a reader put\nanywhere but the body is left there.",
|
|
135366
|
+
"inheritedFrom": {
|
|
135367
|
+
"name": "HelixHeadlessMenu",
|
|
135368
|
+
"module": "src/menu/root/menu-root.ts"
|
|
135369
|
+
}
|
|
135370
|
+
},
|
|
134824
135371
|
{
|
|
134825
135372
|
"kind": "method",
|
|
134826
135373
|
"name": "show",
|
|
@@ -134950,6 +135497,60 @@
|
|
|
134950
135497
|
"module": "src/menu/root/menu-root.ts"
|
|
134951
135498
|
}
|
|
134952
135499
|
},
|
|
135500
|
+
{
|
|
135501
|
+
"kind": "field",
|
|
135502
|
+
"name": "choiceRows",
|
|
135503
|
+
"type": {
|
|
135504
|
+
"text": "HelixHeadlessMenuItem[]"
|
|
135505
|
+
},
|
|
135506
|
+
"privacy": "private",
|
|
135507
|
+
"description": "The choice rows anywhere in the menu, in document order.",
|
|
135508
|
+
"readonly": true,
|
|
135509
|
+
"inheritedFrom": {
|
|
135510
|
+
"name": "HelixHeadlessMenu",
|
|
135511
|
+
"module": "src/menu/root/menu-root.ts"
|
|
135512
|
+
}
|
|
135513
|
+
},
|
|
135514
|
+
{
|
|
135515
|
+
"kind": "field",
|
|
135516
|
+
"name": "checkedValues",
|
|
135517
|
+
"type": {
|
|
135518
|
+
"text": "string[]"
|
|
135519
|
+
},
|
|
135520
|
+
"description": "The values of the choice rows that are checked, anywhere in the menu, in\ndocument order.\n\nSet it to check exactly those rows and uncheck every other choice row, as\nReact Aria's `selectedKeys` controls a menu's selection from one place.\nEach row keeps its own `checked` too, which this reads and writes. `change`\nis sent on the menu when a reader's choice changes it.",
|
|
135521
|
+
"inheritedFrom": {
|
|
135522
|
+
"name": "HelixHeadlessMenu",
|
|
135523
|
+
"module": "src/menu/root/menu-root.ts"
|
|
135524
|
+
}
|
|
135525
|
+
},
|
|
135526
|
+
{
|
|
135527
|
+
"kind": "field",
|
|
135528
|
+
"name": "toldChecked",
|
|
135529
|
+
"type": {
|
|
135530
|
+
"text": "string | undefined"
|
|
135531
|
+
},
|
|
135532
|
+
"privacy": "private",
|
|
135533
|
+
"description": "The checked values `change` last said, joined, so a choice that moved nothing says nothing.",
|
|
135534
|
+
"inheritedFrom": {
|
|
135535
|
+
"name": "HelixHeadlessMenu",
|
|
135536
|
+
"module": "src/menu/root/menu-root.ts"
|
|
135537
|
+
}
|
|
135538
|
+
},
|
|
135539
|
+
{
|
|
135540
|
+
"kind": "method",
|
|
135541
|
+
"name": "tellChecked",
|
|
135542
|
+
"privacy": "private",
|
|
135543
|
+
"return": {
|
|
135544
|
+
"type": {
|
|
135545
|
+
"text": "void"
|
|
135546
|
+
}
|
|
135547
|
+
},
|
|
135548
|
+
"description": "Sends `change` when a reader's choice has changed which rows are checked.",
|
|
135549
|
+
"inheritedFrom": {
|
|
135550
|
+
"name": "HelixHeadlessMenu",
|
|
135551
|
+
"module": "src/menu/root/menu-root.ts"
|
|
135552
|
+
}
|
|
135553
|
+
},
|
|
134953
135554
|
{
|
|
134954
135555
|
"kind": "field",
|
|
134955
135556
|
"name": "handleSelect",
|
|
@@ -135226,7 +135827,7 @@
|
|
|
135226
135827
|
"name": "handleHover",
|
|
135227
135828
|
"privacy": "private",
|
|
135228
135829
|
"readonly": true,
|
|
135229
|
-
"description": "A mouse resting on a row
|
|
135830
|
+
"description": "A mouse resting on a row: focus follows it, and under `flyout`, after a\nmoment, the row's submenu opens, or the submenus below the row's own page\nclose. Not while the pointer is crossing toward an open submenu.\n\n**In every mode**, as the APG's menus, React Aria's and Radix's have it.\nUnder `drill` the pointer did not move focus, so the row under the\npointer and the row the keys moved from were two rows, measured in\nChromium: hovering Delete left focus on Cut.",
|
|
135230
135831
|
"inheritedFrom": {
|
|
135231
135832
|
"name": "HelixHeadlessMenu",
|
|
135232
135833
|
"module": "src/menu/root/menu-root.ts"
|
|
@@ -135266,6 +135867,20 @@
|
|
|
135266
135867
|
"module": "src/menu/root/menu-root.ts"
|
|
135267
135868
|
}
|
|
135268
135869
|
},
|
|
135870
|
+
{
|
|
135871
|
+
"kind": "field",
|
|
135872
|
+
"name": "namedByPage",
|
|
135873
|
+
"type": {
|
|
135874
|
+
"text": "boolean"
|
|
135875
|
+
},
|
|
135876
|
+
"privacy": "private",
|
|
135877
|
+
"default": "false",
|
|
135878
|
+
"description": "Whether the surface is named by a submenu's page, which `nameSurface` undoes at the top.",
|
|
135879
|
+
"inheritedFrom": {
|
|
135880
|
+
"name": "HelixHeadlessMenu",
|
|
135881
|
+
"module": "src/menu/root/menu-root.ts"
|
|
135882
|
+
}
|
|
135883
|
+
},
|
|
135269
135884
|
{
|
|
135270
135885
|
"kind": "method",
|
|
135271
135886
|
"name": "nameSurface",
|
|
@@ -135275,7 +135890,7 @@
|
|
|
135275
135890
|
"text": "void"
|
|
135276
135891
|
}
|
|
135277
135892
|
},
|
|
135278
|
-
"description": "Names the surface by its trigger, where nothing else names it.\n\nBy element reference, which is the one direction that crosses: the surface\nis in this shadow root and the trigger is in the tree around it. A host\n`aria-labelledby` is carried down by `aria`, and a host `aria-label` or\n`label` is a name of its own, so each of them clears this reference.",
|
|
135893
|
+
"description": "Names the surface by its trigger, where nothing else names it, and a\nsubmenu's page by its title.\n\nBy element reference, which is the one direction that crosses: the surface\nis in this shadow root and the trigger is in the tree around it. A host\n`aria-labelledby` is carried down by `aria`, and a host `aria-label` or\n`label` is a name of its own, so each of them clears this reference.",
|
|
135279
135894
|
"inheritedFrom": {
|
|
135280
135895
|
"name": "HelixHeadlessMenu",
|
|
135281
135896
|
"module": "src/menu/root/menu-root.ts"
|
|
@@ -135950,6 +136565,19 @@
|
|
|
135950
136565
|
"module": "src/menu/root/menu-root.ts"
|
|
135951
136566
|
}
|
|
135952
136567
|
},
|
|
136568
|
+
{
|
|
136569
|
+
"name": "results-label",
|
|
136570
|
+
"type": {
|
|
136571
|
+
"text": "string"
|
|
136572
|
+
},
|
|
136573
|
+
"default": "'{count, plural, one {# result} other {# results}}'",
|
|
136574
|
+
"description": "What a screen reader hears when the filter narrows the rows. `{count}` is\nhow many rows are left, written in the locale, and each language writes\nthe forms it has, as Listbox's `results-label` does.",
|
|
136575
|
+
"fieldName": "resultsLabel",
|
|
136576
|
+
"inheritedFrom": {
|
|
136577
|
+
"name": "HelixHeadlessMenu",
|
|
136578
|
+
"module": "src/menu/root/menu-root.ts"
|
|
136579
|
+
}
|
|
136580
|
+
},
|
|
135953
136581
|
{
|
|
135954
136582
|
"name": "submenus",
|
|
135955
136583
|
"type": {
|
|
@@ -135977,6 +136605,18 @@
|
|
|
135977
136605
|
},
|
|
135978
136606
|
"reactProp": "ontoggle"
|
|
135979
136607
|
},
|
|
136608
|
+
{
|
|
136609
|
+
"type": {
|
|
136610
|
+
"text": "Event"
|
|
136611
|
+
},
|
|
136612
|
+
"description": "A reader's choice checked or unchecked rows. Read `checkedValues` for the rows that are checked now.",
|
|
136613
|
+
"name": "change",
|
|
136614
|
+
"reactProp": "onchange",
|
|
136615
|
+
"inheritedFrom": {
|
|
136616
|
+
"name": "HelixHeadlessMenu",
|
|
136617
|
+
"module": "src/menu/root/menu-root.ts"
|
|
136618
|
+
}
|
|
136619
|
+
},
|
|
135980
136620
|
{
|
|
135981
136621
|
"type": {
|
|
135982
136622
|
"text": "HelixBeforeCloseEvent"
|
|
@@ -136035,6 +136675,22 @@
|
|
|
136035
136675
|
"module": "src/menu/root/menu-root.ts"
|
|
136036
136676
|
}
|
|
136037
136677
|
},
|
|
136678
|
+
{
|
|
136679
|
+
"description": "What the menu shows when it has no items, for content richer than `empty-text`.",
|
|
136680
|
+
"name": "empty",
|
|
136681
|
+
"inheritedFrom": {
|
|
136682
|
+
"name": "HelixHeadlessMenu",
|
|
136683
|
+
"module": "src/menu/root/menu-root.ts"
|
|
136684
|
+
}
|
|
136685
|
+
},
|
|
136686
|
+
{
|
|
136687
|
+
"description": "What the menu shows while its items load, for content richer than `loading-text`.",
|
|
136688
|
+
"name": "loading",
|
|
136689
|
+
"inheritedFrom": {
|
|
136690
|
+
"name": "HelixHeadlessMenu",
|
|
136691
|
+
"module": "src/menu/root/menu-root.ts"
|
|
136692
|
+
}
|
|
136693
|
+
},
|
|
136038
136694
|
{
|
|
136039
136695
|
"description": "What the menu shows when the filter keeps no rows, for content richer than `no-results-text`.",
|
|
136040
136696
|
"name": "no-results",
|
|
@@ -136135,6 +136791,22 @@
|
|
|
136135
136791
|
"module": "src/menu/root/menu-root.ts"
|
|
136136
136792
|
}
|
|
136137
136793
|
},
|
|
136794
|
+
{
|
|
136795
|
+
"description": "From the moment the panel shows until its entrance has finished.",
|
|
136796
|
+
"name": "entering",
|
|
136797
|
+
"inheritedFrom": {
|
|
136798
|
+
"name": "HelixHeadlessMenu",
|
|
136799
|
+
"module": "src/menu/root/menu-root.ts"
|
|
136800
|
+
}
|
|
136801
|
+
},
|
|
136802
|
+
{
|
|
136803
|
+
"description": "From the moment the panel hides until its exit has finished.",
|
|
136804
|
+
"name": "exiting",
|
|
136805
|
+
"inheritedFrom": {
|
|
136806
|
+
"name": "HelixHeadlessMenu",
|
|
136807
|
+
"module": "src/menu/root/menu-root.ts"
|
|
136808
|
+
}
|
|
136809
|
+
},
|
|
136138
136810
|
{
|
|
136139
136811
|
"description": "A row on the current page has a checkbox or a link, so every row keeps the trailing column.",
|
|
136140
136812
|
"name": "mark",
|
|
@@ -150260,7 +150932,7 @@
|
|
|
150260
150932
|
"declarations": [
|
|
150261
150933
|
{
|
|
150262
150934
|
"kind": "class",
|
|
150263
|
-
"description": "A cloud of dots drawn to a canvas, with one shape per state:\n\n- `connecting` and `thinking`: the same leaning sash, differing in how\n agitated it is.\n- `waiting` and `done`: the same settled ball at different tempos.\n- `fetching`: a globe with a light moving around it.\n- `listening`: a closed sphere with a ripple crossing it.\n- `working`: a ring.\n\nEvery state is the same banded grid with different parameters. Changing state\ninterpolates the parameters, so every frame in between is a complete shape. A\nsmall change gets less time than a large one, such as a sash becoming a ring.\nThe outline changes first, so the light starts orbiting only after the shape\nis round.\n\nThe cloud does not rotate, and all movement happens inside it. The exception\nis the light, which travels because a ring of evenly spaced dots looks the\nsame when rotated, so a turning state needs something fixed passing over it.\n\nColors come from `--orb-color` and `--orb-ground`. Each dot's color is mixed\ntoward the ground color by its depth, so depth holds when the theme changes.\n\nThe animation stops when the orb is off screen or in a background tab. With\n`prefers-reduced-motion`, it draws one still frame.\n\nThe orb is styled only and has behavior, which the tier split does not\notherwise allow. Its role, name and busy state follow `state`, unless\n`announce` makes it a status region, and the rest
|
|
150935
|
+
"description": "A cloud of dots drawn to a canvas, with one shape per state:\n\n- `connecting` and `thinking`: the same leaning sash, differing in how\n agitated it is.\n- `waiting` and `done`: the same settled ball at different tempos.\n- `fetching`: a globe with a light moving around it.\n- `listening`: a closed sphere with a ripple crossing it.\n- `working`: a ring.\n\nEvery state is the same banded grid with different parameters. Changing state\ninterpolates the parameters, so every frame in between is a complete shape. A\nsmall change gets less time than a large one, such as a sash becoming a ring.\nThe outline changes first, so the light starts orbiting only after the shape\nis round.\n\nThe cloud does not rotate, and all movement happens inside it. The exception\nis the light, which travels because a ring of evenly spaced dots looks the\nsame when rotated, so a turning state needs something fixed passing over it.\n\nColors come from `--orb-color` and `--orb-ground`. Each dot's color is mixed\ntoward the ground color by its depth, so depth holds when the theme changes.\n\nThe animation stops when the orb is off screen or in a background tab. With\n`prefers-reduced-motion`, it draws one still frame.\n\nThe orb is styled only and has behavior, which the tier split does not\notherwise allow. Its role, name and busy state follow `state`, unless\n`announce` makes it a status region, and the rest is drawing dots to a\ncanvas.\n\n**A shape of your own goes in the default slot**, such as an SVG, an\nimage, or an animation. The orb draws it over its box in place of the dots\nand stops drawing them, and keeps its role, name, busy state and custom\nstates, so your stylesheet can change what you slotted by state, such as\n`helix-orb:state(working) svg { animation-duration: 1s }`. What you slot is\nfor the eye: a screen reader hears the orb's name.\n\n`--orb-speed` scales how fast the dots move, so `0.5` is a calmer orb at\nhalf the tempo.\n\nEach state is also a custom state, such as `:state(thinking)` or\n`:state(done)`, so a page can style what sits around an orb by what it shows,\nwhether the state was written as an attribute or set from script.",
|
|
150264
150936
|
"name": "HelixOrb",
|
|
150265
150937
|
"cssProperties": [
|
|
150266
150938
|
{
|
|
@@ -150274,11 +150946,15 @@
|
|
|
150274
150946
|
{
|
|
150275
150947
|
"description": "The diameter. Overrides `size`.",
|
|
150276
150948
|
"name": "--orb-size"
|
|
150949
|
+
},
|
|
150950
|
+
{
|
|
150951
|
+
"description": "How fast the dots move, as a multiple of each state's own tempo. Defaults to `1`.",
|
|
150952
|
+
"name": "--orb-speed"
|
|
150277
150953
|
}
|
|
150278
150954
|
],
|
|
150279
150955
|
"cssParts": [
|
|
150280
150956
|
{
|
|
150281
|
-
"description": "The canvas the dots are drawn on.",
|
|
150957
|
+
"description": "The canvas the dots are drawn on. Hidden while the default slot holds a shape.",
|
|
150282
150958
|
"name": "canvas"
|
|
150283
150959
|
},
|
|
150284
150960
|
{
|
|
@@ -150286,6 +150962,12 @@
|
|
|
150286
150962
|
"name": "live"
|
|
150287
150963
|
}
|
|
150288
150964
|
],
|
|
150965
|
+
"slots": [
|
|
150966
|
+
{
|
|
150967
|
+
"description": "A shape of your own, drawn over the orb's box in place of the dots.",
|
|
150968
|
+
"name": ""
|
|
150969
|
+
}
|
|
150970
|
+
],
|
|
150289
150971
|
"members": [
|
|
150290
150972
|
{
|
|
150291
150973
|
"kind": "field",
|
|
@@ -150367,12 +151049,22 @@
|
|
|
150367
151049
|
"privacy": "private",
|
|
150368
151050
|
"default": "null"
|
|
150369
151051
|
},
|
|
151052
|
+
{
|
|
151053
|
+
"kind": "field",
|
|
151054
|
+
"name": "own",
|
|
151055
|
+
"type": {
|
|
151056
|
+
"text": "boolean"
|
|
151057
|
+
},
|
|
151058
|
+
"privacy": "private",
|
|
151059
|
+
"default": "false",
|
|
151060
|
+
"description": "Whether the default slot holds a shape of the page's, which the dots give\nway to. A plain field, written to the canvas by hand as a lost context is,\nso finding a shape on the first update asks for no second one."
|
|
151061
|
+
},
|
|
150370
151062
|
{
|
|
150371
151063
|
"kind": "field",
|
|
150372
151064
|
"name": "gate",
|
|
150373
151065
|
"privacy": "private",
|
|
150374
151066
|
"readonly": true,
|
|
150375
|
-
"default": "new PaintGateController(this, { canRun: () => !!this.context && !this.lost, onFrame: (delta) => { this.paint(delta) }, onMotion: (reduced) => { if (reduced) { this.phase = STILL_PHASE this.morphAt = 0 this.paint(0) } }, onResize: () => { this.measure() this.paint(0) }, })",
|
|
151067
|
+
"default": "new PaintGateController(this, { canRun: () => !!this.context && !this.lost && !this.own, onFrame: (delta) => { this.paint(delta) }, onMotion: (reduced) => { if (reduced) { this.phase = STILL_PHASE this.morphAt = 0 this.paint(0) } }, onResize: () => { this.measure() this.paint(0) }, })",
|
|
150376
151068
|
"description": "Whether anybody is looking, and the loop that draws for them.\n\nA context it has not been given and one the browser has taken are both\nreasons to draw nothing that the gate cannot see, so they are said here.\n\nEvery frame paints: a settled orb has movement of its own in every state,\nand only the gate's own three answers stop it."
|
|
150377
151069
|
},
|
|
150378
151070
|
{
|
|
@@ -150453,6 +151145,13 @@
|
|
|
150453
151145
|
"description": "The word for the state drawn, in the page's words where it gave them.",
|
|
150454
151146
|
"readonly": true
|
|
150455
151147
|
},
|
|
151148
|
+
{
|
|
151149
|
+
"kind": "field",
|
|
151150
|
+
"name": "handleSlotChange",
|
|
151151
|
+
"privacy": "private",
|
|
151152
|
+
"readonly": true,
|
|
151153
|
+
"description": "Stops the dots for a shape the page slotted, and starts them again once it is gone."
|
|
151154
|
+
},
|
|
150456
151155
|
{
|
|
150457
151156
|
"kind": "method",
|
|
150458
151157
|
"name": "start",
|
|
@@ -151583,7 +152282,7 @@
|
|
|
151583
152282
|
"name": "indicator",
|
|
151584
152283
|
"privacy": "private",
|
|
151585
152284
|
"readonly": true,
|
|
151586
|
-
"default": "new IndicatorController(this, { active: () => this.links.find((link) => link.hasAttribute('aria-current')), indicator: () => this.partNamed('indicator'), surface: () => this.partNamed('nav'), })",
|
|
152285
|
+
"default": "new IndicatorController(this, { active: () => this.links.find((link) => link.hasAttribute('aria-current')), indicator: () => this.partNamed('indicator'), surface: () => this.partNamed('nav'), through: () => this.links.findLast((link) => link.hasAttribute('aria-current')), })",
|
|
151587
152286
|
"inheritedFrom": {
|
|
151588
152287
|
"name": "HelixHeadlessOutline",
|
|
151589
152288
|
"module": "src/outline/root/outline-root.ts"
|
|
@@ -151634,6 +152333,20 @@
|
|
|
151634
152333
|
"module": "src/outline/root/outline-root.ts"
|
|
151635
152334
|
}
|
|
151636
152335
|
},
|
|
152336
|
+
{
|
|
152337
|
+
"kind": "field",
|
|
152338
|
+
"name": "marks",
|
|
152339
|
+
"type": {
|
|
152340
|
+
"text": "'reading' | 'visible'"
|
|
152341
|
+
},
|
|
152342
|
+
"default": "'reading'",
|
|
152343
|
+
"description": "Which links are marked. `reading` marks the one section being read, the\nlast whose heading has passed the reading line. `visible` marks every\nsection with part of it on screen, and the mark runs across their links.",
|
|
152344
|
+
"attribute": "marks",
|
|
152345
|
+
"inheritedFrom": {
|
|
152346
|
+
"name": "HelixHeadlessOutline",
|
|
152347
|
+
"module": "src/outline/root/outline-root.ts"
|
|
152348
|
+
}
|
|
152349
|
+
},
|
|
151637
152350
|
{
|
|
151638
152351
|
"kind": "field",
|
|
151639
152352
|
"name": "offset",
|
|
@@ -151661,6 +152374,33 @@
|
|
|
151661
152374
|
"module": "src/outline/root/outline-root.ts"
|
|
151662
152375
|
}
|
|
151663
152376
|
},
|
|
152377
|
+
{
|
|
152378
|
+
"kind": "field",
|
|
152379
|
+
"name": "marked",
|
|
152380
|
+
"type": {
|
|
152381
|
+
"text": "string[]"
|
|
152382
|
+
},
|
|
152383
|
+
"description": "The ids of the sections whose links are marked, in page order: the one\n`current` names, or under `marks=\"visible\"` every section on screen.\nRead-only, for the reason `current` gives.",
|
|
152384
|
+
"readonly": true,
|
|
152385
|
+
"inheritedFrom": {
|
|
152386
|
+
"name": "HelixHeadlessOutline",
|
|
152387
|
+
"module": "src/outline/root/outline-root.ts"
|
|
152388
|
+
}
|
|
152389
|
+
},
|
|
152390
|
+
{
|
|
152391
|
+
"kind": "field",
|
|
152392
|
+
"name": "markedIds",
|
|
152393
|
+
"type": {
|
|
152394
|
+
"text": "string[]"
|
|
152395
|
+
},
|
|
152396
|
+
"privacy": "private",
|
|
152397
|
+
"default": "[]",
|
|
152398
|
+
"description": "What `marked` reports, which only `markTo` writes.",
|
|
152399
|
+
"inheritedFrom": {
|
|
152400
|
+
"name": "HelixHeadlessOutline",
|
|
152401
|
+
"module": "src/outline/root/outline-root.ts"
|
|
152402
|
+
}
|
|
152403
|
+
},
|
|
151664
152404
|
{
|
|
151665
152405
|
"kind": "field",
|
|
151666
152406
|
"name": "reading",
|
|
@@ -151771,6 +152511,41 @@
|
|
|
151771
152511
|
"module": "src/outline/root/outline-root.ts"
|
|
151772
152512
|
}
|
|
151773
152513
|
},
|
|
152514
|
+
{
|
|
152515
|
+
"kind": "method",
|
|
152516
|
+
"name": "onScreen",
|
|
152517
|
+
"privacy": "private",
|
|
152518
|
+
"return": {
|
|
152519
|
+
"type": {
|
|
152520
|
+
"text": "{ link: HTMLAnchorElement; target: Element }[]"
|
|
152521
|
+
}
|
|
152522
|
+
},
|
|
152523
|
+
"parameters": [
|
|
152524
|
+
{
|
|
152525
|
+
"name": "sections",
|
|
152526
|
+
"type": {
|
|
152527
|
+
"text": "{ link: HTMLAnchorElement; target: Element }[]"
|
|
152528
|
+
}
|
|
152529
|
+
},
|
|
152530
|
+
{
|
|
152531
|
+
"name": "origin",
|
|
152532
|
+
"type": {
|
|
152533
|
+
"text": "number"
|
|
152534
|
+
}
|
|
152535
|
+
},
|
|
152536
|
+
{
|
|
152537
|
+
"name": "scroller",
|
|
152538
|
+
"type": {
|
|
152539
|
+
"text": "Element"
|
|
152540
|
+
}
|
|
152541
|
+
}
|
|
152542
|
+
],
|
|
152543
|
+
"description": "The sections with part of them on screen, under `marks=\"visible\"`: each\nruns from its own target to the next one's, and the last to the end of the\npage.",
|
|
152544
|
+
"inheritedFrom": {
|
|
152545
|
+
"name": "HelixHeadlessOutline",
|
|
152546
|
+
"module": "src/outline/root/outline-root.ts"
|
|
152547
|
+
}
|
|
152548
|
+
},
|
|
151774
152549
|
{
|
|
151775
152550
|
"kind": "method",
|
|
151776
152551
|
"name": "markTo",
|
|
@@ -151782,9 +152557,9 @@
|
|
|
151782
152557
|
},
|
|
151783
152558
|
"parameters": [
|
|
151784
152559
|
{
|
|
151785
|
-
"name": "
|
|
152560
|
+
"name": "marked",
|
|
151786
152561
|
"type": {
|
|
151787
|
-
"text": "{ link: HTMLAnchorElement; target: Element }
|
|
152562
|
+
"text": "{ link: HTMLAnchorElement; target: Element }[]"
|
|
151788
152563
|
}
|
|
151789
152564
|
}
|
|
151790
152565
|
],
|
|
@@ -151949,6 +152724,60 @@
|
|
|
151949
152724
|
"module": "src/outline/root/outline-root.ts"
|
|
151950
152725
|
}
|
|
151951
152726
|
},
|
|
152727
|
+
{
|
|
152728
|
+
"kind": "method",
|
|
152729
|
+
"name": "scrollToSection",
|
|
152730
|
+
"return": {
|
|
152731
|
+
"type": {
|
|
152732
|
+
"text": "boolean"
|
|
152733
|
+
}
|
|
152734
|
+
},
|
|
152735
|
+
"parameters": [
|
|
152736
|
+
{
|
|
152737
|
+
"name": "id",
|
|
152738
|
+
"type": {
|
|
152739
|
+
"text": "string"
|
|
152740
|
+
}
|
|
152741
|
+
}
|
|
152742
|
+
],
|
|
152743
|
+
"description": "Scrolls to the section with this id, as a press on its link does, with\n`behavior`, and marks its link at once. The address and focus stay where\nthey are. Returns whether the outline has a link to that section.",
|
|
152744
|
+
"type": {
|
|
152745
|
+
"text": "scrollToSection(id: string) => boolean"
|
|
152746
|
+
},
|
|
152747
|
+
"inheritedFrom": {
|
|
152748
|
+
"name": "HelixHeadlessOutline",
|
|
152749
|
+
"module": "src/outline/root/outline-root.ts"
|
|
152750
|
+
}
|
|
152751
|
+
},
|
|
152752
|
+
{
|
|
152753
|
+
"kind": "method",
|
|
152754
|
+
"name": "travel",
|
|
152755
|
+
"privacy": "private",
|
|
152756
|
+
"return": {
|
|
152757
|
+
"type": {
|
|
152758
|
+
"text": "boolean"
|
|
152759
|
+
}
|
|
152760
|
+
},
|
|
152761
|
+
"parameters": [
|
|
152762
|
+
{
|
|
152763
|
+
"name": "section",
|
|
152764
|
+
"type": {
|
|
152765
|
+
"text": "{ link: HTMLAnchorElement; target: Element }"
|
|
152766
|
+
}
|
|
152767
|
+
},
|
|
152768
|
+
{
|
|
152769
|
+
"name": "scroll",
|
|
152770
|
+
"type": {
|
|
152771
|
+
"text": "boolean"
|
|
152772
|
+
}
|
|
152773
|
+
}
|
|
152774
|
+
],
|
|
152775
|
+
"description": "Marks the section a reader asked for, and holds the mark there until the\npage stops moving. Scrolls to it where `scroll` says this element does\nthe scrolling, and returns whether it did.",
|
|
152776
|
+
"inheritedFrom": {
|
|
152777
|
+
"name": "HelixHeadlessOutline",
|
|
152778
|
+
"module": "src/outline/root/outline-root.ts"
|
|
152779
|
+
}
|
|
152780
|
+
},
|
|
151952
152781
|
{
|
|
151953
152782
|
"kind": "method",
|
|
151954
152783
|
"name": "watch",
|
|
@@ -151975,6 +152804,21 @@
|
|
|
151975
152804
|
"module": "src/outline/root/outline-root.ts"
|
|
151976
152805
|
}
|
|
151977
152806
|
},
|
|
152807
|
+
{
|
|
152808
|
+
"kind": "method",
|
|
152809
|
+
"name": "writeDepths",
|
|
152810
|
+
"privacy": "private",
|
|
152811
|
+
"return": {
|
|
152812
|
+
"type": {
|
|
152813
|
+
"text": "void"
|
|
152814
|
+
}
|
|
152815
|
+
},
|
|
152816
|
+
"description": "Writes each link's depth in the outline, from 1, as `data-depth`: the\nlist items around it inside the outline, or for a flat run, its place in\nthe lists `data-level` makes of it.\n\nOn the consumer's links, as `aria-current` is, and only after the first\nrender, where a framework has hydrated them.",
|
|
152817
|
+
"inheritedFrom": {
|
|
152818
|
+
"name": "HelixHeadlessOutline",
|
|
152819
|
+
"module": "src/outline/root/outline-root.ts"
|
|
152820
|
+
}
|
|
152821
|
+
},
|
|
151978
152822
|
{
|
|
151979
152823
|
"kind": "method",
|
|
151980
152824
|
"name": "unland",
|
|
@@ -152521,6 +153365,19 @@
|
|
|
152521
153365
|
"module": "src/outline/root/outline-root.ts"
|
|
152522
153366
|
}
|
|
152523
153367
|
},
|
|
153368
|
+
{
|
|
153369
|
+
"name": "marks",
|
|
153370
|
+
"type": {
|
|
153371
|
+
"text": "'reading' | 'visible'"
|
|
153372
|
+
},
|
|
153373
|
+
"default": "'reading'",
|
|
153374
|
+
"description": "Which links are marked. `reading` marks the one section being read, the\nlast whose heading has passed the reading line. `visible` marks every\nsection with part of it on screen, and the mark runs across their links.",
|
|
153375
|
+
"fieldName": "marks",
|
|
153376
|
+
"inheritedFrom": {
|
|
153377
|
+
"name": "HelixHeadlessOutline",
|
|
153378
|
+
"module": "src/outline/root/outline-root.ts"
|
|
153379
|
+
}
|
|
153380
|
+
},
|
|
152524
153381
|
{
|
|
152525
153382
|
"name": "offset",
|
|
152526
153383
|
"type": {
|
|
@@ -159036,6 +159893,20 @@
|
|
|
159036
159893
|
"module": "src/popover/root/popover-root.ts"
|
|
159037
159894
|
}
|
|
159038
159895
|
},
|
|
159896
|
+
{
|
|
159897
|
+
"kind": "field",
|
|
159898
|
+
"name": "anchor",
|
|
159899
|
+
"type": {
|
|
159900
|
+
"text": "Element | string"
|
|
159901
|
+
},
|
|
159902
|
+
"default": "''",
|
|
159903
|
+
"description": "The element the panel opens against, where that is not the trigger: its\n`id` in the same document or shadow root, or the element itself. Left\nempty, the panel opens against the trigger, or against the button whose\ncommand opened it.",
|
|
159904
|
+
"attribute": "anchor",
|
|
159905
|
+
"inheritedFrom": {
|
|
159906
|
+
"name": "HelixHeadlessPopover",
|
|
159907
|
+
"module": "src/popover/root/popover-root.ts"
|
|
159908
|
+
}
|
|
159909
|
+
},
|
|
159039
159910
|
{
|
|
159040
159911
|
"kind": "field",
|
|
159041
159912
|
"name": "arrow",
|
|
@@ -159050,6 +159921,33 @@
|
|
|
159050
159921
|
"module": "src/popover/root/popover-root.ts"
|
|
159051
159922
|
}
|
|
159052
159923
|
},
|
|
159924
|
+
{
|
|
159925
|
+
"kind": "field",
|
|
159926
|
+
"name": "containerPadding",
|
|
159927
|
+
"type": {
|
|
159928
|
+
"text": "number | undefined"
|
|
159929
|
+
},
|
|
159930
|
+
"description": "How close to the window's edges the panel may come, in pixels, when it\nslides, shrinks or moves to the other side to fit. Left unset, it slides\nand shrinks to 8 pixels from an edge and moves to the other side only\nonce it would cross one.",
|
|
159931
|
+
"attribute": "container-padding",
|
|
159932
|
+
"inheritedFrom": {
|
|
159933
|
+
"name": "HelixHeadlessPopover",
|
|
159934
|
+
"module": "src/popover/root/popover-root.ts"
|
|
159935
|
+
}
|
|
159936
|
+
},
|
|
159937
|
+
{
|
|
159938
|
+
"kind": "field",
|
|
159939
|
+
"name": "crossOffset",
|
|
159940
|
+
"type": {
|
|
159941
|
+
"text": "number"
|
|
159942
|
+
},
|
|
159943
|
+
"default": "0",
|
|
159944
|
+
"description": "How far to slide the panel along the side it is on, in pixels: to the\nright on the top or the bottom, and down on the left or the right.",
|
|
159945
|
+
"attribute": "cross-offset",
|
|
159946
|
+
"inheritedFrom": {
|
|
159947
|
+
"name": "HelixHeadlessPopover",
|
|
159948
|
+
"module": "src/popover/root/popover-root.ts"
|
|
159949
|
+
}
|
|
159950
|
+
},
|
|
159053
159951
|
{
|
|
159054
159952
|
"kind": "field",
|
|
159055
159953
|
"name": "fallbackLabel",
|
|
@@ -159067,6 +159965,20 @@
|
|
|
159067
159965
|
"module": "src/popover/root/popover-root.ts"
|
|
159068
159966
|
}
|
|
159069
159967
|
},
|
|
159968
|
+
{
|
|
159969
|
+
"kind": "field",
|
|
159970
|
+
"name": "flip",
|
|
159971
|
+
"type": {
|
|
159972
|
+
"text": "boolean"
|
|
159973
|
+
},
|
|
159974
|
+
"default": "true",
|
|
159975
|
+
"description": "Whether the panel moves to the other side of the trigger when its own\nside has no room. On by default. Write `flip=\"false\"` to keep it on its\nside, where it shrinks to fit, as React Aria's `shouldFlip` turns off.",
|
|
159976
|
+
"attribute": "flip",
|
|
159977
|
+
"inheritedFrom": {
|
|
159978
|
+
"name": "HelixHeadlessPopover",
|
|
159979
|
+
"module": "src/popover/root/popover-root.ts"
|
|
159980
|
+
}
|
|
159981
|
+
},
|
|
159070
159982
|
{
|
|
159071
159983
|
"kind": "field",
|
|
159072
159984
|
"name": "label",
|
|
@@ -159150,7 +160062,7 @@
|
|
|
159150
160062
|
"name": "panel",
|
|
159151
160063
|
"privacy": "private",
|
|
159152
160064
|
"readonly": true,
|
|
159153
|
-
"default": "new PopoverController(this, { anchor: () => this.
|
|
160065
|
+
"default": "new PopoverController(this, { anchor: () => this.placedAgainst, arrow: () => this.partNamed('arrow'), /* The host *and* whatever invoked it, never the panel alone. An outside press is measured against this, and the host is not a box to rely on, a sheet being free to give it none, so a boundary of the panel alone would close on the very press that opened it. A `--toggle` button outside the host is part of the control by any reading a reader would give it: pressing it while the panel is open should close it once, not close it on `pointerdown` and reopen it on the `click` that follows. */ boundary: (): (HTMLElement | undefined)[] => [this, this.invoker], crossOffset: () => this.crossOffset, flip: () => this.flip, /* Measured to the point where there is one, as `Tooltip` measures it: the arrow is a square turned on its center, which reaches `n / sqrt(2)` past the edge it sits on. */ offset: () => this.offset + arrowReach(this.partNamed('arrow')), onDismiss: () => this.dismiss(), /* The side the panel landed on, for a sheet outside that draws by side, where no attribute can follow `::part()`. As `Tooltip` records it. */ onPlace: (placement) => { const side = sideOf(placement) this.toggleState('aligned-end', placement.endsWith('-end')) this.toggleState('aligned-start', placement.endsWith('-start')) this.toggleState('placed-bottom', side === 'bottom') this.toggleState('placed-left', side === 'left') this.toggleState('placed-right', side === 'right') this.toggleState('placed-top', side === 'top') this.side = side }, open: () => this.open, padding: () => this.containerPadding, placement: () => this.placement, surface: () => this.partNamed('popover'), })",
|
|
159154
160066
|
"inheritedFrom": {
|
|
159155
160067
|
"name": "HelixHeadlessPopover",
|
|
159156
160068
|
"module": "src/popover/root/popover-root.ts"
|
|
@@ -159241,7 +160153,7 @@
|
|
|
159241
160153
|
"name": "commands",
|
|
159242
160154
|
"privacy": "protected",
|
|
159243
160155
|
"readonly": true,
|
|
159244
|
-
"default": "new CommandController(this, { commands: { '--close': () => this.hide(), '--show': (source: Element | null) => { this.invoker = source instanceof HTMLElement ? source : undefined this.show() }, '--toggle': (source: Element | null) => { this.invoker = source instanceof HTMLElement ? source : undefined if (this.open) { this.hide() } else { this.show() } }, }, })",
|
|
160156
|
+
"default": "new CommandController(this, { commands: { '--close': () => this.hide(), '--show': (source: Element | null) => { this.invoker = source instanceof HTMLElement ? source : undefined this.show() }, '--toggle': (source: Element | null) => { this.invoker = source instanceof HTMLElement ? source : undefined if (this.open) { this.hide() } else { this.show() } }, }, expanded: () => this.open, })",
|
|
159245
160157
|
"inheritedFrom": {
|
|
159246
160158
|
"name": "HelixHeadlessPopover",
|
|
159247
160159
|
"module": "src/popover/root/popover-root.ts"
|
|
@@ -159249,7 +160161,7 @@
|
|
|
159249
160161
|
},
|
|
159250
160162
|
{
|
|
159251
160163
|
"kind": "field",
|
|
159252
|
-
"name": "
|
|
160164
|
+
"name": "placedAgainst",
|
|
159253
160165
|
"type": {
|
|
159254
160166
|
"text": "HTMLElement"
|
|
159255
160167
|
},
|
|
@@ -159261,6 +160173,35 @@
|
|
|
159261
160173
|
"module": "src/popover/root/popover-root.ts"
|
|
159262
160174
|
}
|
|
159263
160175
|
},
|
|
160176
|
+
{
|
|
160177
|
+
"kind": "field",
|
|
160178
|
+
"name": "trigger",
|
|
160179
|
+
"type": {
|
|
160180
|
+
"text": "HTMLElement"
|
|
160181
|
+
},
|
|
160182
|
+
"privacy": "private",
|
|
160183
|
+
"description": "The element that opened the panel, which focus goes back to.",
|
|
160184
|
+
"readonly": true,
|
|
160185
|
+
"inheritedFrom": {
|
|
160186
|
+
"name": "HelixHeadlessPopover",
|
|
160187
|
+
"module": "src/popover/root/popover-root.ts"
|
|
160188
|
+
}
|
|
160189
|
+
},
|
|
160190
|
+
{
|
|
160191
|
+
"kind": "method",
|
|
160192
|
+
"name": "dismiss",
|
|
160193
|
+
"privacy": "private",
|
|
160194
|
+
"return": {
|
|
160195
|
+
"type": {
|
|
160196
|
+
"text": "void"
|
|
160197
|
+
}
|
|
160198
|
+
},
|
|
160199
|
+
"description": "A press outside, or Escape, closing the panel.\n\n**Focus goes back to the trigger where the press put it nowhere.** The\npress is heard on `pointerdown`, and the browser moves focus a moment\nlater: onto what was pressed where that takes focus, and to the body where\nit does not. A popover dismissed by a press on text was left with focus on\nthe body, measured in Chromium, where React Aria's returns it to the\ntrigger. Read after the press, once the browser has moved it.",
|
|
160200
|
+
"inheritedFrom": {
|
|
160201
|
+
"name": "HelixHeadlessPopover",
|
|
160202
|
+
"module": "src/popover/root/popover-root.ts"
|
|
160203
|
+
}
|
|
160204
|
+
},
|
|
159264
160205
|
{
|
|
159265
160206
|
"kind": "method",
|
|
159266
160207
|
"name": "show",
|
|
@@ -159836,6 +160777,19 @@
|
|
|
159836
160777
|
"module": "src/mixins/mixin-controller-open/mixin-controller-open.ts"
|
|
159837
160778
|
}
|
|
159838
160779
|
},
|
|
160780
|
+
{
|
|
160781
|
+
"name": "anchor",
|
|
160782
|
+
"type": {
|
|
160783
|
+
"text": "Element | string"
|
|
160784
|
+
},
|
|
160785
|
+
"default": "''",
|
|
160786
|
+
"description": "The element the panel opens against, where that is not the trigger: its\n`id` in the same document or shadow root, or the element itself. Left\nempty, the panel opens against the trigger, or against the button whose\ncommand opened it.",
|
|
160787
|
+
"fieldName": "anchor",
|
|
160788
|
+
"inheritedFrom": {
|
|
160789
|
+
"name": "HelixHeadlessPopover",
|
|
160790
|
+
"module": "src/popover/root/popover-root.ts"
|
|
160791
|
+
}
|
|
160792
|
+
},
|
|
159839
160793
|
{
|
|
159840
160794
|
"name": "arrow",
|
|
159841
160795
|
"type": {
|
|
@@ -159849,6 +160803,31 @@
|
|
|
159849
160803
|
"module": "src/popover/root/popover-root.ts"
|
|
159850
160804
|
}
|
|
159851
160805
|
},
|
|
160806
|
+
{
|
|
160807
|
+
"name": "container-padding",
|
|
160808
|
+
"type": {
|
|
160809
|
+
"text": "number | undefined"
|
|
160810
|
+
},
|
|
160811
|
+
"description": "How close to the window's edges the panel may come, in pixels, when it\nslides, shrinks or moves to the other side to fit. Left unset, it slides\nand shrinks to 8 pixels from an edge and moves to the other side only\nonce it would cross one.",
|
|
160812
|
+
"fieldName": "containerPadding",
|
|
160813
|
+
"inheritedFrom": {
|
|
160814
|
+
"name": "HelixHeadlessPopover",
|
|
160815
|
+
"module": "src/popover/root/popover-root.ts"
|
|
160816
|
+
}
|
|
160817
|
+
},
|
|
160818
|
+
{
|
|
160819
|
+
"name": "cross-offset",
|
|
160820
|
+
"type": {
|
|
160821
|
+
"text": "number"
|
|
160822
|
+
},
|
|
160823
|
+
"default": "0",
|
|
160824
|
+
"description": "How far to slide the panel along the side it is on, in pixels: to the\nright on the top or the bottom, and down on the left or the right.",
|
|
160825
|
+
"fieldName": "crossOffset",
|
|
160826
|
+
"inheritedFrom": {
|
|
160827
|
+
"name": "HelixHeadlessPopover",
|
|
160828
|
+
"module": "src/popover/root/popover-root.ts"
|
|
160829
|
+
}
|
|
160830
|
+
},
|
|
159852
160831
|
{
|
|
159853
160832
|
"name": "fallback-label",
|
|
159854
160833
|
"type": {
|
|
@@ -159862,6 +160841,19 @@
|
|
|
159862
160841
|
"module": "src/popover/root/popover-root.ts"
|
|
159863
160842
|
}
|
|
159864
160843
|
},
|
|
160844
|
+
{
|
|
160845
|
+
"name": "flip",
|
|
160846
|
+
"type": {
|
|
160847
|
+
"text": "boolean"
|
|
160848
|
+
},
|
|
160849
|
+
"default": "true",
|
|
160850
|
+
"description": "Whether the panel moves to the other side of the trigger when its own\nside has no room. On by default. Write `flip=\"false\"` to keep it on its\nside, where it shrinks to fit, as React Aria's `shouldFlip` turns off.",
|
|
160851
|
+
"fieldName": "flip",
|
|
160852
|
+
"inheritedFrom": {
|
|
160853
|
+
"name": "HelixHeadlessPopover",
|
|
160854
|
+
"module": "src/popover/root/popover-root.ts"
|
|
160855
|
+
}
|
|
160856
|
+
},
|
|
159865
160857
|
{
|
|
159866
160858
|
"name": "label",
|
|
159867
160859
|
"type": {
|
|
@@ -160080,6 +161072,22 @@
|
|
|
160080
161072
|
}
|
|
160081
161073
|
],
|
|
160082
161074
|
"cssStates": [
|
|
161075
|
+
{
|
|
161076
|
+
"description": "While the panel is aligned to the end of the side it sits on.",
|
|
161077
|
+
"name": "aligned-end",
|
|
161078
|
+
"inheritedFrom": {
|
|
161079
|
+
"name": "HelixHeadlessPopover",
|
|
161080
|
+
"module": "src/popover/root/popover-root.ts"
|
|
161081
|
+
}
|
|
161082
|
+
},
|
|
161083
|
+
{
|
|
161084
|
+
"description": "While the panel is aligned to the start of the side it sits on.",
|
|
161085
|
+
"name": "aligned-start",
|
|
161086
|
+
"inheritedFrom": {
|
|
161087
|
+
"name": "HelixHeadlessPopover",
|
|
161088
|
+
"module": "src/popover/root/popover-root.ts"
|
|
161089
|
+
}
|
|
161090
|
+
},
|
|
160083
161091
|
{
|
|
160084
161092
|
"description": "From the moment the panel shows until its entrance has finished.",
|
|
160085
161093
|
"name": "entering",
|
|
@@ -168420,6 +169428,22 @@
|
|
|
168420
169428
|
"module": "src/sandbox/root/sandbox-root.js"
|
|
168421
169429
|
}
|
|
168422
169430
|
},
|
|
169431
|
+
{
|
|
169432
|
+
"kind": "js",
|
|
169433
|
+
"name": "ManifestLike",
|
|
169434
|
+
"declaration": {
|
|
169435
|
+
"name": "ManifestLike",
|
|
169436
|
+
"module": "./source/editing.js"
|
|
169437
|
+
}
|
|
169438
|
+
},
|
|
169439
|
+
{
|
|
169440
|
+
"kind": "js",
|
|
169441
|
+
"name": "manifestWords",
|
|
169442
|
+
"declaration": {
|
|
169443
|
+
"name": "manifestWords",
|
|
169444
|
+
"module": "./source/editing.js"
|
|
169445
|
+
}
|
|
169446
|
+
},
|
|
168423
169447
|
{
|
|
168424
169448
|
"kind": "js",
|
|
168425
169449
|
"name": "*",
|
|
@@ -168553,7 +169577,7 @@
|
|
|
168553
169577
|
"declarations": [
|
|
168554
169578
|
{
|
|
168555
169579
|
"kind": "class",
|
|
168556
|
-
"description": "A sandboxed `<iframe>` that loads `src`, a document you provide. That\ndocument imports what the examples need, listens for a render message, and\nwrites the markup into itself.\n\n**Without `src`, the frame loads a built-in document**, so a sandbox renders\nwith nothing to host. It runs HTML, CSS, and scripts, and reports the\nconsole, uncaught errors, its height, and presses as a frame on\n`servePreview` does. It defines no element, so an example that uses Helix\ncomponents needs a `src` that imports them.\n\n**`imports` lets an example import packages by name** in the built-in\ndocument, as an import map: each name maps to the address of an ES module,\nsuch as `{\"canvas-confetti\": \"https://esm.sh/canvas-confetti@1.9.3\"}`, and\n`import confetti from 'canvas-confetti'` in the `js` pane then loads it. A\nCDN that serves npm packages as modules, such as esm.sh or jsDelivr's\n`+esm`, gives every package an address. A new map loads the document again,\nsince a browser reads one only as a document starts. A `src` document\ndeclares its own.\n\n**Examples render in a frame**, so an example's styles and scripts do not\naffect the page around the sandbox, and `position: fixed` stays inside the\npane. The frame starts empty, with its own stylesheets and its own custom\nelement registry, so `src` must load the styles and components the examples\nuse.\n\n**The source is untrusted, and the frame keeps it isolated.** The frame uses\n`sandbox=\"allow-scripts\"` and never `allow-same-origin`. Together, the two\nlet a document on the same origin remove its own sandbox, which is the same\nas having none.\n\n**A preview says where it is.** It is `:state(loading)` from the moment it\nhas a `src` until that document can take the example, and again through\n`reload()`. It is `:state(failed)` once the example throws an error it does\nnot catch, until the next source is sent, which a frame on `servePreview`\nreports. A page draws its own spinner or message from either, such as a\nsibling shown by `helix-sandbox-preview:state(failed) + .message`.\n\n**A failed preview shows the error over the example**, in the `error` part,\nuntil the next source is sent. The terminal says it too, so the part is not\nannounced. Hide it with `::part(error) { display: none }
|
|
169580
|
+
"description": "A sandboxed `<iframe>` that loads `src`, a document you provide. That\ndocument imports what the examples need, listens for a render message, and\nwrites the markup into itself.\n\n**Without `src`, the frame loads a built-in document**, so a sandbox renders\nwith nothing to host. It runs HTML, CSS, and scripts, and reports the\nconsole, uncaught errors, its height, and presses as a frame on\n`servePreview` does. It defines no element, so an example that uses Helix\ncomponents needs a `src` that imports them.\n\n**`imports` lets an example import packages by name** in the built-in\ndocument, as an import map: each name maps to the address of an ES module,\nsuch as `{\"canvas-confetti\": \"https://esm.sh/canvas-confetti@1.9.3\"}`, and\n`import confetti from 'canvas-confetti'` in the `js` pane then loads it. A\nCDN that serves npm packages as modules, such as esm.sh or jsDelivr's\n`+esm`, gives every package an address. A new map loads the document again,\nsince a browser reads one only as a document starts. A `src` document\ndeclares its own.\n\n**`dependencies` names packages by version instead**, as a `package.json`\ndoes: `{\"canvas-confetti\": \"^1.9\"}` loads `canvas-confetti` and the paths\nunder it from `cdn`, `https://esm.sh/` by default, at the version or range\ngiven. An address in `imports` wins over a package of the same name.\n\n**`modules` holds files the example imports by a relative path**: each path,\nsuch as `utils.js`, to its source, and `import { add } from './utils.js'`\nin the `js` pane or in another module loads it. A sandbox writes each pane\nnamed for a module file here.\n\n**Examples render in a frame**, so an example's styles and scripts do not\naffect the page around the sandbox, and `position: fixed` stays inside the\npane. The frame starts empty, with its own stylesheets and its own custom\nelement registry, so `src` must load the styles and components the examples\nuse.\n\n**The source is untrusted, and the frame keeps it isolated.** The frame uses\n`sandbox=\"allow-scripts\"` and never `allow-same-origin`. Together, the two\nlet a document on the same origin remove its own sandbox, which is the same\nas having none.\n\n**A preview says where it is.** It is `:state(loading)` from the moment it\nhas a `src` until that document can take the example, and again through\n`reload()`. It is `:state(failed)` once the example throws an error it does\nnot catch, until the next source is sent, which a frame on `servePreview`\nreports. A page draws its own spinner or message from either, such as a\nsibling shown by `helix-sandbox-preview:state(failed) + .message`.\n\n**A failed preview shows the error over the example**, in the `error` part,\nuntil the next source is sent. The terminal says it too, so the part is not\nannounced, and it is the frame's description while it shows, so a screen\nreader reads it with the frame. Hide it with `::part(error) { display: none }`\nwhere the page draws its own.\n\n**`controls` draws two buttons in the preview's corner**: one reloads the\nframe's document, as `reload()` does, and one opens the example in a new\ntab, as `open()` does. The tab runs it in a frame sandboxed as this one is.",
|
|
168557
169581
|
"name": "HelixSandboxPreview",
|
|
168558
169582
|
"cssParts": [
|
|
168559
169583
|
{
|
|
@@ -168588,6 +169612,16 @@
|
|
|
168588
169612
|
"default": "'helix-sandbox-preview'",
|
|
168589
169613
|
"description": "The key this part's words are registered under, its tag:\n`registerWords('de', { 'helix-sandbox-preview': { label: 'Vorschau' } })`."
|
|
168590
169614
|
},
|
|
169615
|
+
{
|
|
169616
|
+
"kind": "field",
|
|
169617
|
+
"name": "cdn",
|
|
169618
|
+
"type": {
|
|
169619
|
+
"text": "string"
|
|
169620
|
+
},
|
|
169621
|
+
"default": "'https://esm.sh/'",
|
|
169622
|
+
"description": "The address the packages in `dependencies` load from, which the name, an\n`@` and the version follow.",
|
|
169623
|
+
"attribute": "cdn"
|
|
169624
|
+
},
|
|
168591
169625
|
{
|
|
168592
169626
|
"kind": "field",
|
|
168593
169627
|
"name": "colorMode",
|
|
@@ -168608,6 +169642,15 @@
|
|
|
168608
169642
|
"attribute": "controls",
|
|
168609
169643
|
"reflects": true
|
|
168610
169644
|
},
|
|
169645
|
+
{
|
|
169646
|
+
"kind": "field",
|
|
169647
|
+
"name": "dependencies",
|
|
169648
|
+
"type": {
|
|
169649
|
+
"text": "Record<string, string> | undefined"
|
|
169650
|
+
},
|
|
169651
|
+
"description": "The npm packages an example can import by name in the built-in document,\neach name to a version or a range, as a `package.json` lists them. Each\nloads from `cdn`. Set it as JSON in the attribute or as an object. Not\nread where `src` is set.",
|
|
169652
|
+
"attribute": "dependencies"
|
|
169653
|
+
},
|
|
168611
169654
|
{
|
|
168612
169655
|
"kind": "field",
|
|
168613
169656
|
"name": "direction",
|
|
@@ -168648,6 +169691,15 @@
|
|
|
168648
169691
|
"description": "How the example is placed in the frame.\n\n`padded` insets it and leaves it at the top, which is the resting case and\nwhat an absent value sends. `centered` gives it a measure and centers that\nbox in the frame. `hug` shrinks the example to its own content and centers\nwhat is left, which is the difference that matters for a component whose\nroot is a full-width block. `fullscreen` is the whole frame with no inset.\n\nNot reflected, for `direction`'s reason: the placement is applied by the\ndocument inside the frame, against its own root, so no rule on this side\ncould read it.",
|
|
168649
169692
|
"attribute": "layout"
|
|
168650
169693
|
},
|
|
169694
|
+
{
|
|
169695
|
+
"kind": "field",
|
|
169696
|
+
"name": "modules",
|
|
169697
|
+
"type": {
|
|
169698
|
+
"text": "Record<string, string> | undefined"
|
|
169699
|
+
},
|
|
169700
|
+
"description": "Module files an example imports by a relative path in the built-in\ndocument, each path, such as `utils.js`, to its source. Not read where\n`src` is set.",
|
|
169701
|
+
"attribute": "modules"
|
|
169702
|
+
},
|
|
168651
169703
|
{
|
|
168652
169704
|
"kind": "field",
|
|
168653
169705
|
"name": "openLabel",
|
|
@@ -168780,6 +169832,16 @@
|
|
|
168780
169832
|
"privacy": "private",
|
|
168781
169833
|
"readonly": true
|
|
168782
169834
|
},
|
|
169835
|
+
{
|
|
169836
|
+
"kind": "field",
|
|
169837
|
+
"name": "importMap",
|
|
169838
|
+
"type": {
|
|
169839
|
+
"text": "Record<string, string>"
|
|
169840
|
+
},
|
|
169841
|
+
"privacy": "private",
|
|
169842
|
+
"description": "The import map of the built-in document: each module file, by its path\nand by the address its neighbors import it at, each package in\n`dependencies` and the paths under it, and `imports` over all of them.",
|
|
169843
|
+
"readonly": true
|
|
169844
|
+
},
|
|
168783
169845
|
{
|
|
168784
169846
|
"kind": "field",
|
|
168785
169847
|
"name": "handleFrameLoad",
|
|
@@ -168872,6 +169934,16 @@
|
|
|
168872
169934
|
"text": "reload() => void"
|
|
168873
169935
|
}
|
|
168874
169936
|
},
|
|
169937
|
+
{
|
|
169938
|
+
"kind": "field",
|
|
169939
|
+
"name": "loadedMap",
|
|
169940
|
+
"type": {
|
|
169941
|
+
"text": "string"
|
|
169942
|
+
},
|
|
169943
|
+
"privacy": "private",
|
|
169944
|
+
"default": "''",
|
|
169945
|
+
"description": "The import map the built-in document was last loaded with, as JSON."
|
|
169946
|
+
},
|
|
168875
169947
|
{
|
|
168876
169948
|
"kind": "method",
|
|
168877
169949
|
"name": "unready",
|
|
@@ -169253,6 +170325,15 @@
|
|
|
169253
170325
|
}
|
|
169254
170326
|
],
|
|
169255
170327
|
"attributes": [
|
|
170328
|
+
{
|
|
170329
|
+
"name": "cdn",
|
|
170330
|
+
"type": {
|
|
170331
|
+
"text": "string"
|
|
170332
|
+
},
|
|
170333
|
+
"default": "'https://esm.sh/'",
|
|
170334
|
+
"description": "The address the packages in `dependencies` load from, which the name, an\n`@` and the version follow.",
|
|
170335
|
+
"fieldName": "cdn"
|
|
170336
|
+
},
|
|
169256
170337
|
{
|
|
169257
170338
|
"name": "color-mode",
|
|
169258
170339
|
"type": {
|
|
@@ -169270,6 +170351,14 @@
|
|
|
169270
170351
|
"description": "Whether the preview draws a reload button and a button that opens the\nexample in a new tab, in its corner.",
|
|
169271
170352
|
"fieldName": "controls"
|
|
169272
170353
|
},
|
|
170354
|
+
{
|
|
170355
|
+
"name": "dependencies",
|
|
170356
|
+
"type": {
|
|
170357
|
+
"text": "Record<string, string> | undefined"
|
|
170358
|
+
},
|
|
170359
|
+
"description": "The npm packages an example can import by name in the built-in document,\neach name to a version or a range, as a `package.json` lists them. Each\nloads from `cdn`. Set it as JSON in the attribute or as an object. Not\nread where `src` is set.",
|
|
170360
|
+
"fieldName": "dependencies"
|
|
170361
|
+
},
|
|
169273
170362
|
{
|
|
169274
170363
|
"name": "direction",
|
|
169275
170364
|
"type": {
|
|
@@ -169303,6 +170392,14 @@
|
|
|
169303
170392
|
"description": "How the example is placed in the frame.\n\n`padded` insets it and leaves it at the top, which is the resting case and\nwhat an absent value sends. `centered` gives it a measure and centers that\nbox in the frame. `hug` shrinks the example to its own content and centers\nwhat is left, which is the difference that matters for a component whose\nroot is a full-width block. `fullscreen` is the whole frame with no inset.\n\nNot reflected, for `direction`'s reason: the placement is applied by the\ndocument inside the frame, against its own root, so no rule on this side\ncould read it.",
|
|
169304
170393
|
"fieldName": "layout"
|
|
169305
170394
|
},
|
|
170395
|
+
{
|
|
170396
|
+
"name": "modules",
|
|
170397
|
+
"type": {
|
|
170398
|
+
"text": "Record<string, string> | undefined"
|
|
170399
|
+
},
|
|
170400
|
+
"description": "Module files an example imports by a relative path in the built-in\ndocument, each path, such as `utils.js`, to its source. Not read where\n`src` is set.",
|
|
170401
|
+
"fieldName": "modules"
|
|
170402
|
+
},
|
|
169306
170403
|
{
|
|
169307
170404
|
"name": "open-label",
|
|
169308
170405
|
"type": {
|
|
@@ -169444,7 +170541,7 @@
|
|
|
169444
170541
|
"declarations": [
|
|
169445
170542
|
{
|
|
169446
170543
|
"kind": "class",
|
|
169447
|
-
"description": "A source pane dispatches `helix-before-edit`, which bubbles, and the sandbox\npasses the value to the preview slotted into it. The source pane and the\npreview do not reference each other, so you can replace either one or use it\nalone.\n\nThe preview runs an edit once typing has rested for `preview-delay`, 300\nmilliseconds by default, so a word typed reloads it once. A pane's text when the sandbox starts reaches it at once.\n\nThe event carries the pane's `name`, so one sandbox can hold several panes.\n`html` sets the preview's markup
|
|
170544
|
+
"description": "A source pane dispatches `helix-before-edit`, which bubbles, and the sandbox\npasses the value to the preview slotted into it. The source pane and the\npreview do not reference each other, so you can replace either one or use it\nalone.\n\nThe preview runs an edit once typing has rested for `preview-delay`, 300\nmilliseconds by default, so a word typed reloads it once. A pane's text when the sandbox starts reaches it at once.\n\nThe event carries the pane's `name`, so one sandbox can hold several panes.\nThe names the sandbox writes into its previews:\n\n- `html` sets the preview's markup.\n- `css` sets its stylesheet.\n- `js` sets a script that runs as a module after the markup.\n- A module file name ending in `.js` or `.mjs`, such as `utils.js`, is a\n module the other scripts import by its path, `./utils.js`.\n- `package.json` sets the npm packages the scripts import by name, from its\n `dependencies`, which load from the preview's `cdn`.\n\nThe sandbox ignores a pane with any other name, so that pane can show\ncontent without changing the preview.\n\n**The sandbox is `:state(modified)` while a source pane holds an edit**, and\nthat pane's file tab is also `file-modified` and described as modified to\na screen reader. `reset()` puts every pane back to the source it was given.\n\n**The dividers are two nested `helix-splitter` elements**, which handle the\npointer, the keyboard, and the corner. The inner splitter holds the panes and\nthe outer one holds the panel, so the panel spans the full width.\n\n**Several source panes are files**, one shown at a time under a row of\ntabs, each named by the pane's `label` or, without one, its `name`. `file`\nholds the `name` of the pane shown. The tabs are a tab list: the arrow keys\nmove between them and show each pane, and `Home` and `End` go to the first\nand the last. Choosing one sends `helix-before-change` with the pane's\n`name`, which you can cancel, and `change` once `file` holds it. The panes\nnot shown carry `hidden`. One pane draws no tabs.\n\n**Any editor can be the source pane**: an element in the `source` slot with\na `name` that dispatches `helix-before-edit` with its text, which bubbles.\nA wrapper around CodeMirror or Monaco sends one on each change and is a pane\nlike `helix-sandbox-source`, and the sandbox reads its `value` to seed the\npreview. Dispatch `helix-caret` from it too for the status bar's position.\n\nSandbox is styled only and has behavior, as `Aura` is. Its behavior is the\nhand-off from a source pane to a preview frame, which works with any pane\nthat sends `helix-before-edit`, and what it draws is the layout around them:\ndividers, file tabs, and a panel. A page that wants another look slots its\nown panes and keeps the hand-off, so there is nothing for a headless version\nto hold.\n\nA development build warns about a source pane with no `label` and no `name`,\nwhose file tab would have no words.\n\nOn a focused divider, the arrow keys move it, and `Home` and `End` move it\nto its ends. `Enter` on the panes divider shuts the lead pane, and pressed\nagain it opens the pane where it was. `Enter` on the panel divider shuts the\npanel to `panel-collapsed-size`, and pressed again it opens the panel to its\nlast height.",
|
|
169448
170545
|
"name": "HelixSandbox",
|
|
169449
170546
|
"cssProperties": [
|
|
169450
170547
|
{
|
|
@@ -169473,6 +170570,10 @@
|
|
|
169473
170570
|
"description": "One file tab, `aria-selected` while its pane is shown.",
|
|
169474
170571
|
"name": "file"
|
|
169475
170572
|
},
|
|
170573
|
+
{
|
|
170574
|
+
"description": "A file tab whose pane holds an edit.",
|
|
170575
|
+
"name": "file-modified"
|
|
170576
|
+
},
|
|
169476
170577
|
{
|
|
169477
170578
|
"description": "The file tabs over the source panes, where there are several.",
|
|
169478
170579
|
"name": "files"
|
|
@@ -169592,6 +170693,19 @@
|
|
|
169592
170693
|
"description": "Which pane comes first, before the divider.\n\nA sandbox is read in one of two directions and the two are not a\npreference. A workbench is a place to write, so the source leads and the\npreview answers it. A reference page is a place to look, so the preview\nleads and the source is what a reader opens if they want to know how it was\ndone. Same component, opposite reading order, and no consumer should have\nto slot a preview into a hole named `source` to get it.\n\nNot reflected, because no rule selects on it: the panes already carry\n`data-pane`, which is what the stylesheet reaches for, and swapping the\nnames below keeps that true whichever way round they sit.\n\n`split` follows the lead pane rather than the source, so `split=\"30\"` means\nthe same thing in both directions: thirty percent to whatever comes first.",
|
|
169593
170694
|
"attribute": "lead"
|
|
169594
170695
|
},
|
|
170696
|
+
{
|
|
170697
|
+
"kind": "field",
|
|
170698
|
+
"name": "modifiedLabel",
|
|
170699
|
+
"type": {
|
|
170700
|
+
"text": "string"
|
|
170701
|
+
},
|
|
170702
|
+
"default": "'Modified'",
|
|
170703
|
+
"description": "The description of a file tab whose pane holds an edit, read by screen\nreaders after the file's name.",
|
|
170704
|
+
"attribute": "modified-label",
|
|
170705
|
+
"helix": {
|
|
170706
|
+
"words": true
|
|
170707
|
+
}
|
|
170708
|
+
},
|
|
169595
170709
|
{
|
|
169596
170710
|
"kind": "field",
|
|
169597
170711
|
"name": "orientation",
|
|
@@ -169649,9 +170763,75 @@
|
|
|
169649
170763
|
"name": "edits",
|
|
169650
170764
|
"privacy": "private",
|
|
169651
170765
|
"readonly": true,
|
|
169652
|
-
"default": "new Map<
|
|
170766
|
+
"default": "new Map<string, string>()",
|
|
169653
170767
|
"description": "The edits waiting out `previewDelay`, the last text of each pane."
|
|
169654
170768
|
},
|
|
170769
|
+
{
|
|
170770
|
+
"kind": "field",
|
|
170771
|
+
"name": "given",
|
|
170772
|
+
"privacy": "private",
|
|
170773
|
+
"readonly": true,
|
|
170774
|
+
"default": "new Map<Element, string>()",
|
|
170775
|
+
"description": "The source each pane was given, for a pane that does not say whether it is modified."
|
|
170776
|
+
},
|
|
170777
|
+
{
|
|
170778
|
+
"kind": "field",
|
|
170779
|
+
"name": "texts",
|
|
170780
|
+
"privacy": "private",
|
|
170781
|
+
"readonly": true,
|
|
170782
|
+
"default": "new Map<Element, string>()",
|
|
170783
|
+
"description": "The source each pane holds since its last edit."
|
|
170784
|
+
},
|
|
170785
|
+
{
|
|
170786
|
+
"kind": "field",
|
|
170787
|
+
"name": "drawnModified",
|
|
170788
|
+
"privacy": "private",
|
|
170789
|
+
"readonly": true,
|
|
170790
|
+
"default": "new Map<Element, boolean>()",
|
|
170791
|
+
"description": "Whether each pane held an edit when the file tabs were last drawn."
|
|
170792
|
+
},
|
|
170793
|
+
{
|
|
170794
|
+
"kind": "field",
|
|
170795
|
+
"name": "sources",
|
|
170796
|
+
"type": {
|
|
170797
|
+
"text": "Element[]"
|
|
170798
|
+
},
|
|
170799
|
+
"privacy": "private",
|
|
170800
|
+
"description": "The source panes slotted here.",
|
|
170801
|
+
"readonly": true
|
|
170802
|
+
},
|
|
170803
|
+
{
|
|
170804
|
+
"kind": "method",
|
|
170805
|
+
"name": "modifiedOf",
|
|
170806
|
+
"privacy": "private",
|
|
170807
|
+
"return": {
|
|
170808
|
+
"type": {
|
|
170809
|
+
"text": "boolean"
|
|
170810
|
+
}
|
|
170811
|
+
},
|
|
170812
|
+
"parameters": [
|
|
170813
|
+
{
|
|
170814
|
+
"name": "pane",
|
|
170815
|
+
"type": {
|
|
170816
|
+
"text": "Element"
|
|
170817
|
+
}
|
|
170818
|
+
}
|
|
170819
|
+
],
|
|
170820
|
+
"description": "Whether a pane holds an edit: as the pane says, where it has `modified`,\nas `helix-sandbox-source` has, and otherwise against the text it started\nwith."
|
|
170821
|
+
},
|
|
170822
|
+
{
|
|
170823
|
+
"kind": "method",
|
|
170824
|
+
"name": "reset",
|
|
170825
|
+
"return": {
|
|
170826
|
+
"type": {
|
|
170827
|
+
"text": "void"
|
|
170828
|
+
}
|
|
170829
|
+
},
|
|
170830
|
+
"description": "Puts every source pane back to the source it was given: through the\npane's own `reset()` where it has one, which sends an edit the previews\ntake, and otherwise by setting its `value` and writing it into the\npreviews.",
|
|
170831
|
+
"type": {
|
|
170832
|
+
"text": "reset() => void"
|
|
170833
|
+
}
|
|
170834
|
+
},
|
|
169655
170835
|
{
|
|
169656
170836
|
"kind": "field",
|
|
169657
170837
|
"name": "resting",
|
|
@@ -169902,7 +171082,7 @@
|
|
|
169902
171082
|
{
|
|
169903
171083
|
"name": "name",
|
|
169904
171084
|
"type": {
|
|
169905
|
-
"text": "
|
|
171085
|
+
"text": "string"
|
|
169906
171086
|
}
|
|
169907
171087
|
},
|
|
169908
171088
|
{
|
|
@@ -170689,6 +171869,15 @@
|
|
|
170689
171869
|
"description": "Which pane comes first, before the divider.\n\nA sandbox is read in one of two directions and the two are not a\npreference. A workbench is a place to write, so the source leads and the\npreview answers it. A reference page is a place to look, so the preview\nleads and the source is what a reader opens if they want to know how it was\ndone. Same component, opposite reading order, and no consumer should have\nto slot a preview into a hole named `source` to get it.\n\nNot reflected, because no rule selects on it: the panes already carry\n`data-pane`, which is what the stylesheet reaches for, and swapping the\nnames below keeps that true whichever way round they sit.\n\n`split` follows the lead pane rather than the source, so `split=\"30\"` means\nthe same thing in both directions: thirty percent to whatever comes first.",
|
|
170690
171870
|
"fieldName": "lead"
|
|
170691
171871
|
},
|
|
171872
|
+
{
|
|
171873
|
+
"name": "modified-label",
|
|
171874
|
+
"type": {
|
|
171875
|
+
"text": "string"
|
|
171876
|
+
},
|
|
171877
|
+
"default": "'Modified'",
|
|
171878
|
+
"description": "The description of a file tab whose pane holds an edit, read by screen\nreaders after the file's name.",
|
|
171879
|
+
"fieldName": "modifiedLabel"
|
|
171880
|
+
},
|
|
170692
171881
|
{
|
|
170693
171882
|
"name": "orientation",
|
|
170694
171883
|
"type": {
|
|
@@ -170747,6 +171936,10 @@
|
|
|
170747
171936
|
}
|
|
170748
171937
|
],
|
|
170749
171938
|
"cssStates": [
|
|
171939
|
+
{
|
|
171940
|
+
"description": "While a source pane holds an edit, until `reset()`.",
|
|
171941
|
+
"name": "modified"
|
|
171942
|
+
},
|
|
170750
171943
|
{
|
|
170751
171944
|
"description": "While there is a panel and it is no taller than `panel-collapsed-size`.",
|
|
170752
171945
|
"name": "panel-collapsed"
|
|
@@ -170787,6 +171980,10 @@
|
|
|
170787
171980
|
"description": "The preview frame, which runs its source inside a sandboxed document.",
|
|
170788
171981
|
"slug": "a-live-preview"
|
|
170789
171982
|
},
|
|
171983
|
+
{
|
|
171984
|
+
"description": "A source pane that closes brackets, marks the pair beside the caret, and completes words.",
|
|
171985
|
+
"slug": "editing-aids"
|
|
171986
|
+
},
|
|
170790
171987
|
{
|
|
170791
171988
|
"description": "The events for an edit, a cursor move, two dividers, and a console log.",
|
|
170792
171989
|
"min": 420,
|
|
@@ -170840,6 +172037,392 @@
|
|
|
170840
172037
|
}
|
|
170841
172038
|
]
|
|
170842
172039
|
},
|
|
172040
|
+
{
|
|
172041
|
+
"kind": "javascript-module",
|
|
172042
|
+
"path": "src/sandbox/source/editing.ts",
|
|
172043
|
+
"declarations": [
|
|
172044
|
+
{
|
|
172045
|
+
"kind": "function",
|
|
172046
|
+
"name": "syntaxOf",
|
|
172047
|
+
"return": {
|
|
172048
|
+
"type": {
|
|
172049
|
+
"text": "CommentSyntax | undefined"
|
|
172050
|
+
}
|
|
172051
|
+
},
|
|
172052
|
+
"parameters": [
|
|
172053
|
+
{
|
|
172054
|
+
"name": "name",
|
|
172055
|
+
"type": {
|
|
172056
|
+
"text": "string"
|
|
172057
|
+
}
|
|
172058
|
+
}
|
|
172059
|
+
],
|
|
172060
|
+
"description": "The syntax of a pane, read from its `name`: `html`, `css` and `js`, or the\nextension of a file name such as `utils.js`. `ts`, `jsx`, `tsx`, `mjs` and\n`cjs` are `js`. Anything else has no comments."
|
|
172061
|
+
},
|
|
172062
|
+
{
|
|
172063
|
+
"kind": "function",
|
|
172064
|
+
"name": "indentLines",
|
|
172065
|
+
"return": {
|
|
172066
|
+
"type": {
|
|
172067
|
+
"text": "SourceEdit | undefined"
|
|
172068
|
+
}
|
|
172069
|
+
},
|
|
172070
|
+
"parameters": [
|
|
172071
|
+
{
|
|
172072
|
+
"name": "source",
|
|
172073
|
+
"type": {
|
|
172074
|
+
"text": "string"
|
|
172075
|
+
}
|
|
172076
|
+
},
|
|
172077
|
+
{
|
|
172078
|
+
"name": "from",
|
|
172079
|
+
"type": {
|
|
172080
|
+
"text": "number"
|
|
172081
|
+
}
|
|
172082
|
+
},
|
|
172083
|
+
{
|
|
172084
|
+
"name": "to",
|
|
172085
|
+
"type": {
|
|
172086
|
+
"text": "number"
|
|
172087
|
+
}
|
|
172088
|
+
},
|
|
172089
|
+
{
|
|
172090
|
+
"name": "unit",
|
|
172091
|
+
"default": "' '"
|
|
172092
|
+
}
|
|
172093
|
+
],
|
|
172094
|
+
"description": "Indents each line a selection touches by `unit`, leaving blank lines as they are."
|
|
172095
|
+
},
|
|
172096
|
+
{
|
|
172097
|
+
"kind": "function",
|
|
172098
|
+
"name": "outdentLines",
|
|
172099
|
+
"return": {
|
|
172100
|
+
"type": {
|
|
172101
|
+
"text": "SourceEdit | undefined"
|
|
172102
|
+
}
|
|
172103
|
+
},
|
|
172104
|
+
"parameters": [
|
|
172105
|
+
{
|
|
172106
|
+
"name": "source",
|
|
172107
|
+
"type": {
|
|
172108
|
+
"text": "string"
|
|
172109
|
+
}
|
|
172110
|
+
},
|
|
172111
|
+
{
|
|
172112
|
+
"name": "from",
|
|
172113
|
+
"type": {
|
|
172114
|
+
"text": "number"
|
|
172115
|
+
}
|
|
172116
|
+
},
|
|
172117
|
+
{
|
|
172118
|
+
"name": "to",
|
|
172119
|
+
"type": {
|
|
172120
|
+
"text": "number"
|
|
172121
|
+
}
|
|
172122
|
+
}
|
|
172123
|
+
],
|
|
172124
|
+
"description": "Takes one level of indentation, two spaces or a tab, off each line a selection touches."
|
|
172125
|
+
},
|
|
172126
|
+
{
|
|
172127
|
+
"kind": "function",
|
|
172128
|
+
"name": "breakLine",
|
|
172129
|
+
"return": {
|
|
172130
|
+
"type": {
|
|
172131
|
+
"text": "SourceEdit | undefined"
|
|
172132
|
+
}
|
|
172133
|
+
},
|
|
172134
|
+
"parameters": [
|
|
172135
|
+
{
|
|
172136
|
+
"name": "source",
|
|
172137
|
+
"type": {
|
|
172138
|
+
"text": "string"
|
|
172139
|
+
}
|
|
172140
|
+
},
|
|
172141
|
+
{
|
|
172142
|
+
"name": "from",
|
|
172143
|
+
"type": {
|
|
172144
|
+
"text": "number"
|
|
172145
|
+
}
|
|
172146
|
+
},
|
|
172147
|
+
{
|
|
172148
|
+
"name": "to",
|
|
172149
|
+
"type": {
|
|
172150
|
+
"text": "number"
|
|
172151
|
+
}
|
|
172152
|
+
},
|
|
172153
|
+
{
|
|
172154
|
+
"name": "unit",
|
|
172155
|
+
"default": "' '"
|
|
172156
|
+
}
|
|
172157
|
+
],
|
|
172158
|
+
"description": "What Enter does: a new line with the indentation of the line it breaks, one\nlevel deeper after an opening bracket, and with the closing bracket on a\nline of its own where the caret is between a pair. `undefined` for a line\nat the margin with no bracket before the caret, which takes the platform's\nown Enter."
|
|
172159
|
+
},
|
|
172160
|
+
{
|
|
172161
|
+
"kind": "function",
|
|
172162
|
+
"name": "toggleComment",
|
|
172163
|
+
"return": {
|
|
172164
|
+
"type": {
|
|
172165
|
+
"text": "SourceEdit | undefined"
|
|
172166
|
+
}
|
|
172167
|
+
},
|
|
172168
|
+
"parameters": [
|
|
172169
|
+
{
|
|
172170
|
+
"name": "source",
|
|
172171
|
+
"type": {
|
|
172172
|
+
"text": "string"
|
|
172173
|
+
}
|
|
172174
|
+
},
|
|
172175
|
+
{
|
|
172176
|
+
"name": "from",
|
|
172177
|
+
"type": {
|
|
172178
|
+
"text": "number"
|
|
172179
|
+
}
|
|
172180
|
+
},
|
|
172181
|
+
{
|
|
172182
|
+
"name": "to",
|
|
172183
|
+
"type": {
|
|
172184
|
+
"text": "number"
|
|
172185
|
+
}
|
|
172186
|
+
},
|
|
172187
|
+
{
|
|
172188
|
+
"name": "syntax",
|
|
172189
|
+
"type": {
|
|
172190
|
+
"text": "CommentSyntax"
|
|
172191
|
+
}
|
|
172192
|
+
}
|
|
172193
|
+
],
|
|
172194
|
+
"description": "Comments out the lines a selection touches, or uncomments them where they\nalready are a comment.\n\n`js` comments each line with `//` at the indentation the lines share. `css`\nand `html`, which have no line comment, put one block comment around the\ntext of the lines."
|
|
172195
|
+
},
|
|
172196
|
+
{
|
|
172197
|
+
"kind": "function",
|
|
172198
|
+
"name": "closeBracket",
|
|
172199
|
+
"return": {
|
|
172200
|
+
"type": {
|
|
172201
|
+
"text": "SourceEdit | undefined"
|
|
172202
|
+
}
|
|
172203
|
+
},
|
|
172204
|
+
"parameters": [
|
|
172205
|
+
{
|
|
172206
|
+
"name": "source",
|
|
172207
|
+
"type": {
|
|
172208
|
+
"text": "string"
|
|
172209
|
+
}
|
|
172210
|
+
},
|
|
172211
|
+
{
|
|
172212
|
+
"name": "from",
|
|
172213
|
+
"type": {
|
|
172214
|
+
"text": "number"
|
|
172215
|
+
}
|
|
172216
|
+
},
|
|
172217
|
+
{
|
|
172218
|
+
"name": "to",
|
|
172219
|
+
"type": {
|
|
172220
|
+
"text": "number"
|
|
172221
|
+
}
|
|
172222
|
+
},
|
|
172223
|
+
{
|
|
172224
|
+
"name": "key",
|
|
172225
|
+
"type": {
|
|
172226
|
+
"text": "string"
|
|
172227
|
+
}
|
|
172228
|
+
}
|
|
172229
|
+
],
|
|
172230
|
+
"description": "What typing `key` does where brackets close: a bracket or quote typed with\ntext selected goes around the text, one typed before a space or the end of\nthe line closes as well, and a closing one typed before the same character\nsteps over it. `undefined` where the key types as usual.\n\nA quote after a letter or a digit is an apostrophe and does not close."
|
|
172231
|
+
},
|
|
172232
|
+
{
|
|
172233
|
+
"kind": "function",
|
|
172234
|
+
"name": "deletePair",
|
|
172235
|
+
"return": {
|
|
172236
|
+
"type": {
|
|
172237
|
+
"text": "SourceEdit | undefined"
|
|
172238
|
+
}
|
|
172239
|
+
},
|
|
172240
|
+
"parameters": [
|
|
172241
|
+
{
|
|
172242
|
+
"name": "source",
|
|
172243
|
+
"type": {
|
|
172244
|
+
"text": "string"
|
|
172245
|
+
}
|
|
172246
|
+
},
|
|
172247
|
+
{
|
|
172248
|
+
"name": "from",
|
|
172249
|
+
"type": {
|
|
172250
|
+
"text": "number"
|
|
172251
|
+
}
|
|
172252
|
+
},
|
|
172253
|
+
{
|
|
172254
|
+
"name": "to",
|
|
172255
|
+
"type": {
|
|
172256
|
+
"text": "number"
|
|
172257
|
+
}
|
|
172258
|
+
}
|
|
172259
|
+
],
|
|
172260
|
+
"description": "What Backspace does between a bracket or quote and the character that\ncloses it, where brackets close: it deletes both."
|
|
172261
|
+
},
|
|
172262
|
+
{
|
|
172263
|
+
"kind": "function",
|
|
172264
|
+
"name": "matchBracket",
|
|
172265
|
+
"return": {
|
|
172266
|
+
"type": {
|
|
172267
|
+
"text": "BracketMatch | undefined"
|
|
172268
|
+
}
|
|
172269
|
+
},
|
|
172270
|
+
"parameters": [
|
|
172271
|
+
{
|
|
172272
|
+
"name": "source",
|
|
172273
|
+
"type": {
|
|
172274
|
+
"text": "string"
|
|
172275
|
+
}
|
|
172276
|
+
},
|
|
172277
|
+
{
|
|
172278
|
+
"name": "at",
|
|
172279
|
+
"type": {
|
|
172280
|
+
"text": "number"
|
|
172281
|
+
}
|
|
172282
|
+
},
|
|
172283
|
+
{
|
|
172284
|
+
"name": "skip",
|
|
172285
|
+
"default": "() => false",
|
|
172286
|
+
"type": {
|
|
172287
|
+
"text": "(index: number) => boolean"
|
|
172288
|
+
}
|
|
172289
|
+
}
|
|
172290
|
+
],
|
|
172291
|
+
"description": "The bracket beside the caret and its pair: the one before the caret first,\nthen the one after it. `skip` leaves out positions inside strings and\ncomments, where a highlighter has said which those are."
|
|
172292
|
+
},
|
|
172293
|
+
{
|
|
172294
|
+
"kind": "function",
|
|
172295
|
+
"name": "suggest",
|
|
172296
|
+
"return": {
|
|
172297
|
+
"type": {
|
|
172298
|
+
"text": "Completions | undefined"
|
|
172299
|
+
}
|
|
172300
|
+
},
|
|
172301
|
+
"parameters": [
|
|
172302
|
+
{
|
|
172303
|
+
"name": "source",
|
|
172304
|
+
"type": {
|
|
172305
|
+
"text": "string"
|
|
172306
|
+
}
|
|
172307
|
+
},
|
|
172308
|
+
{
|
|
172309
|
+
"name": "at",
|
|
172310
|
+
"type": {
|
|
172311
|
+
"text": "number"
|
|
172312
|
+
}
|
|
172313
|
+
},
|
|
172314
|
+
{
|
|
172315
|
+
"name": "extra",
|
|
172316
|
+
"default": "[]",
|
|
172317
|
+
"type": {
|
|
172318
|
+
"text": "readonly string[]"
|
|
172319
|
+
}
|
|
172320
|
+
}
|
|
172321
|
+
],
|
|
172322
|
+
"description": "The completions for the word before the caret: every longer word in the\nsource or in `extra` that starts with it, whatever its case. `undefined`\nwhere the caret follows no word or nothing completes it."
|
|
172323
|
+
},
|
|
172324
|
+
{
|
|
172325
|
+
"kind": "function",
|
|
172326
|
+
"name": "manifestWords",
|
|
172327
|
+
"return": {
|
|
172328
|
+
"type": {
|
|
172329
|
+
"text": "string[]"
|
|
172330
|
+
}
|
|
172331
|
+
},
|
|
172332
|
+
"parameters": [
|
|
172333
|
+
{
|
|
172334
|
+
"name": "manifest",
|
|
172335
|
+
"type": {
|
|
172336
|
+
"text": "ManifestLike"
|
|
172337
|
+
}
|
|
172338
|
+
}
|
|
172339
|
+
],
|
|
172340
|
+
"description": "The tag names, attribute names and CSS custom properties a custom elements\nmanifest lists, for a source pane's `completions`. Each name is listed once."
|
|
172341
|
+
}
|
|
172342
|
+
],
|
|
172343
|
+
"exports": [
|
|
172344
|
+
{
|
|
172345
|
+
"kind": "js",
|
|
172346
|
+
"name": "syntaxOf",
|
|
172347
|
+
"declaration": {
|
|
172348
|
+
"name": "syntaxOf",
|
|
172349
|
+
"module": "src/sandbox/source/editing.ts"
|
|
172350
|
+
}
|
|
172351
|
+
},
|
|
172352
|
+
{
|
|
172353
|
+
"kind": "js",
|
|
172354
|
+
"name": "indentLines",
|
|
172355
|
+
"declaration": {
|
|
172356
|
+
"name": "indentLines",
|
|
172357
|
+
"module": "src/sandbox/source/editing.ts"
|
|
172358
|
+
}
|
|
172359
|
+
},
|
|
172360
|
+
{
|
|
172361
|
+
"kind": "js",
|
|
172362
|
+
"name": "outdentLines",
|
|
172363
|
+
"declaration": {
|
|
172364
|
+
"name": "outdentLines",
|
|
172365
|
+
"module": "src/sandbox/source/editing.ts"
|
|
172366
|
+
}
|
|
172367
|
+
},
|
|
172368
|
+
{
|
|
172369
|
+
"kind": "js",
|
|
172370
|
+
"name": "breakLine",
|
|
172371
|
+
"declaration": {
|
|
172372
|
+
"name": "breakLine",
|
|
172373
|
+
"module": "src/sandbox/source/editing.ts"
|
|
172374
|
+
}
|
|
172375
|
+
},
|
|
172376
|
+
{
|
|
172377
|
+
"kind": "js",
|
|
172378
|
+
"name": "toggleComment",
|
|
172379
|
+
"declaration": {
|
|
172380
|
+
"name": "toggleComment",
|
|
172381
|
+
"module": "src/sandbox/source/editing.ts"
|
|
172382
|
+
}
|
|
172383
|
+
},
|
|
172384
|
+
{
|
|
172385
|
+
"kind": "js",
|
|
172386
|
+
"name": "closeBracket",
|
|
172387
|
+
"declaration": {
|
|
172388
|
+
"name": "closeBracket",
|
|
172389
|
+
"module": "src/sandbox/source/editing.ts"
|
|
172390
|
+
}
|
|
172391
|
+
},
|
|
172392
|
+
{
|
|
172393
|
+
"kind": "js",
|
|
172394
|
+
"name": "deletePair",
|
|
172395
|
+
"declaration": {
|
|
172396
|
+
"name": "deletePair",
|
|
172397
|
+
"module": "src/sandbox/source/editing.ts"
|
|
172398
|
+
}
|
|
172399
|
+
},
|
|
172400
|
+
{
|
|
172401
|
+
"kind": "js",
|
|
172402
|
+
"name": "matchBracket",
|
|
172403
|
+
"declaration": {
|
|
172404
|
+
"name": "matchBracket",
|
|
172405
|
+
"module": "src/sandbox/source/editing.ts"
|
|
172406
|
+
}
|
|
172407
|
+
},
|
|
172408
|
+
{
|
|
172409
|
+
"kind": "js",
|
|
172410
|
+
"name": "suggest",
|
|
172411
|
+
"declaration": {
|
|
172412
|
+
"name": "suggest",
|
|
172413
|
+
"module": "src/sandbox/source/editing.ts"
|
|
172414
|
+
}
|
|
172415
|
+
},
|
|
172416
|
+
{
|
|
172417
|
+
"kind": "js",
|
|
172418
|
+
"name": "manifestWords",
|
|
172419
|
+
"declaration": {
|
|
172420
|
+
"name": "manifestWords",
|
|
172421
|
+
"module": "src/sandbox/source/editing.ts"
|
|
172422
|
+
}
|
|
172423
|
+
}
|
|
172424
|
+
]
|
|
172425
|
+
},
|
|
170843
172426
|
{
|
|
170844
172427
|
"kind": "javascript-module",
|
|
170845
172428
|
"path": "src/sandbox/source/sandbox-source.css.ts",
|
|
@@ -170866,13 +172449,17 @@
|
|
|
170866
172449
|
"declarations": [
|
|
170867
172450
|
{
|
|
170868
172451
|
"kind": "class",
|
|
170869
|
-
"description": "A real `<textarea>`, so undo, selection, spellcheck suppression, mobile\nkeyboards, and screen reader support come from the platform.\n\nTab inserts two spaces, so you can indent code. To move focus out of the\nfield, press Escape and then Tab. Shift+Tab moves focus back as it does\nanywhere else. The field's description says so to a screen reader.\n\n**`tokenize` colors the source** with a highlighter you bring, such as one\nbuilt on Lezer, Prism or Shiki. It is a function from the source to runs of\ntext, each with an optional kind, and the pane draws the runs under a\ntransparent field, so typing, selection and undo stay the textarea's. The\nkinds are `callable`, `comment`, `constant`, `invalid`, `keyword`, `name`,\n`string` and `tag`, each colored by the `--helix-color-syntax-*` token of\nits name and a hook of its own, such as `--sandbox-source-keyword-color`.\nA run of any other kind is drawn in the field's own color. Every run with a\nkind is a `token` part, and carries its kind as `data-kind`. A `tokenize`\nthat throws leaves the source drawn plain and the field editable, and the\nerror is reported to the page as an uncaught one.\n\n**`line-numbers` numbers each line** in a gutter beside the source. A line\nthat wraps keeps one number. The numbers are drawn, and hidden from screen\nreaders, which read the field.\n\nEnter keeps the indentation of the line it breaks, and the new line is
|
|
172452
|
+
"description": "A real `<textarea>`, so undo, selection, spellcheck suppression, mobile\nkeyboards, and screen reader support come from the platform.\n\nTab inserts two spaces, so you can indent code. To move focus out of the\nfield, press Escape and then Tab. Shift+Tab moves focus back as it does\nanywhere else. The field's description says so to a screen reader.\n\n**`tokenize` colors the source** with a highlighter you bring, such as one\nbuilt on Lezer, Prism or Shiki. It is a function from the source to runs of\ntext, each with an optional kind, and the pane draws the runs under a\ntransparent field, so typing, selection and undo stay the textarea's. The\nkinds are `callable`, `comment`, `constant`, `invalid`, `keyword`, `name`,\n`string` and `tag`, each colored by the `--helix-color-syntax-*` token of\nits name and a hook of its own, such as `--sandbox-source-keyword-color`.\nA run of any other kind is drawn in the field's own color. Every run with a\nkind is a `token` part, and carries its kind as `data-kind`. A `tokenize`\nthat throws leaves the source drawn plain and the field editable, and the\nerror is reported to the page as an uncaught one.\n\n**`line-numbers` numbers each line** in a gutter beside the source. A line\nthat wraps keeps one number. The numbers are drawn, and hidden from screen\nreaders, which read the field.\n\nEnter keeps the indentation of the line it breaks, one level deeper after\nan opening bracket, and puts the closing bracket of an empty pair on a line\nof its own. The new line is undone with the next undo as typing is.\n\n**The editing keys are CodeMirror's.** Tab with text selected indents every\nline the selection touches. `Mod+]` indents the lines and `Mod+[` outdents\nthem, and `Mod+/` comments them out or back in: `//` in a `js` pane, and one\nblock comment in an `html` or `css` pane. `Mod` is Command on a Mac and\nControl elsewhere. Each is one step of undo.\n\n**`close-brackets` closes brackets and quotes** as you type them: `(`, `[`,\n`{` and the three quotes. A closing character typed before the same one\nsteps over it, Backspace between an empty pair deletes both, and a bracket\ntyped with text selected goes around the text. **`match-brackets` marks\nthe bracket beside the caret and its pair** while the field has focus, each\na `bracket` part, and a bracket with no pair is also `bracket-unmatched`.\nA bracket in a string or a comment is not matched, where `tokenize` says\nwhich runs those are.\n\n**`complete` offers completions as you type**: the words of the source and\nof `completions` that start with the word before the caret. They open in a\nlist under the word. The arrow keys move through it, Enter or Tab takes the\nword, and Escape closes it. `Ctrl+Space` opens it where it is closed. The\nfield is `aria-autocomplete=\"list\"` and points at the word chosen with\n`aria-activedescendant`, so a screen reader reads each one. Give\n`completions` the names a page uses, such as the tag and attribute names of\na custom elements manifest through `manifestWords`.\n\n**The pane is `:state(modified)` while its source differs from the source it\nwas given**, the first `value` or the last one set from outside. `reset()`\nputs that source back, as an edit the sandbox passes on to its preview.\n\n**The source can be written inside the pane** where `value` is not set: its\ntext, or the markup of a `<template>` it holds, without the indentation the\npage gave it. Markup goes in a template so the page does not render it or\nrun its scripts. Text inside the pane is read once, when it connects.",
|
|
170870
172453
|
"name": "HelixSandboxSource",
|
|
170871
172454
|
"cssProperties": [
|
|
170872
172455
|
{
|
|
170873
172456
|
"description": "Fill behind the source.",
|
|
170874
172457
|
"name": "--sandbox-source-background-color"
|
|
170875
172458
|
},
|
|
172459
|
+
{
|
|
172460
|
+
"description": "Fill behind a matched bracket, under `match-brackets`. Defaults to `--helix-color-accent-subtle`.",
|
|
172461
|
+
"name": "--sandbox-source-bracket-color"
|
|
172462
|
+
},
|
|
170876
172463
|
{
|
|
170877
172464
|
"description": "Color of a `callable` run, under `tokenize`. Defaults to `--helix-color-syntax-callable`.",
|
|
170878
172465
|
"name": "--sandbox-source-callable-color"
|
|
@@ -170881,6 +172468,14 @@
|
|
|
170881
172468
|
"description": "Color of a `comment` run, under `tokenize`. Defaults to `--helix-color-syntax-comment`.",
|
|
170882
172469
|
"name": "--sandbox-source-comment-color"
|
|
170883
172470
|
},
|
|
172471
|
+
{
|
|
172472
|
+
"description": "Width of the edge of the list of completions, under `complete`. Defaults to `--helix-border-floating`.",
|
|
172473
|
+
"name": "--sandbox-source-completions-border-width"
|
|
172474
|
+
},
|
|
172475
|
+
{
|
|
172476
|
+
"description": "Shadow under the list of completions, under `complete`. Defaults to `--helix-shadow-floating`.",
|
|
172477
|
+
"name": "--sandbox-source-completions-shadow"
|
|
172478
|
+
},
|
|
170884
172479
|
{
|
|
170885
172480
|
"description": "Color of a `constant` run, under `tokenize`. Defaults to `--helix-color-syntax-constant`.",
|
|
170886
172481
|
"name": "--sandbox-source-constant-color"
|
|
@@ -170916,11 +172511,31 @@
|
|
|
170916
172511
|
],
|
|
170917
172512
|
"cssParts": [
|
|
170918
172513
|
{
|
|
170919
|
-
"description": "The
|
|
172514
|
+
"description": "The bracket beside the caret and its pair, under `match-brackets`.",
|
|
172515
|
+
"name": "bracket"
|
|
172516
|
+
},
|
|
172517
|
+
{
|
|
172518
|
+
"description": "A bracket beside the caret with no pair, under `match-brackets`.",
|
|
172519
|
+
"name": "bracket-unmatched"
|
|
172520
|
+
},
|
|
172521
|
+
{
|
|
172522
|
+
"description": "One word in the list of completions, under `complete`.",
|
|
172523
|
+
"name": "completion"
|
|
172524
|
+
},
|
|
172525
|
+
{
|
|
172526
|
+
"description": "The word chosen in that list, which Enter or Tab takes.",
|
|
172527
|
+
"name": "completion-active"
|
|
172528
|
+
},
|
|
172529
|
+
{
|
|
172530
|
+
"description": "The list of completions under the word being typed, under `complete`.",
|
|
172531
|
+
"name": "completions"
|
|
172532
|
+
},
|
|
172533
|
+
{
|
|
172534
|
+
"description": "The box that scrolls the field and its colors together, under `tokenize`, `line-numbers`, `match-brackets` or `complete`.",
|
|
170920
172535
|
"name": "field"
|
|
170921
172536
|
},
|
|
170922
172537
|
{
|
|
170923
|
-
"description": "The colored copy of the source drawn under the field, under `tokenize` or `
|
|
172538
|
+
"description": "The colored copy of the source drawn under the field, under `tokenize`, `line-numbers`, `match-brackets` or `complete`.",
|
|
170924
172539
|
"name": "highlight"
|
|
170925
172540
|
},
|
|
170926
172541
|
{
|
|
@@ -170947,6 +172562,49 @@
|
|
|
170947
172562
|
"default": "'helix-sandbox-source'",
|
|
170948
172563
|
"description": "The key this part's words are registered under, its tag:\n`registerWords('de', { 'helix-sandbox-source': { fieldLabel: 'Quelltext' } })`."
|
|
170949
172564
|
},
|
|
172565
|
+
{
|
|
172566
|
+
"kind": "field",
|
|
172567
|
+
"name": "closeBrackets",
|
|
172568
|
+
"type": {
|
|
172569
|
+
"text": "boolean"
|
|
172570
|
+
},
|
|
172571
|
+
"default": "false",
|
|
172572
|
+
"description": "Whether typing an opening bracket or quote types its closing one too, and\na bracket typed with text selected goes around it.",
|
|
172573
|
+
"attribute": "close-brackets"
|
|
172574
|
+
},
|
|
172575
|
+
{
|
|
172576
|
+
"kind": "field",
|
|
172577
|
+
"name": "complete",
|
|
172578
|
+
"type": {
|
|
172579
|
+
"text": "boolean"
|
|
172580
|
+
},
|
|
172581
|
+
"default": "false",
|
|
172582
|
+
"description": "Whether the pane offers completions for the word before the caret, from\nthe words of the source and of `completions`.",
|
|
172583
|
+
"attribute": "complete"
|
|
172584
|
+
},
|
|
172585
|
+
{
|
|
172586
|
+
"kind": "field",
|
|
172587
|
+
"name": "completions",
|
|
172588
|
+
"type": {
|
|
172589
|
+
"text": "readonly string[]"
|
|
172590
|
+
},
|
|
172591
|
+
"default": "[]",
|
|
172592
|
+
"description": "Words the pane offers under `complete` beside the words of the source,\nsuch as tag and attribute names. `manifestWords` reads them from a custom\nelements manifest. Set it as JSON in the attribute or as an array.",
|
|
172593
|
+
"attribute": "completions"
|
|
172594
|
+
},
|
|
172595
|
+
{
|
|
172596
|
+
"kind": "field",
|
|
172597
|
+
"name": "completionsLabel",
|
|
172598
|
+
"type": {
|
|
172599
|
+
"text": "string"
|
|
172600
|
+
},
|
|
172601
|
+
"default": "'Completions'",
|
|
172602
|
+
"description": "The name of the list of completions, read by screen readers.",
|
|
172603
|
+
"attribute": "completions-label",
|
|
172604
|
+
"helix": {
|
|
172605
|
+
"words": true
|
|
172606
|
+
}
|
|
172607
|
+
},
|
|
170950
172608
|
{
|
|
170951
172609
|
"kind": "field",
|
|
170952
172610
|
"name": "fieldLabel",
|
|
@@ -171007,6 +172665,16 @@
|
|
|
171007
172665
|
"attribute": "line-numbers",
|
|
171008
172666
|
"reflects": true
|
|
171009
172667
|
},
|
|
172668
|
+
{
|
|
172669
|
+
"kind": "field",
|
|
172670
|
+
"name": "matchBrackets",
|
|
172671
|
+
"type": {
|
|
172672
|
+
"text": "boolean"
|
|
172673
|
+
},
|
|
172674
|
+
"default": "false",
|
|
172675
|
+
"description": "Whether the bracket beside the caret and its pair are marked while the\nfield has focus.",
|
|
172676
|
+
"attribute": "match-brackets"
|
|
172677
|
+
},
|
|
171010
172678
|
{
|
|
171011
172679
|
"kind": "field",
|
|
171012
172680
|
"name": "name",
|
|
@@ -171017,6 +172685,17 @@
|
|
|
171017
172685
|
"description": "Which source this pane holds. Every `helix-before-edit` event includes it.\n\n`html` and `css` are what the sandbox root routes on; any other name is\npassed through untouched for a consumer wiring their own panes.\n\nNot reflected: nothing selects on it, so it keeps a real default instead.",
|
|
171018
172686
|
"attribute": "name"
|
|
171019
172687
|
},
|
|
172688
|
+
{
|
|
172689
|
+
"kind": "field",
|
|
172690
|
+
"name": "readOnly",
|
|
172691
|
+
"type": {
|
|
172692
|
+
"text": "boolean"
|
|
172693
|
+
},
|
|
172694
|
+
"default": "false",
|
|
172695
|
+
"description": "Whether the source is read only: it can be selected and copied, and not\nedited, as Sandpack's `readOnly` file is. Tab moves focus out of a field\nthat is read only.",
|
|
172696
|
+
"attribute": "readonly",
|
|
172697
|
+
"reflects": true
|
|
172698
|
+
},
|
|
171020
172699
|
{
|
|
171021
172700
|
"kind": "field",
|
|
171022
172701
|
"name": "tabIndents",
|
|
@@ -171055,6 +172734,95 @@
|
|
|
171055
172734
|
"default": "false",
|
|
171056
172735
|
"description": "Set by Escape, so the next Tab leaves the field."
|
|
171057
172736
|
},
|
|
172737
|
+
{
|
|
172738
|
+
"kind": "field",
|
|
172739
|
+
"name": "baseline",
|
|
172740
|
+
"type": {
|
|
172741
|
+
"text": "string"
|
|
172742
|
+
},
|
|
172743
|
+
"privacy": "private",
|
|
172744
|
+
"default": "''",
|
|
172745
|
+
"description": "The source the pane was given, which `reset()` puts back."
|
|
172746
|
+
},
|
|
172747
|
+
{
|
|
172748
|
+
"kind": "field",
|
|
172749
|
+
"name": "edited",
|
|
172750
|
+
"type": {
|
|
172751
|
+
"text": "string | undefined"
|
|
172752
|
+
},
|
|
172753
|
+
"privacy": "private",
|
|
172754
|
+
"description": "The source the last edit left, to tell an edit from a `value` set from outside."
|
|
172755
|
+
},
|
|
172756
|
+
{
|
|
172757
|
+
"kind": "field",
|
|
172758
|
+
"name": "caret",
|
|
172759
|
+
"type": {
|
|
172760
|
+
"text": "number"
|
|
172761
|
+
},
|
|
172762
|
+
"privacy": "private",
|
|
172763
|
+
"default": "-1",
|
|
172764
|
+
"description": "Where the caret is, while nothing is selected, for `match-brackets`."
|
|
172765
|
+
},
|
|
172766
|
+
{
|
|
172767
|
+
"kind": "field",
|
|
172768
|
+
"name": "offered",
|
|
172769
|
+
"type": {
|
|
172770
|
+
"text": "Completions | undefined"
|
|
172771
|
+
},
|
|
172772
|
+
"privacy": "private",
|
|
172773
|
+
"description": "The completions open under the word being typed, under `complete`."
|
|
172774
|
+
},
|
|
172775
|
+
{
|
|
172776
|
+
"kind": "field",
|
|
172777
|
+
"name": "chosen",
|
|
172778
|
+
"type": {
|
|
172779
|
+
"text": "number"
|
|
172780
|
+
},
|
|
172781
|
+
"privacy": "private",
|
|
172782
|
+
"default": "0",
|
|
172783
|
+
"description": "Which of the completions Enter or Tab takes."
|
|
172784
|
+
},
|
|
172785
|
+
{
|
|
172786
|
+
"kind": "field",
|
|
172787
|
+
"name": "accepting",
|
|
172788
|
+
"type": {
|
|
172789
|
+
"text": "boolean"
|
|
172790
|
+
},
|
|
172791
|
+
"privacy": "private",
|
|
172792
|
+
"default": "false",
|
|
172793
|
+
"description": "Set while a completion is written, so writing it does not offer more."
|
|
172794
|
+
},
|
|
172795
|
+
{
|
|
172796
|
+
"kind": "field",
|
|
172797
|
+
"name": "modified",
|
|
172798
|
+
"type": {
|
|
172799
|
+
"text": "boolean"
|
|
172800
|
+
},
|
|
172801
|
+
"description": "Whether the source differs from the source the pane was given: its first\n`value`, or the last one set from outside.",
|
|
172802
|
+
"readonly": true
|
|
172803
|
+
},
|
|
172804
|
+
{
|
|
172805
|
+
"kind": "method",
|
|
172806
|
+
"name": "reset",
|
|
172807
|
+
"return": {
|
|
172808
|
+
"type": {
|
|
172809
|
+
"text": "void"
|
|
172810
|
+
}
|
|
172811
|
+
},
|
|
172812
|
+
"description": "Puts back the source the pane was given, as an edit: `helix-before-edit`\nis sent first and can refuse it, and the sandbox passes it to its preview.",
|
|
172813
|
+
"type": {
|
|
172814
|
+
"text": "reset() => void"
|
|
172815
|
+
}
|
|
172816
|
+
},
|
|
172817
|
+
{
|
|
172818
|
+
"kind": "field",
|
|
172819
|
+
"name": "field",
|
|
172820
|
+
"type": {
|
|
172821
|
+
"text": "HTMLTextAreaElement | null"
|
|
172822
|
+
},
|
|
172823
|
+
"privacy": "private",
|
|
172824
|
+
"readonly": true
|
|
172825
|
+
},
|
|
171058
172826
|
{
|
|
171059
172827
|
"kind": "field",
|
|
171060
172828
|
"name": "read",
|
|
@@ -171090,6 +172858,75 @@
|
|
|
171090
172858
|
"readonly": true,
|
|
171091
172859
|
"description": "Announces the edit, then applies it if nobody refused.\n\n**Never the other way round.** Assigning the value and dispatching the\nrequest after it accepts `preventDefault()` and ignores it: a consumer\nrefusing an edit keeps the old value in their handler while the pane holds\nthe new one, and `helix-before-edit` becomes a `before` event that has\nalready happened.\n\n`restoreValue` because the textarea has already taken the character\nwhichever way it goes, so a refusal has to put the text back, and it does so\nwithout sending the caret to the end. Exactly what `Input` does with the\nsame helper for the same reason."
|
|
171092
172860
|
},
|
|
172861
|
+
{
|
|
172862
|
+
"kind": "method",
|
|
172863
|
+
"name": "offer",
|
|
172864
|
+
"privacy": "private",
|
|
172865
|
+
"return": {
|
|
172866
|
+
"type": {
|
|
172867
|
+
"text": "void"
|
|
172868
|
+
}
|
|
172869
|
+
},
|
|
172870
|
+
"parameters": [
|
|
172871
|
+
{
|
|
172872
|
+
"name": "field",
|
|
172873
|
+
"type": {
|
|
172874
|
+
"text": "HTMLTextAreaElement"
|
|
172875
|
+
}
|
|
172876
|
+
}
|
|
172877
|
+
],
|
|
172878
|
+
"description": "Opens the completions for the word before the caret, or closes them where there are none."
|
|
172879
|
+
},
|
|
172880
|
+
{
|
|
172881
|
+
"kind": "method",
|
|
172882
|
+
"name": "accept",
|
|
172883
|
+
"privacy": "private",
|
|
172884
|
+
"return": {
|
|
172885
|
+
"type": {
|
|
172886
|
+
"text": "void"
|
|
172887
|
+
}
|
|
172888
|
+
},
|
|
172889
|
+
"parameters": [
|
|
172890
|
+
{
|
|
172891
|
+
"name": "field",
|
|
172892
|
+
"type": {
|
|
172893
|
+
"text": "HTMLTextAreaElement"
|
|
172894
|
+
}
|
|
172895
|
+
},
|
|
172896
|
+
{
|
|
172897
|
+
"name": "index",
|
|
172898
|
+
"type": {
|
|
172899
|
+
"text": "number"
|
|
172900
|
+
}
|
|
172901
|
+
}
|
|
172902
|
+
],
|
|
172903
|
+
"description": "Writes the chosen completion over the word it completes."
|
|
172904
|
+
},
|
|
172905
|
+
{
|
|
172906
|
+
"kind": "method",
|
|
172907
|
+
"name": "completionKey",
|
|
172908
|
+
"privacy": "private",
|
|
172909
|
+
"return": {
|
|
172910
|
+
"type": {
|
|
172911
|
+
"text": "boolean"
|
|
172912
|
+
}
|
|
172913
|
+
},
|
|
172914
|
+
"parameters": [
|
|
172915
|
+
{
|
|
172916
|
+
"name": "event",
|
|
172917
|
+
"type": {
|
|
172918
|
+
"text": "KeyboardEvent"
|
|
172919
|
+
}
|
|
172920
|
+
},
|
|
172921
|
+
{
|
|
172922
|
+
"name": "field",
|
|
172923
|
+
"type": {
|
|
172924
|
+
"text": "HTMLTextAreaElement"
|
|
172925
|
+
}
|
|
172926
|
+
}
|
|
172927
|
+
],
|
|
172928
|
+
"description": "The keys of the open completions. Returns whether the key was theirs."
|
|
172929
|
+
},
|
|
171093
172930
|
{
|
|
171094
172931
|
"kind": "method",
|
|
171095
172932
|
"name": "edit",
|
|
@@ -171121,6 +172958,56 @@
|
|
|
171121
172958
|
"privacy": "private",
|
|
171122
172959
|
"readonly": true
|
|
171123
172960
|
},
|
|
172961
|
+
{
|
|
172962
|
+
"kind": "method",
|
|
172963
|
+
"name": "command",
|
|
172964
|
+
"privacy": "private",
|
|
172965
|
+
"return": {
|
|
172966
|
+
"type": {
|
|
172967
|
+
"text": "boolean"
|
|
172968
|
+
}
|
|
172969
|
+
},
|
|
172970
|
+
"parameters": [
|
|
172971
|
+
{
|
|
172972
|
+
"name": "event",
|
|
172973
|
+
"type": {
|
|
172974
|
+
"text": "KeyboardEvent"
|
|
172975
|
+
}
|
|
172976
|
+
},
|
|
172977
|
+
{
|
|
172978
|
+
"name": "field",
|
|
172979
|
+
"type": {
|
|
172980
|
+
"text": "HTMLTextAreaElement"
|
|
172981
|
+
}
|
|
172982
|
+
}
|
|
172983
|
+
],
|
|
172984
|
+
"description": "The editing commands: the `Mod` keys for indenting and comments, and, where\nthey are on, closing brackets and opening completions. Returns whether the\nkey was one, so it does nothing else."
|
|
172985
|
+
},
|
|
172986
|
+
{
|
|
172987
|
+
"kind": "method",
|
|
172988
|
+
"name": "apply",
|
|
172989
|
+
"privacy": "private",
|
|
172990
|
+
"return": {
|
|
172991
|
+
"type": {
|
|
172992
|
+
"text": "void"
|
|
172993
|
+
}
|
|
172994
|
+
},
|
|
172995
|
+
"parameters": [
|
|
172996
|
+
{
|
|
172997
|
+
"name": "field",
|
|
172998
|
+
"type": {
|
|
172999
|
+
"text": "HTMLTextAreaElement"
|
|
173000
|
+
}
|
|
173001
|
+
},
|
|
173002
|
+
{
|
|
173003
|
+
"name": "change",
|
|
173004
|
+
"type": {
|
|
173005
|
+
"text": "SourceEdit | undefined"
|
|
173006
|
+
}
|
|
173007
|
+
}
|
|
173008
|
+
],
|
|
173009
|
+
"description": "Makes a change as typing would, through `insert`, and puts the selection\nwhere the change says. A change that refuses nothing and replaces nothing\nonly moves the caret."
|
|
173010
|
+
},
|
|
171124
173011
|
{
|
|
171125
173012
|
"kind": "method",
|
|
171126
173013
|
"name": "breakLine",
|
|
@@ -171138,7 +173025,7 @@
|
|
|
171138
173025
|
}
|
|
171139
173026
|
}
|
|
171140
173027
|
],
|
|
171141
|
-
"description": "Breaks the line with the indentation it has,
|
|
173028
|
+
"description": "Breaks the line with the indentation it has, one level deeper after an\nopening bracket. A line at the margin with no bracket is left to the\nplatform's own Enter."
|
|
171142
173029
|
},
|
|
171143
173030
|
{
|
|
171144
173031
|
"kind": "method",
|
|
@@ -171165,6 +173052,43 @@
|
|
|
171165
173052
|
],
|
|
171166
173053
|
"description": "Writes text at the caret, as typing would: the two spaces Tab inserts,\nand the indentation Enter keeps.\n\n**Through `insertText`, so undo takes the indent back.** Assigning\n`field.value` empties the textarea's undo history: a reader who typed,\npressed Tab and then Cmd+Z or Ctrl+Z lost the indent and everything typed\nbefore it. `insertText` is the edit a keystroke makes, so it joins the\nhistory and sends the `input` event that `handleInput` takes. It writes\ninto whatever has focus, so it is used only while the field has it. Where it\nis not supported, the field is written directly."
|
|
171167
173054
|
},
|
|
173055
|
+
{
|
|
173056
|
+
"kind": "method",
|
|
173057
|
+
"name": "mark",
|
|
173058
|
+
"privacy": "private",
|
|
173059
|
+
"return": {
|
|
173060
|
+
"type": {
|
|
173061
|
+
"text": "Piece[]"
|
|
173062
|
+
}
|
|
173063
|
+
},
|
|
173064
|
+
"parameters": [
|
|
173065
|
+
{
|
|
173066
|
+
"name": "runs",
|
|
173067
|
+
"type": {
|
|
173068
|
+
"text": "readonly SandboxToken[]"
|
|
173069
|
+
}
|
|
173070
|
+
}
|
|
173071
|
+
],
|
|
173072
|
+
"description": "The runs with the brackets beside the caret and the completions' anchor\nmarked, where either is on."
|
|
173073
|
+
},
|
|
173074
|
+
{
|
|
173075
|
+
"kind": "method",
|
|
173076
|
+
"name": "renderCompletions",
|
|
173077
|
+
"privacy": "private",
|
|
173078
|
+
"return": {
|
|
173079
|
+
"type": {
|
|
173080
|
+
"text": "TemplateResult | typeof nothing"
|
|
173081
|
+
}
|
|
173082
|
+
},
|
|
173083
|
+
"description": "The list of completions, while it is open."
|
|
173084
|
+
},
|
|
173085
|
+
{
|
|
173086
|
+
"kind": "field",
|
|
173087
|
+
"name": "close",
|
|
173088
|
+
"privacy": "private",
|
|
173089
|
+
"readonly": true,
|
|
173090
|
+
"description": "Closes the completions, as the field loses focus."
|
|
173091
|
+
},
|
|
171168
173092
|
{
|
|
171169
173093
|
"kind": "method",
|
|
171170
173094
|
"name": "renderField",
|
|
@@ -171543,6 +173467,42 @@
|
|
|
171543
173467
|
}
|
|
171544
173468
|
],
|
|
171545
173469
|
"attributes": [
|
|
173470
|
+
{
|
|
173471
|
+
"name": "close-brackets",
|
|
173472
|
+
"type": {
|
|
173473
|
+
"text": "boolean"
|
|
173474
|
+
},
|
|
173475
|
+
"default": "false",
|
|
173476
|
+
"description": "Whether typing an opening bracket or quote types its closing one too, and\na bracket typed with text selected goes around it.",
|
|
173477
|
+
"fieldName": "closeBrackets"
|
|
173478
|
+
},
|
|
173479
|
+
{
|
|
173480
|
+
"name": "complete",
|
|
173481
|
+
"type": {
|
|
173482
|
+
"text": "boolean"
|
|
173483
|
+
},
|
|
173484
|
+
"default": "false",
|
|
173485
|
+
"description": "Whether the pane offers completions for the word before the caret, from\nthe words of the source and of `completions`.",
|
|
173486
|
+
"fieldName": "complete"
|
|
173487
|
+
},
|
|
173488
|
+
{
|
|
173489
|
+
"name": "completions",
|
|
173490
|
+
"type": {
|
|
173491
|
+
"text": "readonly string[]"
|
|
173492
|
+
},
|
|
173493
|
+
"default": "[]",
|
|
173494
|
+
"description": "Words the pane offers under `complete` beside the words of the source,\nsuch as tag and attribute names. `manifestWords` reads them from a custom\nelements manifest. Set it as JSON in the attribute or as an array.",
|
|
173495
|
+
"fieldName": "completions"
|
|
173496
|
+
},
|
|
173497
|
+
{
|
|
173498
|
+
"name": "completions-label",
|
|
173499
|
+
"type": {
|
|
173500
|
+
"text": "string"
|
|
173501
|
+
},
|
|
173502
|
+
"default": "'Completions'",
|
|
173503
|
+
"description": "The name of the list of completions, read by screen readers.",
|
|
173504
|
+
"fieldName": "completionsLabel"
|
|
173505
|
+
},
|
|
171546
173506
|
{
|
|
171547
173507
|
"name": "field-label",
|
|
171548
173508
|
"type": {
|
|
@@ -171588,6 +173548,15 @@
|
|
|
171588
173548
|
"description": "Whether each line of the source is numbered, in a gutter beside it.",
|
|
171589
173549
|
"fieldName": "lineNumbers"
|
|
171590
173550
|
},
|
|
173551
|
+
{
|
|
173552
|
+
"name": "match-brackets",
|
|
173553
|
+
"type": {
|
|
173554
|
+
"text": "boolean"
|
|
173555
|
+
},
|
|
173556
|
+
"default": "false",
|
|
173557
|
+
"description": "Whether the bracket beside the caret and its pair are marked while the\nfield has focus.",
|
|
173558
|
+
"fieldName": "matchBrackets"
|
|
173559
|
+
},
|
|
171591
173560
|
{
|
|
171592
173561
|
"name": "name",
|
|
171593
173562
|
"type": {
|
|
@@ -171597,6 +173566,15 @@
|
|
|
171597
173566
|
"description": "Which source this pane holds. Every `helix-before-edit` event includes it.\n\n`html` and `css` are what the sandbox root routes on; any other name is\npassed through untouched for a consumer wiring their own panes.\n\nNot reflected: nothing selects on it, so it keeps a real default instead.",
|
|
171598
173567
|
"fieldName": "name"
|
|
171599
173568
|
},
|
|
173569
|
+
{
|
|
173570
|
+
"name": "readonly",
|
|
173571
|
+
"type": {
|
|
173572
|
+
"text": "boolean"
|
|
173573
|
+
},
|
|
173574
|
+
"default": "false",
|
|
173575
|
+
"description": "Whether the source is read only: it can be selected and copied, and not\nedited, as Sandpack's `readOnly` file is. Tab moves focus out of a field\nthat is read only.",
|
|
173576
|
+
"fieldName": "readOnly"
|
|
173577
|
+
},
|
|
171600
173578
|
{
|
|
171601
173579
|
"name": "tab-indents",
|
|
171602
173580
|
"type": {
|
|
@@ -171616,6 +173594,20 @@
|
|
|
171616
173594
|
"fieldName": "value"
|
|
171617
173595
|
}
|
|
171618
173596
|
],
|
|
173597
|
+
"cssStates": [
|
|
173598
|
+
{
|
|
173599
|
+
"description": "While the source differs from the source the pane was given, until `reset()` or a new `value`.",
|
|
173600
|
+
"name": "modified"
|
|
173601
|
+
},
|
|
173602
|
+
{
|
|
173603
|
+
"description": "Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.",
|
|
173604
|
+
"name": "settled",
|
|
173605
|
+
"inheritedFrom": {
|
|
173606
|
+
"name": "HelixElement",
|
|
173607
|
+
"module": "src/helix-element/helix-element.ts"
|
|
173608
|
+
}
|
|
173609
|
+
}
|
|
173610
|
+
],
|
|
171619
173611
|
"superclass": {
|
|
171620
173612
|
"name": "HelixElement",
|
|
171621
173613
|
"package": "@fusion.dev/helix-core"
|
|
@@ -171635,16 +173627,6 @@
|
|
|
171635
173627
|
},
|
|
171636
173628
|
"tagName": "helix-sandbox-source",
|
|
171637
173629
|
"customElement": true,
|
|
171638
|
-
"cssStates": [
|
|
171639
|
-
{
|
|
171640
|
-
"description": "Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.",
|
|
171641
|
-
"name": "settled",
|
|
171642
|
-
"inheritedFrom": {
|
|
171643
|
-
"name": "HelixElement",
|
|
171644
|
-
"module": "src/helix-element/helix-element.ts"
|
|
171645
|
-
}
|
|
171646
|
-
}
|
|
171647
|
-
],
|
|
171648
173630
|
"modulePath": "src/sandbox/source/sandbox-source.ts",
|
|
171649
173631
|
"definitionPath": "src/sandbox/source/sandbox-source.ts"
|
|
171650
173632
|
}
|
|
@@ -177439,7 +179421,7 @@
|
|
|
177439
179421
|
"name": "handleTriggerKeydown",
|
|
177440
179422
|
"privacy": "private",
|
|
177441
179423
|
"readonly": true,
|
|
177442
|
-
"description": "The keys of the closed trigger.\n\nLetters choose without opening, the way a native `<select>` and React\nAria's Select do, so a reader who knows the answer types it. A Space in the\nmiddle of those letters is one of them. With `multiple`, a letter opens the\nlist on the match instead, because adding to a set is a choice the reader\nmakes in the list. ArrowLeft and ArrowRight choose the option before and\nafter the chosen one.",
|
|
179424
|
+
"description": "The keys of the closed trigger.\n\nLetters choose without opening, the way a native `<select>` and React\nAria's Select do, so a reader who knows the answer types it. A Space in the\nmiddle of those letters is one of them. With `multiple`, a letter opens the\nlist on the match instead, because adding to a set is a choice the reader\nmakes in the list. ArrowLeft and ArrowRight choose the option before and\nafter the chosen one, the other way round on a right-to-left page.",
|
|
177443
179425
|
"inheritedFrom": {
|
|
177444
179426
|
"name": "HelixHeadlessSelect",
|
|
177445
179427
|
"module": "src/select/root/select-root.ts"
|
|
@@ -187243,7 +189225,60 @@
|
|
|
187243
189225
|
"text": "void"
|
|
187244
189226
|
}
|
|
187245
189227
|
},
|
|
187246
|
-
"description": "Tells a slotted trigger what it is doing, since it cannot know.\n\nThe fallback button is rendered by this element and says so in its own\ntemplate. A trigger the consumer slotted is their markup, and the state it\nneeds to announce is state only this element holds: without this, the\narrangement this component recommends, an icon button slotted as the\ntrigger, is a control that opens a menu and never says it has one. A\nconsumer who has to mirror `open` back onto their own trigger is a consumer\nwho will forget, and the failure is silent to everyone who can see the\nscreen.\n\n**Never `setAttribute`.** Writing `aria-expanded` onto the consumer's\nelement is a hydration mismatch React reports and does not patch up,\nmeasured against React 19.2.8. `tellDisclosure` carries the argument and the\nmeasurement: the state travels as a property, into the trigger's own shadow\nroot, where React neither looks nor compares.\n\n`aria-haspopup` goes with it rather than being written separately. An\nattribute the consumer's server never sent is a mismatch whether or not it\nmoves afterwards, measured in both load orders, and a trigger that says it\nis expanded is already saying it has something to expand.",
|
|
189228
|
+
"description": "Tells a slotted trigger what it is doing, since it cannot know.\n\nThe fallback button is rendered by this element and says so in its own\ntemplate. A trigger the consumer slotted is their markup, and the state it\nneeds to announce is state only this element holds: without this, the\narrangement this component recommends, an icon button slotted as the\ntrigger, is a control that opens a menu and never says it has one. A\nconsumer who has to mirror `open` back onto their own trigger is a consumer\nwho will forget, and the failure is silent to everyone who can see the\nscreen.\n\n**Never `setAttribute`.** Writing `aria-expanded` onto the consumer's\nelement is a hydration mismatch React reports and does not patch up,\nmeasured against React 19.2.8. `tellDisclosure` carries the argument and the\nmeasurement: the state travels as a property, into the trigger's own shadow\nroot, where React neither looks nor compares.\n\n`aria-haspopup` goes with it rather than being written separately. An\nattribute the consumer's server never sent is a mismatch whether or not it\nmoves afterwards, measured in both load orders, and a trigger that says it\nis expanded is already saying it has something to expand.\n\n**A plain trigger once a reader has reached it.** A `<button>` of yours has\nno shadow root, so it takes `aria-haspopup=\"menu\"` and `aria-expanded` as\nattributes, written only once focus or a pointer has reached it. That is\nafter hydration, which is the only time React compares them. A trigger\nthat carries either attribute itself is yours to keep up to date.",
|
|
189229
|
+
"inheritedFrom": {
|
|
189230
|
+
"name": "HelixHeadlessSpeedDial",
|
|
189231
|
+
"module": "src/speed-dial/root/speed-dial-root.ts"
|
|
189232
|
+
}
|
|
189233
|
+
},
|
|
189234
|
+
{
|
|
189235
|
+
"kind": "field",
|
|
189236
|
+
"name": "toldPlain",
|
|
189237
|
+
"type": {
|
|
189238
|
+
"text": "Element | undefined"
|
|
189239
|
+
},
|
|
189240
|
+
"privacy": "private",
|
|
189241
|
+
"description": "The plain trigger this dial has written its state on, so it can be taken back.",
|
|
189242
|
+
"inheritedFrom": {
|
|
189243
|
+
"name": "HelixHeadlessSpeedDial",
|
|
189244
|
+
"module": "src/speed-dial/root/speed-dial-root.ts"
|
|
189245
|
+
}
|
|
189246
|
+
},
|
|
189247
|
+
{
|
|
189248
|
+
"kind": "field",
|
|
189249
|
+
"name": "reached",
|
|
189250
|
+
"type": {
|
|
189251
|
+
"text": "boolean"
|
|
189252
|
+
},
|
|
189253
|
+
"privacy": "private",
|
|
189254
|
+
"default": "false",
|
|
189255
|
+
"description": "Whether a reader has reached the trigger, by focus or a pointer, which is after hydration.",
|
|
189256
|
+
"inheritedFrom": {
|
|
189257
|
+
"name": "HelixHeadlessSpeedDial",
|
|
189258
|
+
"module": "src/speed-dial/root/speed-dial-root.ts"
|
|
189259
|
+
}
|
|
189260
|
+
},
|
|
189261
|
+
{
|
|
189262
|
+
"kind": "method",
|
|
189263
|
+
"name": "untellPlain",
|
|
189264
|
+
"privacy": "private",
|
|
189265
|
+
"return": {
|
|
189266
|
+
"type": {
|
|
189267
|
+
"text": "void"
|
|
189268
|
+
}
|
|
189269
|
+
},
|
|
189270
|
+
"description": "Takes the state off a plain trigger that is no longer this dial's.",
|
|
189271
|
+
"inheritedFrom": {
|
|
189272
|
+
"name": "HelixHeadlessSpeedDial",
|
|
189273
|
+
"module": "src/speed-dial/root/speed-dial-root.ts"
|
|
189274
|
+
}
|
|
189275
|
+
},
|
|
189276
|
+
{
|
|
189277
|
+
"kind": "field",
|
|
189278
|
+
"name": "handleReach",
|
|
189279
|
+
"privacy": "private",
|
|
189280
|
+
"readonly": true,
|
|
189281
|
+
"description": "A reader reaching the trigger, which lets a plain one be told its state.",
|
|
187247
189282
|
"inheritedFrom": {
|
|
187248
189283
|
"name": "HelixHeadlessSpeedDial",
|
|
187249
189284
|
"module": "src/speed-dial/root/speed-dial-root.ts"
|
|
@@ -188130,6 +190165,19 @@
|
|
|
188130
190165
|
"module": "src/splitter/root/splitter-root.ts"
|
|
188131
190166
|
}
|
|
188132
190167
|
},
|
|
190168
|
+
{
|
|
190169
|
+
"kind": "field",
|
|
190170
|
+
"name": "collapsible",
|
|
190171
|
+
"type": {
|
|
190172
|
+
"text": "'both' | 'end' | 'none' | 'start' | undefined"
|
|
190173
|
+
},
|
|
190174
|
+
"description": "Which panes can be collapsed, as Zag's panels each take `collapsible`:\n`start`, `end`, `both`, or `none`. A pane that cannot be collapsed stops\nat the edge without shutting. `Enter` collapses the end pane where only\nthe end pane can be collapsed, and the start pane otherwise.\n\nUnset is `both`, and the attribute stays absent until you write it.",
|
|
190175
|
+
"attribute": "collapsible",
|
|
190176
|
+
"inheritedFrom": {
|
|
190177
|
+
"name": "HelixHeadlessSplitter",
|
|
190178
|
+
"module": "src/splitter/root/splitter-root.ts"
|
|
190179
|
+
}
|
|
190180
|
+
},
|
|
188133
190181
|
{
|
|
188134
190182
|
"kind": "field",
|
|
188135
190183
|
"name": "cornerLabel",
|
|
@@ -188191,6 +190239,20 @@
|
|
|
188191
190239
|
"module": "src/splitter/root/splitter-root.ts"
|
|
188192
190240
|
}
|
|
188193
190241
|
},
|
|
190242
|
+
{
|
|
190243
|
+
"kind": "field",
|
|
190244
|
+
"name": "endMin",
|
|
190245
|
+
"type": {
|
|
190246
|
+
"text": "number | string"
|
|
190247
|
+
},
|
|
190248
|
+
"default": "0",
|
|
190249
|
+
"description": "The least the end pane keeps, in the units `min` takes: a percentage, or\na CSS length such as `16rem` resolved against the splitter's box. The\ndivider stops that far from the end, whatever `max` allows, so `min` and\n`end-min` hold a minimum for each pane, as Zag's panels each take\n`minSize`.",
|
|
190250
|
+
"attribute": "end-min",
|
|
190251
|
+
"inheritedFrom": {
|
|
190252
|
+
"name": "HelixHeadlessSplitter",
|
|
190253
|
+
"module": "src/splitter/root/splitter-root.ts"
|
|
190254
|
+
}
|
|
190255
|
+
},
|
|
188194
190256
|
{
|
|
188195
190257
|
"kind": "field",
|
|
188196
190258
|
"name": "label",
|
|
@@ -188768,6 +190830,29 @@
|
|
|
188768
190830
|
"module": "src/splitter/root/splitter-root.ts"
|
|
188769
190831
|
}
|
|
188770
190832
|
},
|
|
190833
|
+
{
|
|
190834
|
+
"kind": "method",
|
|
190835
|
+
"name": "canCollapse",
|
|
190836
|
+
"privacy": "private",
|
|
190837
|
+
"return": {
|
|
190838
|
+
"type": {
|
|
190839
|
+
"text": "boolean"
|
|
190840
|
+
}
|
|
190841
|
+
},
|
|
190842
|
+
"parameters": [
|
|
190843
|
+
{
|
|
190844
|
+
"name": "pane",
|
|
190845
|
+
"type": {
|
|
190846
|
+
"text": "'end' | 'start'"
|
|
190847
|
+
}
|
|
190848
|
+
}
|
|
190849
|
+
],
|
|
190850
|
+
"description": "Whether `collapsible` lets this pane be collapsed.",
|
|
190851
|
+
"inheritedFrom": {
|
|
190852
|
+
"name": "HelixHeadlessSplitter",
|
|
190853
|
+
"module": "src/splitter/root/splitter-root.ts"
|
|
190854
|
+
}
|
|
190855
|
+
},
|
|
188771
190856
|
{
|
|
188772
190857
|
"kind": "method",
|
|
188773
190858
|
"name": "clamp",
|
|
@@ -189532,6 +191617,18 @@
|
|
|
189532
191617
|
"module": "src/splitter/root/splitter-root.ts"
|
|
189533
191618
|
}
|
|
189534
191619
|
},
|
|
191620
|
+
{
|
|
191621
|
+
"name": "collapsible",
|
|
191622
|
+
"type": {
|
|
191623
|
+
"text": "'both' | 'end' | 'none' | 'start' | undefined"
|
|
191624
|
+
},
|
|
191625
|
+
"description": "Which panes can be collapsed, as Zag's panels each take `collapsible`:\n`start`, `end`, `both`, or `none`. A pane that cannot be collapsed stops\nat the edge without shutting. `Enter` collapses the end pane where only\nthe end pane can be collapsed, and the start pane otherwise.\n\nUnset is `both`, and the attribute stays absent until you write it.",
|
|
191626
|
+
"fieldName": "collapsible",
|
|
191627
|
+
"inheritedFrom": {
|
|
191628
|
+
"name": "HelixHeadlessSplitter",
|
|
191629
|
+
"module": "src/splitter/root/splitter-root.ts"
|
|
191630
|
+
}
|
|
191631
|
+
},
|
|
189535
191632
|
{
|
|
189536
191633
|
"name": "corner-label",
|
|
189537
191634
|
"type": {
|
|
@@ -189583,6 +191680,19 @@
|
|
|
189583
191680
|
"module": "src/splitter/root/splitter-root.ts"
|
|
189584
191681
|
}
|
|
189585
191682
|
},
|
|
191683
|
+
{
|
|
191684
|
+
"name": "end-min",
|
|
191685
|
+
"type": {
|
|
191686
|
+
"text": "number | string"
|
|
191687
|
+
},
|
|
191688
|
+
"default": "0",
|
|
191689
|
+
"description": "The least the end pane keeps, in the units `min` takes: a percentage, or\na CSS length such as `16rem` resolved against the splitter's box. The\ndivider stops that far from the end, whatever `max` allows, so `min` and\n`end-min` hold a minimum for each pane, as Zag's panels each take\n`minSize`.",
|
|
191690
|
+
"fieldName": "endMin",
|
|
191691
|
+
"inheritedFrom": {
|
|
191692
|
+
"name": "HelixHeadlessSplitter",
|
|
191693
|
+
"module": "src/splitter/root/splitter-root.ts"
|
|
191694
|
+
}
|
|
191695
|
+
},
|
|
189586
191696
|
{
|
|
189587
191697
|
"name": "label",
|
|
189588
191698
|
"type": {
|
|
@@ -208247,6 +210357,17 @@
|
|
|
208247
210357
|
"module": "src/tag/root/tag-root.ts"
|
|
208248
210358
|
}
|
|
208249
210359
|
},
|
|
210360
|
+
{
|
|
210361
|
+
"kind": "field",
|
|
210362
|
+
"name": "handleCellFocus",
|
|
210363
|
+
"privacy": "private",
|
|
210364
|
+
"readonly": true,
|
|
210365
|
+
"description": "Says whether the cell shows keyboard focus, as `:focus-visible` does, so a\nsheet outside can draw the ring on the tag by the host.",
|
|
210366
|
+
"inheritedFrom": {
|
|
210367
|
+
"name": "HelixHeadlessTag",
|
|
210368
|
+
"module": "src/tag/root/tag-root.ts"
|
|
210369
|
+
}
|
|
210370
|
+
},
|
|
208250
210371
|
{
|
|
208251
210372
|
"kind": "method",
|
|
208252
210373
|
"name": "renderLabel",
|
|
@@ -208775,6 +210896,14 @@
|
|
|
208775
210896
|
"tagName": "helix-tag",
|
|
208776
210897
|
"customElement": true,
|
|
208777
210898
|
"cssStates": [
|
|
210899
|
+
{
|
|
210900
|
+
"description": "The tag's cell has keyboard focus that the browser shows, in a `Tag.Group`.",
|
|
210901
|
+
"name": "focus-visible",
|
|
210902
|
+
"inheritedFrom": {
|
|
210903
|
+
"name": "HelixHeadlessTag",
|
|
210904
|
+
"module": "src/tag/root/tag-root.ts"
|
|
210905
|
+
}
|
|
210906
|
+
},
|
|
208778
210907
|
{
|
|
208779
210908
|
"description": "The tag is selected in a `Tag.Group` that selects.",
|
|
208780
210909
|
"name": "selected",
|
|
@@ -210397,6 +212526,69 @@
|
|
|
210397
212526
|
"module": "src/textarea/root/textarea-root.ts"
|
|
210398
212527
|
}
|
|
210399
212528
|
},
|
|
212529
|
+
{
|
|
212530
|
+
"kind": "method",
|
|
212531
|
+
"name": "setRangeText",
|
|
212532
|
+
"return": {
|
|
212533
|
+
"type": {
|
|
212534
|
+
"text": "void"
|
|
212535
|
+
}
|
|
212536
|
+
},
|
|
212537
|
+
"parameters": [
|
|
212538
|
+
{
|
|
212539
|
+
"name": "replacement",
|
|
212540
|
+
"type": {
|
|
212541
|
+
"text": "string"
|
|
212542
|
+
}
|
|
212543
|
+
},
|
|
212544
|
+
{
|
|
212545
|
+
"name": "start",
|
|
212546
|
+
"optional": true,
|
|
212547
|
+
"type": {
|
|
212548
|
+
"text": "number"
|
|
212549
|
+
}
|
|
212550
|
+
},
|
|
212551
|
+
{
|
|
212552
|
+
"name": "end",
|
|
212553
|
+
"optional": true,
|
|
212554
|
+
"type": {
|
|
212555
|
+
"text": "number"
|
|
212556
|
+
}
|
|
212557
|
+
},
|
|
212558
|
+
{
|
|
212559
|
+
"name": "selectMode",
|
|
212560
|
+
"optional": true,
|
|
212561
|
+
"type": {
|
|
212562
|
+
"text": "SelectionMode"
|
|
212563
|
+
}
|
|
212564
|
+
}
|
|
212565
|
+
],
|
|
212566
|
+
"description": "Replaces a range of the text, as the native method does: the selection\nwhere `start` and `end` are left out, and `selectMode` says what is\nselected after. It sends no event, as the native method sends none.",
|
|
212567
|
+
"type": {
|
|
212568
|
+
"text": "setRangeText(replacement: string, start?: number, end?: number, selectMode?: SelectionMode) => void"
|
|
212569
|
+
},
|
|
212570
|
+
"inheritedFrom": {
|
|
212571
|
+
"name": "HelixHeadlessTextarea",
|
|
212572
|
+
"module": "src/textarea/root/textarea-root.ts"
|
|
212573
|
+
}
|
|
212574
|
+
},
|
|
212575
|
+
{
|
|
212576
|
+
"kind": "method",
|
|
212577
|
+
"name": "select",
|
|
212578
|
+
"return": {
|
|
212579
|
+
"type": {
|
|
212580
|
+
"text": "void"
|
|
212581
|
+
}
|
|
212582
|
+
},
|
|
212583
|
+
"description": "Selects everything in the field.",
|
|
212584
|
+
"type": {
|
|
212585
|
+
"text": "select() => void"
|
|
212586
|
+
},
|
|
212587
|
+
"inheritedFrom": {
|
|
212588
|
+
"name": "HelixHeadlessTextarea",
|
|
212589
|
+
"module": "src/textarea/root/textarea-root.ts"
|
|
212590
|
+
}
|
|
212591
|
+
},
|
|
210400
212592
|
{
|
|
210401
212593
|
"kind": "field",
|
|
210402
212594
|
"name": "textLength",
|
|
@@ -216965,7 +219157,7 @@
|
|
|
216965
219157
|
"text": "TemplateResult | typeof nothing"
|
|
216966
219158
|
}
|
|
216967
219159
|
},
|
|
216968
|
-
"description": "The `feedback` line, or nothing while there is none.",
|
|
219160
|
+
"description": "The `feedback` line, or nothing while there is none.\n\n`role=\"alert\"`, as a field's feedback line has, so the message is\nannounced when it appears and the label and hint are not read with it.",
|
|
216969
219161
|
"inheritedFrom": {
|
|
216970
219162
|
"name": "MixinPickerFeedback",
|
|
216971
219163
|
"module": "src/mixins/mixin-picker-feedback/mixin-picker-feedback.ts"
|
|
@@ -217928,6 +220120,18 @@
|
|
|
217928
220120
|
"module": "src/time-picker/root/time-picker-root.ts"
|
|
217929
220121
|
}
|
|
217930
220122
|
},
|
|
220123
|
+
{
|
|
220124
|
+
"kind": "field",
|
|
220125
|
+
"name": "timeContent",
|
|
220126
|
+
"type": {
|
|
220127
|
+
"text": "((time: string, written: string) => unknown) | undefined | undefined"
|
|
220128
|
+
},
|
|
220129
|
+
"description": "What each time in the list shows: a function given the time as `HH:mm`,\nor `HH:mm:ss` with `seconds`, and the time as the row writes it, that\nreturns text, an element or a Lit template.\n\nFor the seats left at a time, or a caption under it, as React Aria's\n`ListBoxItem` takes children. Content with `slot=\"start\"`, `slot=\"end\"`\nor `slot=\"description\"` goes to that slot of the row, and a description\nis read after the time. The row is still named by the written time, and\ntypeahead still finds it by that. Return the written time with your\ncontent where it should still show. A property only, there being no way\nto write a function in markup. The wheels draw their own figures.",
|
|
220130
|
+
"inheritedFrom": {
|
|
220131
|
+
"name": "HelixHeadlessTimePicker",
|
|
220132
|
+
"module": "src/time-picker/root/time-picker-root.ts"
|
|
220133
|
+
}
|
|
220134
|
+
},
|
|
217931
220135
|
{
|
|
217932
220136
|
"kind": "field",
|
|
217933
220137
|
"name": "unavailableMessage",
|
|
@@ -220727,6 +222931,20 @@
|
|
|
220727
222931
|
"module": "src/timeline/item/timeline-item.ts"
|
|
220728
222932
|
}
|
|
220729
222933
|
},
|
|
222934
|
+
{
|
|
222935
|
+
"kind": "field",
|
|
222936
|
+
"name": "whole",
|
|
222937
|
+
"type": {
|
|
222938
|
+
"text": "string"
|
|
222939
|
+
},
|
|
222940
|
+
"privacy": "private",
|
|
222941
|
+
"default": "''",
|
|
222942
|
+
"description": "The whole date and time `datetime` names, the reading's title under `relative`.",
|
|
222943
|
+
"inheritedFrom": {
|
|
222944
|
+
"name": "HelixHeadlessTimelineItem",
|
|
222945
|
+
"module": "src/timeline/item/timeline-item.ts"
|
|
222946
|
+
}
|
|
222947
|
+
},
|
|
220730
222948
|
{
|
|
220731
222949
|
"kind": "field",
|
|
220732
222950
|
"name": "moment",
|
|
@@ -221482,6 +223700,20 @@
|
|
|
221482
223700
|
"attribute": "orientation",
|
|
221483
223701
|
"reflects": true
|
|
221484
223702
|
},
|
|
223703
|
+
{
|
|
223704
|
+
"kind": "field",
|
|
223705
|
+
"name": "words",
|
|
223706
|
+
"type": {
|
|
223707
|
+
"text": "string"
|
|
223708
|
+
},
|
|
223709
|
+
"static": true,
|
|
223710
|
+
"default": "'helix-timeline'",
|
|
223711
|
+
"description": "The key this family's words are registered under, its styled tag:\n`registerWords('de', { 'helix-timeline': { loadingLabel: 'Wird geladen' } })`.",
|
|
223712
|
+
"inheritedFrom": {
|
|
223713
|
+
"name": "HelixHeadlessTimeline",
|
|
223714
|
+
"module": "src/timeline/root/timeline-root.ts"
|
|
223715
|
+
}
|
|
223716
|
+
},
|
|
221485
223717
|
{
|
|
221486
223718
|
"kind": "field",
|
|
221487
223719
|
"name": "label",
|
|
@@ -221496,6 +223728,38 @@
|
|
|
221496
223728
|
"module": "src/timeline/root/timeline-root.ts"
|
|
221497
223729
|
}
|
|
221498
223730
|
},
|
|
223731
|
+
{
|
|
223732
|
+
"kind": "field",
|
|
223733
|
+
"name": "loading",
|
|
223734
|
+
"type": {
|
|
223735
|
+
"text": "boolean"
|
|
223736
|
+
},
|
|
223737
|
+
"default": "false",
|
|
223738
|
+
"description": "Marks the timeline as busy fetching more entries, and draws an entry\nafter the last that says so.",
|
|
223739
|
+
"attribute": "loading",
|
|
223740
|
+
"reflects": true,
|
|
223741
|
+
"inheritedFrom": {
|
|
223742
|
+
"name": "HelixHeadlessTimeline",
|
|
223743
|
+
"module": "src/timeline/root/timeline-root.ts"
|
|
223744
|
+
}
|
|
223745
|
+
},
|
|
223746
|
+
{
|
|
223747
|
+
"kind": "field",
|
|
223748
|
+
"name": "loadingLabel",
|
|
223749
|
+
"type": {
|
|
223750
|
+
"text": "string"
|
|
223751
|
+
},
|
|
223752
|
+
"default": "'Loading more'",
|
|
223753
|
+
"description": "The text of the entry drawn while `loading` is set, where the `loading` slot is empty.",
|
|
223754
|
+
"attribute": "loading-label",
|
|
223755
|
+
"helix": {
|
|
223756
|
+
"words": true
|
|
223757
|
+
},
|
|
223758
|
+
"inheritedFrom": {
|
|
223759
|
+
"name": "HelixHeadlessTimeline",
|
|
223760
|
+
"module": "src/timeline/root/timeline-root.ts"
|
|
223761
|
+
}
|
|
223762
|
+
},
|
|
221499
223763
|
{
|
|
221500
223764
|
"kind": "field",
|
|
221501
223765
|
"name": "tier",
|
|
@@ -221865,6 +224129,32 @@
|
|
|
221865
224129
|
"name": "HelixHeadlessTimeline",
|
|
221866
224130
|
"module": "src/timeline/root/timeline-root.ts"
|
|
221867
224131
|
}
|
|
224132
|
+
},
|
|
224133
|
+
{
|
|
224134
|
+
"name": "loading",
|
|
224135
|
+
"type": {
|
|
224136
|
+
"text": "boolean"
|
|
224137
|
+
},
|
|
224138
|
+
"default": "false",
|
|
224139
|
+
"description": "Marks the timeline as busy fetching more entries, and draws an entry\nafter the last that says so.",
|
|
224140
|
+
"fieldName": "loading",
|
|
224141
|
+
"inheritedFrom": {
|
|
224142
|
+
"name": "HelixHeadlessTimeline",
|
|
224143
|
+
"module": "src/timeline/root/timeline-root.ts"
|
|
224144
|
+
}
|
|
224145
|
+
},
|
|
224146
|
+
{
|
|
224147
|
+
"name": "loading-label",
|
|
224148
|
+
"type": {
|
|
224149
|
+
"text": "string"
|
|
224150
|
+
},
|
|
224151
|
+
"default": "'Loading more'",
|
|
224152
|
+
"description": "The text of the entry drawn while `loading` is set, where the `loading` slot is empty.",
|
|
224153
|
+
"fieldName": "loadingLabel",
|
|
224154
|
+
"inheritedFrom": {
|
|
224155
|
+
"name": "HelixHeadlessTimeline",
|
|
224156
|
+
"module": "src/timeline/root/timeline-root.ts"
|
|
224157
|
+
}
|
|
221868
224158
|
}
|
|
221869
224159
|
],
|
|
221870
224160
|
"superclass": {
|
|
@@ -221921,9 +224211,35 @@
|
|
|
221921
224211
|
"name": "HelixHeadlessTimeline",
|
|
221922
224212
|
"module": "src/timeline/root/timeline-root.ts"
|
|
221923
224213
|
}
|
|
224214
|
+
},
|
|
224215
|
+
{
|
|
224216
|
+
"description": "Content for the entry after the last while `loading` is set. Falls back to `loading-label`.",
|
|
224217
|
+
"name": "loading",
|
|
224218
|
+
"inheritedFrom": {
|
|
224219
|
+
"name": "HelixHeadlessTimeline",
|
|
224220
|
+
"module": "src/timeline/root/timeline-root.ts"
|
|
224221
|
+
}
|
|
224222
|
+
}
|
|
224223
|
+
],
|
|
224224
|
+
"cssParts": [
|
|
224225
|
+
{
|
|
224226
|
+
"description": "The entry after the last while `loading` is set.",
|
|
224227
|
+
"name": "loading",
|
|
224228
|
+
"inheritedFrom": {
|
|
224229
|
+
"name": "HelixHeadlessTimeline",
|
|
224230
|
+
"module": "src/timeline/root/timeline-root.ts"
|
|
224231
|
+
}
|
|
221924
224232
|
}
|
|
221925
224233
|
],
|
|
221926
224234
|
"cssStates": [
|
|
224235
|
+
{
|
|
224236
|
+
"description": "While `loading` is set.",
|
|
224237
|
+
"name": "loading",
|
|
224238
|
+
"inheritedFrom": {
|
|
224239
|
+
"name": "HelixHeadlessTimeline",
|
|
224240
|
+
"module": "src/timeline/root/timeline-root.ts"
|
|
224241
|
+
}
|
|
224242
|
+
},
|
|
221927
224243
|
{
|
|
221928
224244
|
"description": "Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.",
|
|
221929
224245
|
"name": "settled",
|
|
@@ -228961,6 +231277,20 @@
|
|
|
228961
231277
|
"module": "src/tooltip/root/tooltip-root.ts"
|
|
228962
231278
|
}
|
|
228963
231279
|
},
|
|
231280
|
+
{
|
|
231281
|
+
"kind": "field",
|
|
231282
|
+
"name": "describes",
|
|
231283
|
+
"type": {
|
|
231284
|
+
"text": "boolean"
|
|
231285
|
+
},
|
|
231286
|
+
"privacy": "private",
|
|
231287
|
+
"description": "Whether the bubble's words add anything to the trigger: they are not\nempty, and they are not the trigger's own name, such as an icon button\nnamed Settings under a tooltip reading Settings, which a screen reader\nread as \"Settings, Settings\".",
|
|
231288
|
+
"readonly": true,
|
|
231289
|
+
"inheritedFrom": {
|
|
231290
|
+
"name": "HelixHeadlessTooltip",
|
|
231291
|
+
"module": "src/tooltip/root/tooltip-root.ts"
|
|
231292
|
+
}
|
|
231293
|
+
},
|
|
228964
231294
|
{
|
|
228965
231295
|
"kind": "field",
|
|
228966
231296
|
"name": "linkOnArrival",
|
|
@@ -244371,6 +246701,49 @@
|
|
|
244371
246701
|
}
|
|
244372
246702
|
]
|
|
244373
246703
|
},
|
|
246704
|
+
{
|
|
246705
|
+
"kind": "javascript-module",
|
|
246706
|
+
"path": "src/virtual-list/reorder/index.ts",
|
|
246707
|
+
"declarations": [],
|
|
246708
|
+
"exports": [
|
|
246709
|
+
{
|
|
246710
|
+
"kind": "js",
|
|
246711
|
+
"name": "reorderVirtualList",
|
|
246712
|
+
"declaration": {
|
|
246713
|
+
"name": "reorderVirtualList",
|
|
246714
|
+
"package": "@fusion.dev/helix-headless/virtual-list/reorder"
|
|
246715
|
+
}
|
|
246716
|
+
},
|
|
246717
|
+
{
|
|
246718
|
+
"kind": "js",
|
|
246719
|
+
"name": "VirtualListReorderController",
|
|
246720
|
+
"declaration": {
|
|
246721
|
+
"name": "VirtualListReorderController",
|
|
246722
|
+
"package": "@fusion.dev/helix-headless/virtual-list/reorder"
|
|
246723
|
+
}
|
|
246724
|
+
}
|
|
246725
|
+
]
|
|
246726
|
+
},
|
|
246727
|
+
{
|
|
246728
|
+
"kind": "javascript-module",
|
|
246729
|
+
"path": "src/virtual-list/reorder/virtual-list-reorder.css.ts",
|
|
246730
|
+
"declarations": [
|
|
246731
|
+
{
|
|
246732
|
+
"kind": "variable",
|
|
246733
|
+
"name": "styles"
|
|
246734
|
+
}
|
|
246735
|
+
],
|
|
246736
|
+
"exports": [
|
|
246737
|
+
{
|
|
246738
|
+
"kind": "js",
|
|
246739
|
+
"name": "styles",
|
|
246740
|
+
"declaration": {
|
|
246741
|
+
"name": "styles",
|
|
246742
|
+
"module": "src/virtual-list/reorder/virtual-list-reorder.css.ts"
|
|
246743
|
+
}
|
|
246744
|
+
}
|
|
246745
|
+
]
|
|
246746
|
+
},
|
|
244374
246747
|
{
|
|
244375
246748
|
"kind": "javascript-module",
|
|
244376
246749
|
"path": "src/virtual-list/root/virtual-list-root.css.ts",
|
|
@@ -244408,6 +246781,42 @@
|
|
|
244408
246781
|
"description": "How faint a row `disabled-keys` names is drawn.",
|
|
244409
246782
|
"name": "--virtual-list-disabled-opacity"
|
|
244410
246783
|
},
|
|
246784
|
+
{
|
|
246785
|
+
"description": "The fill behind the copy of a row a pointer drags, in a `reorderable` list with `@fusion.dev/helix/virtual-list/reorder` imported.",
|
|
246786
|
+
"name": "--virtual-list-drag-preview-background-color"
|
|
246787
|
+
},
|
|
246788
|
+
{
|
|
246789
|
+
"description": "The color of the edge around the copy of a row a pointer drags.",
|
|
246790
|
+
"name": "--virtual-list-drag-preview-border-color"
|
|
246791
|
+
},
|
|
246792
|
+
{
|
|
246793
|
+
"description": "The width of the edge around the copy of a row a pointer drags. None by default, where the shadow lifts it.",
|
|
246794
|
+
"name": "--virtual-list-drag-preview-border-width"
|
|
246795
|
+
},
|
|
246796
|
+
{
|
|
246797
|
+
"description": "The opacity of the copy of a row a pointer drags.",
|
|
246798
|
+
"name": "--virtual-list-drag-preview-opacity"
|
|
246799
|
+
},
|
|
246800
|
+
{
|
|
246801
|
+
"description": "The corner radius of the copy of a row a pointer drags.",
|
|
246802
|
+
"name": "--virtual-list-drag-preview-radius"
|
|
246803
|
+
},
|
|
246804
|
+
{
|
|
246805
|
+
"description": "The shadow that raises the copy of a row a pointer drags over the page.",
|
|
246806
|
+
"name": "--virtual-list-drag-preview-shadow"
|
|
246807
|
+
},
|
|
246808
|
+
{
|
|
246809
|
+
"description": "The opacity of a row being dragged, in a `reorderable` list with `@fusion.dev/helix/virtual-list/reorder` imported.",
|
|
246810
|
+
"name": "--virtual-list-dragging-opacity"
|
|
246811
|
+
},
|
|
246812
|
+
{
|
|
246813
|
+
"description": "The color of the line where a dragged row would land.",
|
|
246814
|
+
"name": "--virtual-list-drop-indicator-color"
|
|
246815
|
+
},
|
|
246816
|
+
{
|
|
246817
|
+
"description": "The thickness of the line where a dragged row would land.",
|
|
246818
|
+
"name": "--virtual-list-drop-indicator-size"
|
|
246819
|
+
},
|
|
244411
246820
|
{
|
|
244412
246821
|
"description": "The color of the text in the row shown when there are no items.",
|
|
244413
246822
|
"name": "--virtual-list-empty-color"
|
|
@@ -244723,6 +247132,20 @@
|
|
|
244723
247132
|
"module": "src/virtual-list/root/virtual-list-root.ts"
|
|
244724
247133
|
}
|
|
244725
247134
|
},
|
|
247135
|
+
{
|
|
247136
|
+
"kind": "field",
|
|
247137
|
+
"name": "reorderable",
|
|
247138
|
+
"type": {
|
|
247139
|
+
"text": "boolean"
|
|
247140
|
+
},
|
|
247141
|
+
"default": "false",
|
|
247142
|
+
"description": "Lets a reader move items, once `@fusion.dev/helix/virtual-list/reorder`\n(or `@fusion.dev/helix-headless/virtual-list/reorder`) is imported: Alt\nwith an arrow moves the row the keys are on, and a pointer drags a row.\nThe list moves no item itself: you move your `items` on `helix-reorder`.\nWithout that import it does nothing, so a list that never moves items\ncarries none of the code. A list of one column, without sections.",
|
|
247143
|
+
"attribute": "reorderable",
|
|
247144
|
+
"inheritedFrom": {
|
|
247145
|
+
"name": "HelixHeadlessVirtualList",
|
|
247146
|
+
"module": "src/virtual-list/root/virtual-list-root.ts"
|
|
247147
|
+
}
|
|
247148
|
+
},
|
|
244726
247149
|
{
|
|
244727
247150
|
"kind": "field",
|
|
244728
247151
|
"name": "sectionField",
|
|
@@ -245500,21 +247923,6 @@
|
|
|
245500
247923
|
"module": "src/virtual-list/root/virtual-list-root.ts"
|
|
245501
247924
|
}
|
|
245502
247925
|
},
|
|
245503
|
-
{
|
|
245504
|
-
"kind": "method",
|
|
245505
|
-
"name": "keys",
|
|
245506
|
-
"privacy": "private",
|
|
245507
|
-
"return": {
|
|
245508
|
-
"type": {
|
|
245509
|
-
"text": "string[]"
|
|
245510
|
-
}
|
|
245511
|
-
},
|
|
245512
|
-
"description": "Every item's key, in the order of the set.",
|
|
245513
|
-
"inheritedFrom": {
|
|
245514
|
-
"name": "HelixHeadlessVirtualList",
|
|
245515
|
-
"module": "src/virtual-list/root/virtual-list-root.ts"
|
|
245516
|
-
}
|
|
245517
|
-
},
|
|
245518
247926
|
{
|
|
245519
247927
|
"kind": "field",
|
|
245520
247928
|
"name": "chosen",
|
|
@@ -245617,29 +248025,6 @@
|
|
|
245617
248025
|
"module": "src/virtual-list/root/virtual-list-root.ts"
|
|
245618
248026
|
}
|
|
245619
248027
|
},
|
|
245620
|
-
{
|
|
245621
|
-
"kind": "method",
|
|
245622
|
-
"name": "focusIndex",
|
|
245623
|
-
"privacy": "private",
|
|
245624
|
-
"return": {
|
|
245625
|
-
"type": {
|
|
245626
|
-
"text": "Promise<void>"
|
|
245627
|
-
}
|
|
245628
|
-
},
|
|
245629
|
-
"parameters": [
|
|
245630
|
-
{
|
|
245631
|
-
"name": "index",
|
|
245632
|
-
"type": {
|
|
245633
|
-
"text": "number"
|
|
245634
|
-
}
|
|
245635
|
-
}
|
|
245636
|
-
],
|
|
245637
|
-
"description": "Focuses the row for item `index`, scrolling it into view and drawing it\nfirst when it is not drawn.",
|
|
245638
|
-
"inheritedFrom": {
|
|
245639
|
-
"name": "HelixHeadlessVirtualList",
|
|
245640
|
-
"module": "src/virtual-list/root/virtual-list-root.ts"
|
|
245641
|
-
}
|
|
245642
|
-
},
|
|
245643
248028
|
{
|
|
245644
248029
|
"kind": "field",
|
|
245645
248030
|
"name": "handleFocusOut",
|
|
@@ -245690,6 +248075,20 @@
|
|
|
245690
248075
|
"module": "src/virtual-list/root/virtual-list-root.ts"
|
|
245691
248076
|
}
|
|
245692
248077
|
},
|
|
248078
|
+
{
|
|
248079
|
+
"kind": "field",
|
|
248080
|
+
"name": "visited",
|
|
248081
|
+
"type": {
|
|
248082
|
+
"text": "boolean"
|
|
248083
|
+
},
|
|
248084
|
+
"privacy": "private",
|
|
248085
|
+
"default": "false",
|
|
248086
|
+
"description": "Whether a reader has focused a row, after which their row keeps the tab stop.",
|
|
248087
|
+
"inheritedFrom": {
|
|
248088
|
+
"name": "HelixHeadlessVirtualList",
|
|
248089
|
+
"module": "src/virtual-list/root/virtual-list-root.ts"
|
|
248090
|
+
}
|
|
248091
|
+
},
|
|
245693
248092
|
{
|
|
245694
248093
|
"kind": "method",
|
|
245695
248094
|
"name": "keptIndex",
|
|
@@ -245699,7 +248098,7 @@
|
|
|
245699
248098
|
"text": "number | undefined"
|
|
245700
248099
|
}
|
|
245701
248100
|
},
|
|
245702
|
-
"description": "The item drawn outside the window to keep focus, or to take
|
|
248101
|
+
"description": "The item drawn outside the window to keep focus, to take it, or to take\nit back: the row a reader last focused stays drawn after focus leaves the\nlist, so Shift+Tab returns to it.",
|
|
245703
248102
|
"inheritedFrom": {
|
|
245704
248103
|
"name": "HelixHeadlessVirtualList",
|
|
245705
248104
|
"module": "src/virtual-list/root/virtual-list-root.ts"
|
|
@@ -245842,7 +248241,7 @@
|
|
|
245842
248241
|
"text": "void"
|
|
245843
248242
|
}
|
|
245844
248243
|
},
|
|
245845
|
-
"description": "Puts the windowed rows into the light DOM, and takes the rest out.\n\n**A row that stays in the window keeps its element.** Clearing and\ncloning every row on every move replaced the node a reader had focused,\nso a link in a row lost focus to the body on any scroll, even with its row\nstill on screen. Rows are keyed by item: the ones leaving go, the ones\narriving are drawn in their place, and the ones staying are not moved.\n\n**The row holding focus is drawn outside the window too**, beside it on the\nside it belongs, and the spacer on that side gives up its room.\n\n**One row holds the tab stop**, the one the reader last focused
|
|
248244
|
+
"description": "Puts the windowed rows into the light DOM, and takes the rest out.\n\n**A row that stays in the window keeps its element.** Clearing and\ncloning every row on every move replaced the node a reader had focused,\nso a link in a row lost focus to the body on any scroll, even with its row\nstill on screen. Rows are keyed by item: the ones leaving go, the ones\narriving are drawn in their place, and the ones staying are not moved.\n\n**The row holding focus is drawn outside the window too**, beside it on the\nside it belongs, and the spacer on that side gives up its room.\n\n**One row holds the tab stop**, the one the reader last focused, which\nstays drawn outside the window, and the first row on screen in a list\nnobody has focused yet. Its own links and buttons are in the tab order,\nand those of every other row wait.",
|
|
245846
248245
|
"inheritedFrom": {
|
|
245847
248246
|
"name": "HelixHeadlessVirtualList",
|
|
245848
248247
|
"module": "src/virtual-list/root/virtual-list-root.ts"
|
|
@@ -246512,6 +248911,19 @@
|
|
|
246512
248911
|
"module": "src/virtual-list/root/virtual-list-root.ts"
|
|
246513
248912
|
}
|
|
246514
248913
|
},
|
|
248914
|
+
{
|
|
248915
|
+
"name": "reorderable",
|
|
248916
|
+
"type": {
|
|
248917
|
+
"text": "boolean"
|
|
248918
|
+
},
|
|
248919
|
+
"default": "false",
|
|
248920
|
+
"description": "Lets a reader move items, once `@fusion.dev/helix/virtual-list/reorder`\n(or `@fusion.dev/helix-headless/virtual-list/reorder`) is imported: Alt\nwith an arrow moves the row the keys are on, and a pointer drags a row.\nThe list moves no item itself: you move your `items` on `helix-reorder`.\nWithout that import it does nothing, so a list that never moves items\ncarries none of the code. A list of one column, without sections.",
|
|
248921
|
+
"fieldName": "reorderable",
|
|
248922
|
+
"inheritedFrom": {
|
|
248923
|
+
"name": "HelixHeadlessVirtualList",
|
|
248924
|
+
"module": "src/virtual-list/root/virtual-list-root.ts"
|
|
248925
|
+
}
|
|
248926
|
+
},
|
|
246515
248927
|
{
|
|
246516
248928
|
"name": "section-field",
|
|
246517
248929
|
"type": {
|
|
@@ -246602,6 +249014,18 @@
|
|
|
246602
249014
|
"module": "src/virtual-list/root/virtual-list-root.ts"
|
|
246603
249015
|
}
|
|
246604
249016
|
},
|
|
249017
|
+
{
|
|
249018
|
+
"type": {
|
|
249019
|
+
"text": "HelixBeforeReorderEvent"
|
|
249020
|
+
},
|
|
249021
|
+
"description": "Fired when an item is dropped at a new place, in a `reorderable` list with `@fusion.dev/helix/virtual-list/reorder` imported, with every key in the new order. Cancelable: cancel it to keep the item where it is.",
|
|
249022
|
+
"name": "helix-before-reorder",
|
|
249023
|
+
"reactProp": "onhelix-before-reorder",
|
|
249024
|
+
"inheritedFrom": {
|
|
249025
|
+
"name": "HelixHeadlessVirtualList",
|
|
249026
|
+
"module": "src/virtual-list/root/virtual-list-root.ts"
|
|
249027
|
+
}
|
|
249028
|
+
},
|
|
246605
249029
|
{
|
|
246606
249030
|
"type": {
|
|
246607
249031
|
"text": "HelixLoadMoreEvent"
|
|
@@ -246625,6 +249049,18 @@
|
|
|
246625
249049
|
"name": "HelixHeadlessVirtualList",
|
|
246626
249050
|
"module": "src/virtual-list/root/virtual-list-root.ts"
|
|
246627
249051
|
}
|
|
249052
|
+
},
|
|
249053
|
+
{
|
|
249054
|
+
"type": {
|
|
249055
|
+
"text": "HelixReorderEvent"
|
|
249056
|
+
},
|
|
249057
|
+
"description": "Fired after `helix-before-reorder` when nobody canceled it. Set `items` to the order in `keys`. Cancelable: cancel it to say the move did not happen.",
|
|
249058
|
+
"name": "helix-reorder",
|
|
249059
|
+
"reactProp": "onhelix-reorder",
|
|
249060
|
+
"inheritedFrom": {
|
|
249061
|
+
"name": "HelixHeadlessVirtualList",
|
|
249062
|
+
"module": "src/virtual-list/root/virtual-list-root.ts"
|
|
249063
|
+
}
|
|
246628
249064
|
}
|
|
246629
249065
|
],
|
|
246630
249066
|
"cssStates": [
|
|
@@ -246687,6 +249123,6 @@
|
|
|
246687
249123
|
],
|
|
246688
249124
|
"helix": {
|
|
246689
249125
|
"package": "@fusion.dev/helix",
|
|
246690
|
-
"version": "0.
|
|
249126
|
+
"version": "0.173.0"
|
|
246691
249127
|
}
|
|
246692
249128
|
}
|