@raylang/elements 0.7.0 → 0.9.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.
Files changed (58) hide show
  1. package/base.css +1 -1
  2. package/components/accordion/accordion.js +7 -4
  3. package/components/alert/alert.js +2 -1
  4. package/components/attachment/attachment.js +4 -5
  5. package/components/blockquote/blockquote.js +2 -2
  6. package/components/bottom-nav/bottom-nav.js +3 -3
  7. package/components/carousel/carousel.js +22 -10
  8. package/components/checkbox/checkbox.js +5 -2
  9. package/components/checkbox-group/checkbox-group.js +1 -1
  10. package/components/code/code.js +16 -11
  11. package/components/color-picker/color-picker.js +5 -5
  12. package/components/combobox/combobox.js +2 -1
  13. package/components/command-palette/command-palette.js +17 -2
  14. package/components/date-picker/date-picker.js +5 -3
  15. package/components/dialog/dialog.js +1 -1
  16. package/components/doc-tabs/doc-tabs.js +255 -0
  17. package/components/drawer/drawer.js +27 -9
  18. package/components/icon/icon.js +4 -1
  19. package/components/icon-button/icon-button.js +4 -0
  20. package/components/indicator/indicator.js +2 -1
  21. package/components/input/input.js +13 -1
  22. package/components/menu/menu.js +43 -8
  23. package/components/mode-input/mode-input.js +221 -0
  24. package/components/nav-link/nav-link.js +5 -2
  25. package/components/notification/notification.js +15 -12
  26. package/components/progress/progress.js +2 -2
  27. package/components/radio/radio.js +4 -2
  28. package/components/scroll-area/scroll-area.js +14 -11
  29. package/components/search/search.js +3 -3
  30. package/components/segmented-control/segmented-control.js +5 -3
  31. package/components/select/select.js +3 -3
  32. package/components/separator/separator.js +8 -3
  33. package/components/sidebar/sidebar.js +154 -11
  34. package/components/slider/slider.js +5 -2
  35. package/components/split/split.js +25 -7
  36. package/components/stepper/stepper.js +4 -4
  37. package/components/switch/switch.js +3 -3
  38. package/components/table/table.js +5 -5
  39. package/components/tabs/tabs.js +55 -14
  40. package/components/textarea/textarea.js +13 -1
  41. package/components/timeline/timeline.js +13 -8
  42. package/components/toggle-group/toggle-group.js +6 -4
  43. package/core/complete.js +252 -0
  44. package/core/core.js +6 -1
  45. package/core/direction.js +19 -0
  46. package/core/icons.js +12 -0
  47. package/core/position.js +11 -3
  48. package/core/scroll.js +85 -1
  49. package/core/styles.js +1 -1
  50. package/core/textlayer.js +214 -0
  51. package/core.js +1 -0
  52. package/custom-elements.json +1487 -143
  53. package/index.js +2 -0
  54. package/llms-full.txt +224 -28
  55. package/llms.txt +26 -4
  56. package/package.json +9 -1
  57. package/ray-elements.d.ts +190 -31
  58. package/vscode.html-custom-data.json +477 -22
@@ -642,8 +642,14 @@
642
642
  },
643
643
  {
644
644
  "name": "label-position",
645
- "description": "Side of the label.",
645
+ "description": "Side of the label: start/end follow the writing direction; left/right are sides of the screen.",
646
646
  "values": [
647
+ {
648
+ "name": "end"
649
+ },
650
+ {
651
+ "name": "start"
652
+ },
647
653
  {
648
654
  "name": "right"
649
655
  },
@@ -1593,6 +1599,242 @@
1593
1599
  }
1594
1600
  ]
1595
1601
  },
1602
+ {
1603
+ "name": "suggestions-label",
1604
+ "description": "Accessible name of the suggestion list."
1605
+ },
1606
+ {
1607
+ "name": "autocomplete",
1608
+ "description": "Forwarded to the inner input."
1609
+ },
1610
+ {
1611
+ "name": "inputmode",
1612
+ "description": "Virtual keyboard hint."
1613
+ },
1614
+ {
1615
+ "name": "pattern",
1616
+ "description": "Validation pattern (regular expression)."
1617
+ },
1618
+ {
1619
+ "name": "min",
1620
+ "description": "Minimum (number/date types)."
1621
+ },
1622
+ {
1623
+ "name": "max",
1624
+ "description": "Maximum (number/date types)."
1625
+ },
1626
+ {
1627
+ "name": "step",
1628
+ "description": "Step (number types)."
1629
+ },
1630
+ {
1631
+ "name": "minlength",
1632
+ "description": "Minimum length."
1633
+ },
1634
+ {
1635
+ "name": "maxlength",
1636
+ "description": "Maximum length."
1637
+ },
1638
+ {
1639
+ "name": "autocapitalize",
1640
+ "description": "Mobile auto-capitalization."
1641
+ },
1642
+ {
1643
+ "name": "enterkeyhint",
1644
+ "description": "Label of the Enter key on virtual keyboards."
1645
+ },
1646
+ {
1647
+ "name": "list",
1648
+ "description": "Id of a <datalist> with suggestions."
1649
+ }
1650
+ ]
1651
+ },
1652
+ {
1653
+ "name": "ray-mode-input",
1654
+ "description": "Declare the modes as <option> children (label, data-icon, data-hint, data-description, disabled, and data-set-<attribute> for each attribute the mode sets on the field) or with the options property. A mode's attributes replace the field's own while it is chosen and give them back after. The menu is a ray-menu of radio items in the field's shadow root; Alt+ArrowDown opens it from the field, and the trigger keeps the caret in the field.",
1655
+ "attributes": [
1656
+ {
1657
+ "name": "mode",
1658
+ "description": "The chosen mode's value (default: the first). Setting it applies that mode without ray-mode-change."
1659
+ },
1660
+ {
1661
+ "name": "display",
1662
+ "description": "What the trigger shows: the mode's hint or label, its icon, or both. Default: the icon when the mode has one, else the label.",
1663
+ "values": [
1664
+ {
1665
+ "name": "label"
1666
+ },
1667
+ {
1668
+ "name": "icon"
1669
+ },
1670
+ {
1671
+ "name": "both"
1672
+ }
1673
+ ]
1674
+ },
1675
+ {
1676
+ "name": "position",
1677
+ "description": "The side of the field the trigger sits on.",
1678
+ "values": [
1679
+ {
1680
+ "name": "start"
1681
+ },
1682
+ {
1683
+ "name": "end"
1684
+ }
1685
+ ]
1686
+ },
1687
+ {
1688
+ "name": "menu-label",
1689
+ "description": "The trigger's accessible name, read with the current mode (\"Mode: File\")."
1690
+ },
1691
+ {
1692
+ "name": "native-menu",
1693
+ "description": "With a native host (a std/ui window with the bridge), the system's menu (no descriptions there).",
1694
+ "valueSet": "v"
1695
+ },
1696
+ {
1697
+ "name": "value",
1698
+ "description": "Current value. The value attribute is the initial value (restored on form reset)."
1699
+ },
1700
+ {
1701
+ "name": "type",
1702
+ "description": "Input type.",
1703
+ "values": [
1704
+ {
1705
+ "name": "text"
1706
+ },
1707
+ {
1708
+ "name": "email"
1709
+ },
1710
+ {
1711
+ "name": "password"
1712
+ },
1713
+ {
1714
+ "name": "search"
1715
+ },
1716
+ {
1717
+ "name": "number"
1718
+ },
1719
+ {
1720
+ "name": "url"
1721
+ },
1722
+ {
1723
+ "name": "tel"
1724
+ }
1725
+ ]
1726
+ },
1727
+ {
1728
+ "name": "name",
1729
+ "description": "Form field name."
1730
+ },
1731
+ {
1732
+ "name": "label",
1733
+ "description": "Visible label (also the accessible name)."
1734
+ },
1735
+ {
1736
+ "name": "description",
1737
+ "description": "Help text under the label."
1738
+ },
1739
+ {
1740
+ "name": "description-position",
1741
+ "description": "The description before the control (help first) or after it, with the error (fields in a row stay aligned).",
1742
+ "values": [
1743
+ {
1744
+ "name": "above"
1745
+ },
1746
+ {
1747
+ "name": "below"
1748
+ }
1749
+ ]
1750
+ },
1751
+ {
1752
+ "name": "error",
1753
+ "description": "Error text; marks the field invalid (display only — does not block submit)."
1754
+ },
1755
+ {
1756
+ "name": "placeholder",
1757
+ "description": "Placeholder text."
1758
+ },
1759
+ {
1760
+ "name": "required",
1761
+ "description": "Required for form submission; shows an asterisk.",
1762
+ "valueSet": "v"
1763
+ },
1764
+ {
1765
+ "name": "disabled",
1766
+ "description": "Not editable nor submitted.",
1767
+ "valueSet": "v"
1768
+ },
1769
+ {
1770
+ "name": "readonly",
1771
+ "description": "Not editable, still submitted.",
1772
+ "valueSet": "v"
1773
+ },
1774
+ {
1775
+ "name": "size",
1776
+ "description": "Height and font size.",
1777
+ "values": [
1778
+ {
1779
+ "name": "xs"
1780
+ },
1781
+ {
1782
+ "name": "sm"
1783
+ },
1784
+ {
1785
+ "name": "md"
1786
+ },
1787
+ {
1788
+ "name": "lg"
1789
+ },
1790
+ {
1791
+ "name": "xl"
1792
+ }
1793
+ ]
1794
+ },
1795
+ {
1796
+ "name": "radius",
1797
+ "description": "Corner radius.",
1798
+ "values": [
1799
+ {
1800
+ "name": "xs"
1801
+ },
1802
+ {
1803
+ "name": "sm"
1804
+ },
1805
+ {
1806
+ "name": "md"
1807
+ },
1808
+ {
1809
+ "name": "lg"
1810
+ },
1811
+ {
1812
+ "name": "xl"
1813
+ },
1814
+ {
1815
+ "name": "full"
1816
+ }
1817
+ ]
1818
+ },
1819
+ {
1820
+ "name": "variant",
1821
+ "description": "Box style.",
1822
+ "values": [
1823
+ {
1824
+ "name": "default"
1825
+ },
1826
+ {
1827
+ "name": "filled"
1828
+ },
1829
+ {
1830
+ "name": "unstyled"
1831
+ }
1832
+ ]
1833
+ },
1834
+ {
1835
+ "name": "suggestions-label",
1836
+ "description": "Accessible name of the suggestion list."
1837
+ },
1596
1838
  {
1597
1839
  "name": "autocomplete",
1598
1840
  "description": "Forwarded to the inner input."
@@ -1975,6 +2217,10 @@
1975
2217
  }
1976
2218
  ]
1977
2219
  },
2220
+ {
2221
+ "name": "suggestions-label",
2222
+ "description": "Accessible name of the suggestion list."
2223
+ },
1978
2224
  {
1979
2225
  "name": "autocomplete",
1980
2226
  "description": "Forwarded to the inner input."
@@ -2190,6 +2436,10 @@
2190
2436
  }
2191
2437
  ]
2192
2438
  },
2439
+ {
2440
+ "name": "suggestions-label",
2441
+ "description": "Accessible name of the suggestion list."
2442
+ },
2193
2443
  {
2194
2444
  "name": "autocomplete",
2195
2445
  "description": "Forwarded to the inner input."
@@ -2954,8 +3204,14 @@
2954
3204
  },
2955
3205
  {
2956
3206
  "name": "label-position",
2957
- "description": "Side of the label.",
3207
+ "description": "Side of the label: start/end follow the writing direction; left/right are sides of the screen.",
2958
3208
  "values": [
3209
+ {
3210
+ "name": "end"
3211
+ },
3212
+ {
3213
+ "name": "start"
3214
+ },
2959
3215
  {
2960
3216
  "name": "right"
2961
3217
  },
@@ -3154,6 +3410,10 @@
3154
3410
  }
3155
3411
  ]
3156
3412
  },
3413
+ {
3414
+ "name": "suggestions-label",
3415
+ "description": "Accessible name of the suggestion list."
3416
+ },
3157
3417
  {
3158
3418
  "name": "radius",
3159
3419
  "description": "Corner radius.",
@@ -3511,6 +3771,52 @@
3511
3771
  }
3512
3772
  ]
3513
3773
  },
3774
+ {
3775
+ "name": "ray-doc-tabs",
3776
+ "description": "Unlike ray-tabs, a tab has no panel of its own: they all control the element named by panel, whose content the app fills for the selected one. Closing is the app's: the ×, a middle click or Delete/Backspace fire ray-request-close, and the app removes the tab (after asking about unsaved changes, if it must). When the selected tab is removed, the one at its place is selected (change) and, if the closed tab had the focus, focused. More tabs than width: the bar scrolls sideways, fades the edge that hides tabs (data-overflow-start / data-overflow-end on the host), scrolls with a vertical wheel and keeps the selected tab in view.",
3777
+ "attributes": [
3778
+ {
3779
+ "name": "value",
3780
+ "description": "Value of the selected tab (default: the first)."
3781
+ },
3782
+ {
3783
+ "name": "panel",
3784
+ "description": "The id of the shared panel: it gets role=tabpanel and aria-labelledby the selected tab; the tabs get aria-controls."
3785
+ },
3786
+ {
3787
+ "name": "label",
3788
+ "description": "Accessible name of the tab list (\"Open requests\")."
3789
+ },
3790
+ {
3791
+ "name": "close-label",
3792
+ "description": "Tooltip of the ×."
3793
+ },
3794
+ {
3795
+ "name": "dirty-label",
3796
+ "description": "What assistive technology hears after the name of a dirty tab."
3797
+ }
3798
+ ]
3799
+ },
3800
+ {
3801
+ "name": "ray-doc-tab",
3802
+ "description": "A document's tab: an icon or tag (slot left), its name (cut with an ellipsis; give the full one in title), and the × or the unsaved dot.",
3803
+ "attributes": [
3804
+ {
3805
+ "name": "value",
3806
+ "description": "Identifies the document (ray-doc-tabs value)."
3807
+ },
3808
+ {
3809
+ "name": "dirty",
3810
+ "description": "Unsaved changes: a dot in place of the ×, which comes back under the pointer.",
3811
+ "valueSet": "v"
3812
+ },
3813
+ {
3814
+ "name": "hide-close",
3815
+ "description": "Cannot be closed: no ×, no middle click, no Delete.",
3816
+ "valueSet": "v"
3817
+ }
3818
+ ]
3819
+ },
3514
3820
  {
3515
3821
  "name": "ray-nav-link",
3516
3822
  "description": "A link with href (aria-current=page when active), or a button that toggles its nested links.",
@@ -3664,9 +3970,21 @@
3664
3970
  "attributes": [
3665
3971
  {
3666
3972
  "name": "collapsed",
3667
- "description": "Wide screens: an icon rail instead of the full panel.",
3973
+ "description": "Wide screens: collapsed as collapse says (an icon rail, or out of view).",
3668
3974
  "valueSet": "v"
3669
3975
  },
3976
+ {
3977
+ "name": "collapse",
3978
+ "description": "What collapsed does on wide screens: icon, a rail of the nav links' icons; offcanvas, hidden entirely (no width, out of the tab order).",
3979
+ "values": [
3980
+ {
3981
+ "name": "icon"
3982
+ },
3983
+ {
3984
+ "name": "offcanvas"
3985
+ }
3986
+ ]
3987
+ },
3670
3988
  {
3671
3989
  "name": "open",
3672
3990
  "description": "Narrow screens: the drawer is shown (modal, focus trapped; Escape, backdrop click or a followed link close it).",
@@ -3674,8 +3992,14 @@
3674
3992
  },
3675
3993
  {
3676
3994
  "name": "side",
3677
- "description": "The edge it sits on.",
3995
+ "description": "The edge it sits on (its border faces the content, its narrow-screen drawer slides from there): start/end follow the writing direction; left/right are sides of the screen.",
3678
3996
  "values": [
3997
+ {
3998
+ "name": "start"
3999
+ },
4000
+ {
4001
+ "name": "end"
4002
+ },
3679
4003
  {
3680
4004
  "name": "left"
3681
4005
  },
@@ -3711,6 +4035,27 @@
3711
4035
  {
3712
4036
  "name": "label",
3713
4037
  "description": "Accessible name of its navigation."
4038
+ },
4039
+ {
4040
+ "name": "resizable",
4041
+ "description": "Wide screens, expanded: its inner edge drags (or, focused, arrow-keys; Shift is faster, Home/End go to the limits) the width between min-width and max-width.",
4042
+ "valueSet": "v"
4043
+ },
4044
+ {
4045
+ "name": "min-width",
4046
+ "description": "Narrowest width when resizing, in px."
4047
+ },
4048
+ {
4049
+ "name": "max-width",
4050
+ "description": "Widest width when resizing, in px."
4051
+ },
4052
+ {
4053
+ "name": "autosave",
4054
+ "description": "A key: the resized width is saved in localStorage and restored. A later change of width wins."
4055
+ },
4056
+ {
4057
+ "name": "resize-label",
4058
+ "description": "Accessible name of the resize edge."
3714
4059
  }
3715
4060
  ]
3716
4061
  },
@@ -3746,13 +4091,16 @@
3746
4091
  },
3747
4092
  {
3748
4093
  "name": "icon-position",
3749
- "description": "Label beside the number, or under it (narrow screens, many steps).",
4094
+ "description": "Label beside the number (after it in the reading direction), or under it (narrow screens, many steps). \"left\", its former name, still works.",
3750
4095
  "values": [
3751
4096
  {
3752
- "name": "left"
4097
+ "name": "start"
3753
4098
  },
3754
4099
  {
3755
4100
  "name": "top"
4101
+ },
4102
+ {
4103
+ "name": "left"
3756
4104
  }
3757
4105
  ]
3758
4106
  },
@@ -3829,7 +4177,7 @@
3829
4177
  },
3830
4178
  {
3831
4179
  "name": "ray-tabs",
3832
- "description": "Tabs and panels (WAI-ARIA tabs pattern): arrows, Home/End, automatic or manual activation.",
4180
+ "description": "More tabs than width: the list scrolls sideways, fades the edge that hides tabs, scrolls with a vertical wheel and keeps the selected tab in view. The host then carries data-overflow-start and data-overflow-end (following the writing direction), to style it further.",
3833
4181
  "attributes": [
3834
4182
  {
3835
4183
  "name": "value",
@@ -3866,6 +4214,27 @@
3866
4214
  "name": "color",
3867
4215
  "description": "Active indicator color."
3868
4216
  },
4217
+ {
4218
+ "name": "size",
4219
+ "description": "Height, font size and padding of the tabs (xs for a compact bar).",
4220
+ "values": [
4221
+ {
4222
+ "name": "xs"
4223
+ },
4224
+ {
4225
+ "name": "sm"
4226
+ },
4227
+ {
4228
+ "name": "md"
4229
+ },
4230
+ {
4231
+ "name": "lg"
4232
+ },
4233
+ {
4234
+ "name": "xl"
4235
+ }
4236
+ ]
4237
+ },
3869
4238
  {
3870
4239
  "name": "activation",
3871
4240
  "description": "manual: arrows move focus, Enter/Space activates.",
@@ -3897,6 +4266,10 @@
3897
4266
  "name": "disabled",
3898
4267
  "description": "Cannot be activated.",
3899
4268
  "valueSet": "v"
4269
+ },
4270
+ {
4271
+ "name": "count",
4272
+ "description": "A small number after the label (\"3\", \"99+\"), lighter than a badge; part of the tab's accessible name. Empty: none."
3900
4273
  }
3901
4274
  ]
3902
4275
  },
@@ -3948,6 +4321,18 @@
3948
4321
  "description": "No keyboard hint at the bottom.",
3949
4322
  "valueSet": "v"
3950
4323
  },
4324
+ {
4325
+ "name": "navigate-label",
4326
+ "description": "The keyboard hint's word for ↑↓."
4327
+ },
4328
+ {
4329
+ "name": "run-label",
4330
+ "description": "The keyboard hint's word for ↵."
4331
+ },
4332
+ {
4333
+ "name": "close-label",
4334
+ "description": "The keyboard hint's word for esc."
4335
+ },
3951
4336
  {
3952
4337
  "name": "native-menus",
3953
4338
  "description": "With a native host (ray-elements/core/raylang.js in a std/ui window, menus declared with elements/bridge), also lists the app's menu bar, grouped by menu with its shortcuts; running one gives the program the menu's own event.",
@@ -4055,8 +4440,14 @@
4055
4440
  },
4056
4441
  {
4057
4442
  "name": "position",
4058
- "description": "The edge it slides from.",
4443
+ "description": "The edge it slides from: start/end follow the writing direction; left/right are sides of the screen.",
4059
4444
  "values": [
4445
+ {
4446
+ "name": "end"
4447
+ },
4448
+ {
4449
+ "name": "start"
4450
+ },
4060
4451
  {
4061
4452
  "name": "right"
4062
4453
  },
@@ -4132,7 +4523,7 @@
4132
4523
  },
4133
4524
  {
4134
4525
  "name": "placement",
4135
- "description": "Preferred side and alignment.",
4526
+ "description": "Preferred side and alignment: top/bottom/left/right are sides of the screen; on top and bottom, -start/-end follow the writing direction (right to left, \"bottom-start\" lines up the right edges).",
4136
4527
  "values": [
4137
4528
  {
4138
4529
  "name": "bottom-start"
@@ -4197,6 +4588,30 @@
4197
4588
  {
4198
4589
  "name": "color",
4199
4590
  "description": "Text and hover color (e.g. red for destructive actions)."
4591
+ },
4592
+ {
4593
+ "name": "type",
4594
+ "description": "checkbox: choosing it toggles checked (menuitemcheckbox); radio: choosing it checks it and unchecks the radio items of the menu with the same name (menuitemradio). Both show a check mark when checked, in the native menu too.",
4595
+ "values": [
4596
+ {
4597
+ "name": "item"
4598
+ },
4599
+ {
4600
+ "name": "checkbox"
4601
+ },
4602
+ {
4603
+ "name": "radio"
4604
+ }
4605
+ ]
4606
+ },
4607
+ {
4608
+ "name": "checked",
4609
+ "description": "Checked (checkbox and radio items). Already updated when ray-select fires.",
4610
+ "valueSet": "v"
4611
+ },
4612
+ {
4613
+ "name": "name",
4614
+ "description": "The group of a radio item: one checked per name in the menu."
4200
4615
  }
4201
4616
  ]
4202
4617
  },
@@ -4221,7 +4636,7 @@
4221
4636
  },
4222
4637
  {
4223
4638
  "name": "placement",
4224
- "description": "Preferred side and alignment.",
4639
+ "description": "Preferred side and alignment: top/bottom/left/right are sides of the screen; on top and bottom, -start/-end follow the writing direction (right to left, \"bottom-start\" lines up the right edges).",
4225
4640
  "values": [
4226
4641
  {
4227
4642
  "name": "bottom"
@@ -4312,7 +4727,7 @@
4312
4727
  },
4313
4728
  {
4314
4729
  "name": "placement",
4315
- "description": "Preferred side.",
4730
+ "description": "Preferred side; -start/-end follow the writing direction.",
4316
4731
  "values": [
4317
4732
  {
4318
4733
  "name": "top"
@@ -4401,8 +4816,14 @@
4401
4816
  },
4402
4817
  {
4403
4818
  "name": "chevron-position",
4404
- "description": "Side of the chevron.",
4819
+ "description": "Side of the chevron: start/end follow the writing direction; left/right are sides of the screen.",
4405
4820
  "values": [
4821
+ {
4822
+ "name": "end"
4823
+ },
4824
+ {
4825
+ "name": "start"
4826
+ },
4406
4827
  {
4407
4828
  "name": "right"
4408
4829
  },
@@ -4965,7 +5386,7 @@
4965
5386
  },
4966
5387
  {
4967
5388
  "name": "ray-code",
4968
- "description": "The code comes from the code property, a <script type=\"text/plain\"> child (raw text: anything but a closing script tag), a <template> child (parsed as HTML: the easiest for markup, but a < that is not a tag, as in Promise<void>, breaks it), or the element's text; common indentation and blank edges are removed. Built-in languages: js/ts (jsx, tsx), json, html/xml/svg/vue, css, shell, ray and diff; others show as plain text. Library classes painted with the tokens: Prism's .token.*, highlight.js's .hljs-*, and Shiki's css-variables theme.",
5389
+ "description": "The code comes from the code property, a <script type=\"text/plain\"> child (raw text: anything but a closing script tag), a <template> child (parsed as HTML: the easiest for markup, but a < that is not a tag, as in Promise<void>, breaks it), or the element's text; common indentation and blank edges are removed (not with verbatim). Built-in languages: js/ts (jsx, tsx), json, html/xml/svg/vue, css, shell, ray and diff; others show as plain text. Library classes painted with the tokens: Prism's .token.*, highlight.js's .hljs-*, and Shiki's css-variables theme.",
4969
5390
  "attributes": [
4970
5391
  {
4971
5392
  "name": "language",
@@ -4989,6 +5410,11 @@
4989
5410
  "description": "Wraps long lines instead of scrolling sideways.",
4990
5411
  "valueSet": "v"
4991
5412
  },
5413
+ {
5414
+ "name": "verbatim",
5415
+ "description": "Shows and copies the text exactly as given: no common indentation or blank first and last lines removed. For data (a response body, a log) rather than code written in the page.",
5416
+ "valueSet": "v"
5417
+ },
4992
5418
  {
4993
5419
  "name": "max-height",
4994
5420
  "description": "Height before it scrolls: px as a number, or a CSS length. A taller block gets a \"Show all N lines\" button."
@@ -5190,6 +5616,11 @@
5190
5616
  "description": "The filled version, for a state (active, selected, favorite, unread); the outline icon when there is none. Built in: user, info, circle-check, alert-triangle, circle-x, folder, bell, star, settings, home, message-circle.",
5191
5617
  "valueSet": "v"
5192
5618
  },
5619
+ {
5620
+ "name": "mirror",
5621
+ "description": "Mirrored in a right-to-left context (dir=\"rtl\"), for an icon that points along the text: back, forward, send, undo. The roles that do (ui.next, ui.previous, ui.first, ui.last, ui.disclosure, ui.separator) mirror by themselves.",
5622
+ "valueSet": "v"
5623
+ },
5193
5624
  {
5194
5625
  "name": "size",
5195
5626
  "description": "xs…xl or any CSS length. Default: 1em."
@@ -5455,8 +5886,14 @@
5455
5886
  },
5456
5887
  {
5457
5888
  "name": "align",
5458
- "description": "Side of the line.",
5889
+ "description": "Side of the line: start/end follow the writing direction; left/right are sides of the screen.",
5459
5890
  "values": [
5891
+ {
5892
+ "name": "start"
5893
+ },
5894
+ {
5895
+ "name": "end"
5896
+ },
5460
5897
  {
5461
5898
  "name": "left"
5462
5899
  },
@@ -6073,25 +6510,37 @@
6073
6510
  "attributes": [
6074
6511
  {
6075
6512
  "name": "position",
6076
- "description": "Corner of the stack.",
6513
+ "description": "Corner of the stack: -start/-end follow the writing direction; -left/-right are sides of the screen.",
6077
6514
  "values": [
6078
6515
  {
6079
- "name": "bottom-right"
6516
+ "name": "bottom-end"
6080
6517
  },
6081
6518
  {
6082
- "name": "bottom-left"
6519
+ "name": "bottom-start"
6083
6520
  },
6084
6521
  {
6085
6522
  "name": "bottom-center"
6086
6523
  },
6087
6524
  {
6088
- "name": "top-right"
6525
+ "name": "top-end"
6089
6526
  },
6090
6527
  {
6091
- "name": "top-left"
6528
+ "name": "top-start"
6092
6529
  },
6093
6530
  {
6094
6531
  "name": "top-center"
6532
+ },
6533
+ {
6534
+ "name": "bottom-right"
6535
+ },
6536
+ {
6537
+ "name": "bottom-left"
6538
+ },
6539
+ {
6540
+ "name": "top-right"
6541
+ },
6542
+ {
6543
+ "name": "top-left"
6095
6544
  }
6096
6545
  ]
6097
6546
  },
@@ -6832,14 +7281,20 @@
6832
7281
  },
6833
7282
  {
6834
7283
  "name": "label-position",
6835
- "description": "Where the label sits.",
7284
+ "description": "Where the label sits: start/end follow the writing direction; left/right are sides of the screen.",
6836
7285
  "values": [
6837
7286
  {
6838
- "name": "left"
7287
+ "name": "start"
6839
7288
  },
6840
7289
  {
6841
7290
  "name": "center"
6842
7291
  },
7292
+ {
7293
+ "name": "end"
7294
+ },
7295
+ {
7296
+ "name": "left"
7297
+ },
6843
7298
  {
6844
7299
  "name": "right"
6845
7300
  }
@@ -6923,7 +7378,7 @@
6923
7378
  },
6924
7379
  {
6925
7380
  "name": "autosave",
6926
- "description": "A key: the size is saved in localStorage and restored."
7381
+ "description": "A key: the size and the collapsed state are saved in localStorage and restored (a saved state wins over the collapsed attribute)."
6927
7382
  }
6928
7383
  ]
6929
7384
  },