@imfusion/web-ui 0.10.0 → 0.10.1-dev.11.g9f5bc06e

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 (32) hide show
  1. package/CHANGELOG.md +76 -0
  2. package/dist/code-NTcddiYk.js +139 -0
  3. package/dist/components/app-shell/app-shell.d.ts +1 -1
  4. package/dist/components/dialog/dialog.d.ts +148 -0
  5. package/dist/components/dialog/dialog.meta.d.ts +2 -0
  6. package/dist/components/dialog/index.d.ts +2 -0
  7. package/dist/components/drawer/drawer.d.ts +1 -1
  8. package/dist/components/scroll-area/index.d.ts +2 -0
  9. package/dist/components/scroll-area/scroll-area.d.ts +49 -0
  10. package/dist/components/scroll-area/scroll-area.meta.d.ts +2 -0
  11. package/dist/index.d.ts +2 -0
  12. package/dist/index.js +2072 -1743
  13. package/dist/integrations/code-highlight.js +2 -2
  14. package/dist/integrations/frame-selection.js +1 -1
  15. package/dist/integrations/image-display-options.js +121 -111
  16. package/dist/{rolldown-runtime-Dy4uBu1J.js → resolve-state-props-DQf9WiGv.js} +12 -1
  17. package/dist/scroll-area-z9Lf9uIk.js +89 -0
  18. package/dist/slider-Bf274cMe.js +106 -0
  19. package/dist/style.css +1 -1
  20. package/dist/{tabs-DRyqtS04.js → tabs-Do0BFL12.js} +31 -32
  21. package/package.json +1 -1
  22. package/src/docgen/doc.gen.json +1099 -0
  23. package/src/llms/llms.gen.txt +12 -0
  24. package/src/llms/skills/imf-web-ui-conventions/templates/AUDIT_CHECKLIST.md +1 -0
  25. package/src/llms/skills/imf-web-ui-conventions/topics/authentication.md +2 -3
  26. package/src/llms/skills/imf-web-ui-conventions/topics/components.md +4 -1
  27. package/src/llms/skills/imf-web-ui-conventions/topics/data.md +11 -5
  28. package/src/llms/skills/imf-web-ui-conventions/topics/project-structure.md +11 -0
  29. package/src/llms/skills/imf-web-ui-conventions/topics/react.md +6 -4
  30. package/src/llms/skills/imf-web-ui-update/SKILL.md +20 -10
  31. package/dist/code-BYkr5k55.js +0 -134
  32. package/dist/slider-Cqpreglu.js +0 -116
@@ -1517,6 +1517,828 @@
1517
1517
  },
1518
1518
  "subComponents": []
1519
1519
  },
1520
+ "dialog": {
1521
+ "root": {
1522
+ "name": "Dialog.Root",
1523
+ "description": "Dialog.Root — container that manages open/closed state.",
1524
+ "props": [
1525
+ {
1526
+ "name": "actionsRef",
1527
+ "required": false,
1528
+ "type": "RefObject<DialogRootActions | null>",
1529
+ "defaultValue": null,
1530
+ "description": "A ref to imperative actions.\n- `unmount`: Manually unmounts the dialog.\nCall this after any externally controlled closing animation finishes.\n- `close`: Closes the dialog imperatively when called."
1531
+ },
1532
+ {
1533
+ "name": "children",
1534
+ "required": false,
1535
+ "type": "ReactNode | PayloadChildRenderFunction<Payload>",
1536
+ "defaultValue": null,
1537
+ "description": "The content of the dialog.\nThis can be a regular React node or a render function that receives the `payload` of the active trigger."
1538
+ },
1539
+ {
1540
+ "name": "defaultOpen",
1541
+ "required": false,
1542
+ "type": "boolean",
1543
+ "defaultValue": "false",
1544
+ "description": "Whether the dialog is initially open.\n\nTo render a controlled dialog, use the `open` prop instead."
1545
+ },
1546
+ {
1547
+ "name": "defaultTriggerId",
1548
+ "required": false,
1549
+ "type": "string | null",
1550
+ "defaultValue": null,
1551
+ "description": "ID of the trigger that the dialog is associated with.\nThis is useful in conjunction with the `defaultOpen` prop to create an initially open dialog."
1552
+ },
1553
+ {
1554
+ "name": "disablePointerDismissal",
1555
+ "required": false,
1556
+ "type": "boolean",
1557
+ "defaultValue": "false",
1558
+ "description": "Whether to prevent the dialog from closing on outside presses.\nFor non-modal dialogs, this also prevents the dialog from closing when focus moves outside of it."
1559
+ },
1560
+ {
1561
+ "name": "handle",
1562
+ "required": false,
1563
+ "type": "DialogHandle<Payload>",
1564
+ "defaultValue": null,
1565
+ "description": "A handle to associate the dialog with a trigger.\nIf specified, allows external triggers to control the dialog's open state.\nCan be created with the Dialog.createHandle() method."
1566
+ },
1567
+ {
1568
+ "name": "modal",
1569
+ "required": false,
1570
+ "type": "boolean | \"trap-focus\"",
1571
+ "defaultValue": "true",
1572
+ "description": "Determines if the dialog enters a modal state when open.\n- `true`: user interaction is limited to just the dialog: focus is trapped, document page scroll is locked, and pointer interactions on outside elements are disabled.\n- `false`: user interaction with the rest of the document is allowed.\n- `'trap-focus'`: focus is trapped inside the dialog, but document page scroll is not locked and pointer interactions outside of it remain enabled.\n\nWhen `modal` is `true` or `'trap-focus'`, render `<Dialog.Close>` inside `<Dialog.Popup>` so\ntouch screen readers can escape the popup."
1573
+ },
1574
+ {
1575
+ "name": "onOpenChange",
1576
+ "required": false,
1577
+ "type": "(\n open: boolean,\n eventDetails: DialogRootChangeEventDetails\n) => void",
1578
+ "defaultValue": null,
1579
+ "description": "Event handler called when the dialog is opened or closed."
1580
+ },
1581
+ {
1582
+ "name": "onOpenChangeComplete",
1583
+ "required": false,
1584
+ "type": "(open: boolean) => void",
1585
+ "defaultValue": null,
1586
+ "description": "Event handler called after any animations complete when the dialog is opened or closed."
1587
+ },
1588
+ {
1589
+ "name": "open",
1590
+ "required": false,
1591
+ "type": "boolean",
1592
+ "defaultValue": null,
1593
+ "description": "Whether the dialog is currently open."
1594
+ },
1595
+ {
1596
+ "name": "triggerId",
1597
+ "required": false,
1598
+ "type": "string | null",
1599
+ "defaultValue": null,
1600
+ "description": "ID of the trigger that the dialog is associated with.\nThis is useful in conjunction with the `open` prop to create a controlled dialog.\nThere's no need to specify this prop when the dialog is uncontrolled (that is, when the `open` prop is not set)."
1601
+ }
1602
+ ]
1603
+ },
1604
+ "subComponents": [
1605
+ {
1606
+ "name": "Dialog.Backdrop",
1607
+ "description": "Dialog.Backdrop — flat dark overlay that dims the page behind the dialog.",
1608
+ "props": [
1609
+ {
1610
+ "name": "className",
1611
+ "required": false,
1612
+ "type": "string | ((state: DialogBackdropState) => string)",
1613
+ "defaultValue": null,
1614
+ "description": "CSS class applied to the element, or a function that\nreturns a class based on the component's state."
1615
+ },
1616
+ {
1617
+ "name": "forceRender",
1618
+ "required": false,
1619
+ "type": "boolean",
1620
+ "defaultValue": "false",
1621
+ "description": "Whether the backdrop is forced to render even when nested."
1622
+ },
1623
+ {
1624
+ "name": "ref",
1625
+ "required": false,
1626
+ "type": "((instance: HTMLButtonElement | null) => void | (() => VoidOrUndefinedOnly)) | RefObject<HTMLButtonElement | null> | ((instance: HTMLElement | null) => void | (() => VoidOrUndefinedOnly)) | RefObject<...> | null",
1627
+ "defaultValue": null,
1628
+ "description": "Allows getting a ref to the component instance.\nOnce the component unmounts, React will set `ref.current` to `null`\n(or call the ref with `null` if you passed a callback ref).\n@see {@link https://react.dev/learn/referencing-values-with-refs#refs-and-the-dom React Docs}"
1629
+ },
1630
+ {
1631
+ "name": "render",
1632
+ "required": false,
1633
+ "type": "| ReactElement<\n unknown,\n string | JSXElementConstructor<any>\n >\n| ComponentRenderFn<HTMLProps, DialogBackdropState>",
1634
+ "defaultValue": null,
1635
+ "description": "Allows you to replace the component's HTML element\nwith a different tag, or compose it with another component.\n\nAccepts a `ReactElement` or a function that returns the element to render."
1636
+ },
1637
+ {
1638
+ "name": "style",
1639
+ "required": false,
1640
+ "type": "| CSSProperties\n| ((state: DialogBackdropState) => CSSProperties)",
1641
+ "defaultValue": null,
1642
+ "description": "Style applied to the element, or a function that\nreturns a style object based on the component's state."
1643
+ }
1644
+ ]
1645
+ },
1646
+ {
1647
+ "name": "Dialog.Body",
1648
+ "description": "Dialog.Body — the scrolling region between header and footer, a ScrollArea with the library's thumb and edge fades.",
1649
+ "props": [
1650
+ {
1651
+ "name": "className",
1652
+ "required": false,
1653
+ "type": "string | ((state: ScrollAreaRootState) => string)",
1654
+ "defaultValue": null,
1655
+ "description": "CSS class applied to the element, or a function that\nreturns a class based on the component's state."
1656
+ },
1657
+ {
1658
+ "name": "orientation",
1659
+ "required": false,
1660
+ "type": "\"none\" | \"both\" | \"horizontal\" | \"vertical\"",
1661
+ "defaultValue": "vertical",
1662
+ "description": "Which scrollbars to render. `both` also adds the Corner; `none` scrolls and fades without a visible bar."
1663
+ },
1664
+ {
1665
+ "name": "overflowEdgeThreshold",
1666
+ "required": false,
1667
+ "type": "| number\n| Partial<{\n xStart: number;\n xEnd: number;\n yStart: number;\n yEnd: number;\n }>",
1668
+ "defaultValue": "0",
1669
+ "description": "The threshold in pixels that must be passed before the overflow edge attributes are applied.\nAccepts a single number for all edges or an object to configure them individually."
1670
+ },
1671
+ {
1672
+ "name": "ref",
1673
+ "required": false,
1674
+ "type": "((instance: HTMLButtonElement | null) => void | (() => VoidOrUndefinedOnly)) | RefObject<HTMLButtonElement | null> | ((instance: HTMLElement | null) => void | (() => VoidOrUndefinedOnly)) | RefObject<...> | null",
1675
+ "defaultValue": null,
1676
+ "description": "Allows getting a ref to the component instance.\nOnce the component unmounts, React will set `ref.current` to `null`\n(or call the ref with `null` if you passed a callback ref).\n@see {@link https://react.dev/learn/referencing-values-with-refs#refs-and-the-dom React Docs}"
1677
+ },
1678
+ {
1679
+ "name": "render",
1680
+ "required": false,
1681
+ "type": "| ReactElement<\n unknown,\n string | JSXElementConstructor<any>\n >\n| ComponentRenderFn<HTMLProps, ScrollAreaRootState>",
1682
+ "defaultValue": null,
1683
+ "description": "Allows you to replace the component's HTML element\nwith a different tag, or compose it with another component.\n\nAccepts a `ReactElement` or a function that returns the element to render."
1684
+ },
1685
+ {
1686
+ "name": "style",
1687
+ "required": false,
1688
+ "type": "| CSSProperties\n| ((state: ScrollAreaRootState) => CSSProperties)",
1689
+ "defaultValue": null,
1690
+ "description": "Style applied to the element, or a function that\nreturns a style object based on the component's state."
1691
+ }
1692
+ ]
1693
+ },
1694
+ {
1695
+ "name": "Dialog.Close",
1696
+ "description": "Dialog.Close — button that closes the dialog. With no `children` and no `render` it renders the library's ghost close\nbutton (an × icon labelled \"Close\"); otherwise render your own `Button`.",
1697
+ "props": [
1698
+ {
1699
+ "name": "className",
1700
+ "required": false,
1701
+ "type": "string | ((state: DialogCloseState) => string)",
1702
+ "defaultValue": null,
1703
+ "description": "CSS class applied to the element, or a function that\nreturns a class based on the component's state."
1704
+ },
1705
+ {
1706
+ "name": "nativeButton",
1707
+ "required": false,
1708
+ "type": "boolean",
1709
+ "defaultValue": "true",
1710
+ "description": "Whether the component renders a native `<button>` element when replacing it\nvia the `render` prop.\nSet to `false` if the rendered element is not a button (for example, `<div>`)."
1711
+ },
1712
+ {
1713
+ "name": "ref",
1714
+ "required": false,
1715
+ "type": "((instance: HTMLButtonElement | null) => void | (() => VoidOrUndefinedOnly)) | RefObject<HTMLButtonElement | null> | ((instance: HTMLElement | null) => void | (() => VoidOrUndefinedOnly)) | RefObject<...> | null",
1716
+ "defaultValue": null,
1717
+ "description": "Allows getting a ref to the component instance.\nOnce the component unmounts, React will set `ref.current` to `null`\n(or call the ref with `null` if you passed a callback ref).\n@see {@link https://react.dev/learn/referencing-values-with-refs#refs-and-the-dom React Docs}"
1718
+ },
1719
+ {
1720
+ "name": "render",
1721
+ "required": false,
1722
+ "type": "| ReactElement<\n unknown,\n string | JSXElementConstructor<any>\n >\n| ComponentRenderFn<HTMLProps, DialogCloseState>",
1723
+ "defaultValue": null,
1724
+ "description": "Allows you to replace the component's HTML element\nwith a different tag, or compose it with another component.\n\nAccepts a `ReactElement` or a function that returns the element to render."
1725
+ },
1726
+ {
1727
+ "name": "style",
1728
+ "required": false,
1729
+ "type": "| CSSProperties\n| ((state: DialogCloseState) => CSSProperties)",
1730
+ "defaultValue": null,
1731
+ "description": "Style applied to the element, or a function that\nreturns a style object based on the component's state."
1732
+ }
1733
+ ]
1734
+ },
1735
+ {
1736
+ "name": "Dialog.Description",
1737
+ "description": "Dialog.Description — supplementary paragraph that describes the dialog for screen readers, set as `Typo.P`.",
1738
+ "props": [
1739
+ {
1740
+ "name": "className",
1741
+ "required": false,
1742
+ "type": "| string\n| ((state: DialogDescriptionState) => string)",
1743
+ "defaultValue": null,
1744
+ "description": "CSS class applied to the element, or a function that\nreturns a class based on the component's state."
1745
+ },
1746
+ {
1747
+ "name": "ref",
1748
+ "required": false,
1749
+ "type": "((instance: HTMLButtonElement | null) => void | (() => VoidOrUndefinedOnly)) | RefObject<HTMLButtonElement | null> | ((instance: HTMLElement | null) => void | (() => VoidOrUndefinedOnly)) | RefObject<...> | null",
1750
+ "defaultValue": null,
1751
+ "description": "Allows getting a ref to the component instance.\nOnce the component unmounts, React will set `ref.current` to `null`\n(or call the ref with `null` if you passed a callback ref).\n@see {@link https://react.dev/learn/referencing-values-with-refs#refs-and-the-dom React Docs}"
1752
+ },
1753
+ {
1754
+ "name": "render",
1755
+ "required": false,
1756
+ "type": "| ReactElement<\n unknown,\n string | JSXElementConstructor<any>\n >\n| ComponentRenderFn<HTMLProps, DialogDescriptionState>",
1757
+ "defaultValue": null,
1758
+ "description": "Allows you to replace the component's HTML element\nwith a different tag, or compose it with another component.\n\nAccepts a `ReactElement` or a function that returns the element to render."
1759
+ },
1760
+ {
1761
+ "name": "style",
1762
+ "required": false,
1763
+ "type": "| CSSProperties\n| ((state: DialogDescriptionState) => CSSProperties)",
1764
+ "defaultValue": null,
1765
+ "description": "Style applied to the element, or a function that\nreturns a style object based on the component's state."
1766
+ }
1767
+ ]
1768
+ },
1769
+ {
1770
+ "name": "Dialog.Footer",
1771
+ "description": "Dialog.Footer — row of actions pinned to the bottom of the popup.",
1772
+ "props": [
1773
+ {
1774
+ "name": "ref",
1775
+ "required": false,
1776
+ "type": "((instance: HTMLButtonElement | null) => void | (() => VoidOrUndefinedOnly)) | RefObject<HTMLButtonElement | null> | ((instance: HTMLElement | null) => void | (() => VoidOrUndefinedOnly)) | RefObject<...> | null",
1777
+ "defaultValue": null,
1778
+ "description": "Allows getting a ref to the component instance.\nOnce the component unmounts, React will set `ref.current` to `null`\n(or call the ref with `null` if you passed a callback ref).\n@see {@link https://react.dev/learn/referencing-values-with-refs#refs-and-the-dom React Docs}"
1779
+ }
1780
+ ]
1781
+ },
1782
+ {
1783
+ "name": "Dialog.Header",
1784
+ "description": "Dialog.Header — band at the top of the popup that holds the title, description, and close button.",
1785
+ "props": [
1786
+ {
1787
+ "name": "ref",
1788
+ "required": false,
1789
+ "type": "((instance: HTMLButtonElement | null) => void | (() => VoidOrUndefinedOnly)) | RefObject<HTMLButtonElement | null> | ((instance: HTMLElement | null) => void | (() => VoidOrUndefinedOnly)) | RefObject<...> | null",
1790
+ "defaultValue": null,
1791
+ "description": "Allows getting a ref to the component instance.\nOnce the component unmounts, React will set `ref.current` to `null`\n(or call the ref with `null` if you passed a callback ref).\n@see {@link https://react.dev/learn/referencing-values-with-refs#refs-and-the-dom React Docs}"
1792
+ },
1793
+ {
1794
+ "name": "variant",
1795
+ "required": false,
1796
+ "type": "HeaderVariant",
1797
+ "defaultValue": "main",
1798
+ "description": "Colour of the header band. On `primary` the title, description, and close button turn light."
1799
+ }
1800
+ ]
1801
+ },
1802
+ {
1803
+ "name": "Dialog.Inline",
1804
+ "description": "Dialog.Inline — like Dialog.Simple, but the trigger is text inside a sentence.",
1805
+ "props": [
1806
+ {
1807
+ "name": "actions",
1808
+ "required": false,
1809
+ "type": "ReactNode",
1810
+ "defaultValue": null,
1811
+ "description": "Content of the footer, usually buttons. The footer renders only when this is set."
1812
+ },
1813
+ {
1814
+ "name": "actionsRef",
1815
+ "required": false,
1816
+ "type": "RefObject<DialogRootActions | null>",
1817
+ "defaultValue": null,
1818
+ "description": "A ref to imperative actions.\n- `unmount`: Manually unmounts the dialog.\nCall this after any externally controlled closing animation finishes.\n- `close`: Closes the dialog imperatively when called."
1819
+ },
1820
+ {
1821
+ "name": "children",
1822
+ "required": false,
1823
+ "type": "ReactNode",
1824
+ "defaultValue": null,
1825
+ "description": "Content of the body."
1826
+ },
1827
+ {
1828
+ "name": "defaultOpen",
1829
+ "required": false,
1830
+ "type": "boolean",
1831
+ "defaultValue": "false",
1832
+ "description": "Whether the dialog is initially open.\n\nTo render a controlled dialog, use the `open` prop instead."
1833
+ },
1834
+ {
1835
+ "name": "defaultTriggerId",
1836
+ "required": false,
1837
+ "type": "string | null",
1838
+ "defaultValue": null,
1839
+ "description": "ID of the trigger that the dialog is associated with.\nThis is useful in conjunction with the `defaultOpen` prop to create an initially open dialog."
1840
+ },
1841
+ {
1842
+ "name": "description",
1843
+ "required": false,
1844
+ "type": "ReactNode",
1845
+ "defaultValue": null,
1846
+ "description": "Line of context under the title."
1847
+ },
1848
+ {
1849
+ "name": "disablePointerDismissal",
1850
+ "required": false,
1851
+ "type": "boolean",
1852
+ "defaultValue": "false",
1853
+ "description": "Whether to prevent the dialog from closing on outside presses.\nFor non-modal dialogs, this also prevents the dialog from closing when focus moves outside of it."
1854
+ },
1855
+ {
1856
+ "name": "eyebrow",
1857
+ "required": false,
1858
+ "type": "ReactNode",
1859
+ "defaultValue": null,
1860
+ "description": "Short uppercase label above the title."
1861
+ },
1862
+ {
1863
+ "name": "handle",
1864
+ "required": false,
1865
+ "type": "DialogHandle<Payload>",
1866
+ "defaultValue": null,
1867
+ "description": "A handle to associate the dialog with a trigger.\nIf specified, allows external triggers to control the dialog's open state.\nCan be created with the Dialog.createHandle() method."
1868
+ },
1869
+ {
1870
+ "name": "headerVariant",
1871
+ "required": false,
1872
+ "type": "HeaderVariant",
1873
+ "defaultValue": "main",
1874
+ "description": "Colour of the header band."
1875
+ },
1876
+ {
1877
+ "name": "modal",
1878
+ "required": false,
1879
+ "type": "boolean | \"trap-focus\"",
1880
+ "defaultValue": "true",
1881
+ "description": "Determines if the dialog enters a modal state when open.\n- `true`: user interaction is limited to just the dialog: focus is trapped, document page scroll is locked, and pointer interactions on outside elements are disabled.\n- `false`: user interaction with the rest of the document is allowed.\n- `'trap-focus'`: focus is trapped inside the dialog, but document page scroll is not locked and pointer interactions outside of it remain enabled.\n\nWhen `modal` is `true` or `'trap-focus'`, render `<Dialog.Close>` inside `<Dialog.Popup>` so\ntouch screen readers can escape the popup."
1882
+ },
1883
+ {
1884
+ "name": "onOpenChange",
1885
+ "required": false,
1886
+ "type": "(\n open: boolean,\n eventDetails: DialogRootChangeEventDetails\n) => void",
1887
+ "defaultValue": null,
1888
+ "description": "Event handler called when the dialog is opened or closed."
1889
+ },
1890
+ {
1891
+ "name": "onOpenChangeComplete",
1892
+ "required": false,
1893
+ "type": "(open: boolean) => void",
1894
+ "defaultValue": null,
1895
+ "description": "Event handler called after any animations complete when the dialog is opened or closed."
1896
+ },
1897
+ {
1898
+ "name": "open",
1899
+ "required": false,
1900
+ "type": "boolean",
1901
+ "defaultValue": null,
1902
+ "description": "Whether the dialog is currently open."
1903
+ },
1904
+ {
1905
+ "name": "size",
1906
+ "required": false,
1907
+ "type": "\"sm\" | \"md\" | \"lg\" | \"full\"",
1908
+ "defaultValue": "md",
1909
+ "description": "Width of the window."
1910
+ },
1911
+ {
1912
+ "name": "status",
1913
+ "required": false,
1914
+ "type": "| NonNullable<\n \"info\" | \"positive\" | \"warning\" | \"negative\" | null\n >\n| undefined",
1915
+ "defaultValue": null,
1916
+ "description": "Adds a `Dialog.Status` with this variant at the start of the popup."
1917
+ },
1918
+ {
1919
+ "name": "title",
1920
+ "required": true,
1921
+ "type": "ReactNode",
1922
+ "defaultValue": null,
1923
+ "description": "Heading of the dialog."
1924
+ },
1925
+ {
1926
+ "name": "trigger",
1927
+ "required": true,
1928
+ "type": "ReactNode",
1929
+ "defaultValue": null,
1930
+ "description": "Text of the trigger, set as an inline term inside running prose."
1931
+ },
1932
+ {
1933
+ "name": "triggerId",
1934
+ "required": false,
1935
+ "type": "string | null",
1936
+ "defaultValue": null,
1937
+ "description": "ID of the trigger that the dialog is associated with.\nThis is useful in conjunction with the `open` prop to create a controlled dialog.\nThere's no need to specify this prop when the dialog is uncontrolled (that is, when the `open` prop is not set)."
1938
+ }
1939
+ ]
1940
+ },
1941
+ {
1942
+ "name": "Dialog.Popup",
1943
+ "description": "Dialog.Popup — the window. Holds Header, Body, and Footer, or any free content.",
1944
+ "props": [
1945
+ {
1946
+ "name": "className",
1947
+ "required": false,
1948
+ "type": "string | ((state: DialogPopupState) => string)",
1949
+ "defaultValue": null,
1950
+ "description": "CSS class applied to the element, or a function that\nreturns a class based on the component's state."
1951
+ },
1952
+ {
1953
+ "name": "finalFocus",
1954
+ "required": false,
1955
+ "type": "| boolean\n| RefObject<HTMLElement | null>\n| ((\n closeType: InteractionType\n ) => boolean | void | HTMLElement | null)",
1956
+ "defaultValue": null,
1957
+ "description": "Determines the element to focus when the dialog is closed.\n\n- `false`: Do not move focus.\n- `true`: Move focus based on the default behavior (trigger or previously focused element).\n- `RefObject`: Move focus to the ref element.\n- `function`: Called with the interaction type (`mouse`, `touch`, `pen`, or `keyboard`).\n Return an element to focus, `true` to use the default behavior, `null` to fall back to the default behavior, or `false`/`undefined` to do nothing."
1958
+ },
1959
+ {
1960
+ "name": "initialFocus",
1961
+ "required": false,
1962
+ "type": "| boolean\n| RefObject<HTMLElement | null>\n| ((\n openType: InteractionType\n ) => boolean | void | HTMLElement | null)",
1963
+ "defaultValue": null,
1964
+ "description": "Determines the element to focus when the dialog is opened.\nBy default, focus moves to the first tabbable element inside the popup, except when the dialog\nis opened by touch — then the popup itself is focused to avoid opening the virtual keyboard.\n\n- `false`: Do not move focus.\n- `true`: Move focus based on the default behavior (first tabbable element or popup).\n- `RefObject`: Move focus to the ref element.\n- `function`: Called with the interaction type (`mouse`, `touch`, `pen`, or `keyboard`).\n Return an element to focus, `true` to use the default behavior, `null` to fall back to the default behavior, or `false`/`undefined` to do nothing."
1965
+ },
1966
+ {
1967
+ "name": "ref",
1968
+ "required": false,
1969
+ "type": "((instance: HTMLButtonElement | null) => void | (() => VoidOrUndefinedOnly)) | RefObject<HTMLButtonElement | null> | ((instance: HTMLElement | null) => void | (() => VoidOrUndefinedOnly)) | RefObject<...> | null",
1970
+ "defaultValue": null,
1971
+ "description": "Allows getting a ref to the component instance.\nOnce the component unmounts, React will set `ref.current` to `null`\n(or call the ref with `null` if you passed a callback ref).\n@see {@link https://react.dev/learn/referencing-values-with-refs#refs-and-the-dom React Docs}"
1972
+ },
1973
+ {
1974
+ "name": "render",
1975
+ "required": false,
1976
+ "type": "| ReactElement<\n unknown,\n string | JSXElementConstructor<any>\n >\n| ComponentRenderFn<HTMLProps, DialogPopupState>",
1977
+ "defaultValue": null,
1978
+ "description": "Allows you to replace the component's HTML element\nwith a different tag, or compose it with another component.\n\nAccepts a `ReactElement` or a function that returns the element to render."
1979
+ },
1980
+ {
1981
+ "name": "size",
1982
+ "required": false,
1983
+ "type": "\"sm\" | \"md\" | \"lg\" | \"full\"",
1984
+ "defaultValue": "md",
1985
+ "description": "Width of the window. `full` fills the screen minus a margin."
1986
+ },
1987
+ {
1988
+ "name": "style",
1989
+ "required": false,
1990
+ "type": "| CSSProperties\n| ((state: DialogPopupState) => CSSProperties)",
1991
+ "defaultValue": null,
1992
+ "description": "Style applied to the element, or a function that\nreturns a style object based on the component's state."
1993
+ }
1994
+ ]
1995
+ },
1996
+ {
1997
+ "name": "Dialog.Portal",
1998
+ "description": "Dialog.Portal — renders backdrop and popup in a portal outside the main document flow.",
1999
+ "props": [
2000
+ {
2001
+ "name": "className",
2002
+ "required": false,
2003
+ "type": "string | ((state: DialogPortalState) => string)",
2004
+ "defaultValue": null,
2005
+ "description": "CSS class applied to the element, or a function that\nreturns a class based on the component's state."
2006
+ },
2007
+ {
2008
+ "name": "container",
2009
+ "required": false,
2010
+ "type": "| HTMLElement\n| ShadowRoot\n| RefObject<HTMLElement | ShadowRoot | null>\n| null",
2011
+ "defaultValue": null,
2012
+ "description": "A parent element to render the portal element into."
2013
+ },
2014
+ {
2015
+ "name": "keepMounted",
2016
+ "required": false,
2017
+ "type": "boolean",
2018
+ "defaultValue": "false",
2019
+ "description": "Whether to keep the portal mounted in the DOM while the popup is hidden."
2020
+ },
2021
+ {
2022
+ "name": "ref",
2023
+ "required": false,
2024
+ "type": "((instance: HTMLButtonElement | null) => void | (() => VoidOrUndefinedOnly)) | RefObject<HTMLButtonElement | null> | ((instance: HTMLElement | null) => void | (() => VoidOrUndefinedOnly)) | RefObject<...> | null",
2025
+ "defaultValue": null,
2026
+ "description": "Allows getting a ref to the component instance.\nOnce the component unmounts, React will set `ref.current` to `null`\n(or call the ref with `null` if you passed a callback ref).\n@see {@link https://react.dev/learn/referencing-values-with-refs#refs-and-the-dom React Docs}"
2027
+ },
2028
+ {
2029
+ "name": "render",
2030
+ "required": false,
2031
+ "type": "| ReactElement<\n unknown,\n string | JSXElementConstructor<any>\n >\n| ComponentRenderFn<HTMLProps, DialogPortalState>",
2032
+ "defaultValue": null,
2033
+ "description": "Allows you to replace the component's HTML element\nwith a different tag, or compose it with another component.\n\nAccepts a `ReactElement` or a function that returns the element to render."
2034
+ },
2035
+ {
2036
+ "name": "style",
2037
+ "required": false,
2038
+ "type": "| CSSProperties\n| ((state: DialogPortalState) => CSSProperties)",
2039
+ "defaultValue": null,
2040
+ "description": "Style applied to the element, or a function that\nreturns a style object based on the component's state."
2041
+ }
2042
+ ]
2043
+ },
2044
+ {
2045
+ "name": "Dialog.Simple",
2046
+ "description": "Dialog.Simple — pre-composed dialog: trigger, header with title, description, optional status and close button, a\nscrolling body, and an optional footer. Root props pass through.",
2047
+ "props": [
2048
+ {
2049
+ "name": "actions",
2050
+ "required": false,
2051
+ "type": "ReactNode",
2052
+ "defaultValue": null,
2053
+ "description": "Content of the footer, usually buttons. The footer renders only when this is set."
2054
+ },
2055
+ {
2056
+ "name": "actionsRef",
2057
+ "required": false,
2058
+ "type": "RefObject<DialogRootActions | null>",
2059
+ "defaultValue": null,
2060
+ "description": "A ref to imperative actions.\n- `unmount`: Manually unmounts the dialog.\nCall this after any externally controlled closing animation finishes.\n- `close`: Closes the dialog imperatively when called."
2061
+ },
2062
+ {
2063
+ "name": "children",
2064
+ "required": false,
2065
+ "type": "ReactNode",
2066
+ "defaultValue": null,
2067
+ "description": "Content of the body."
2068
+ },
2069
+ {
2070
+ "name": "defaultOpen",
2071
+ "required": false,
2072
+ "type": "boolean",
2073
+ "defaultValue": "false",
2074
+ "description": "Whether the dialog is initially open.\n\nTo render a controlled dialog, use the `open` prop instead."
2075
+ },
2076
+ {
2077
+ "name": "defaultTriggerId",
2078
+ "required": false,
2079
+ "type": "string | null",
2080
+ "defaultValue": null,
2081
+ "description": "ID of the trigger that the dialog is associated with.\nThis is useful in conjunction with the `defaultOpen` prop to create an initially open dialog."
2082
+ },
2083
+ {
2084
+ "name": "description",
2085
+ "required": false,
2086
+ "type": "ReactNode",
2087
+ "defaultValue": null,
2088
+ "description": "Line of context under the title."
2089
+ },
2090
+ {
2091
+ "name": "disablePointerDismissal",
2092
+ "required": false,
2093
+ "type": "boolean",
2094
+ "defaultValue": "false",
2095
+ "description": "Whether to prevent the dialog from closing on outside presses.\nFor non-modal dialogs, this also prevents the dialog from closing when focus moves outside of it."
2096
+ },
2097
+ {
2098
+ "name": "eyebrow",
2099
+ "required": false,
2100
+ "type": "ReactNode",
2101
+ "defaultValue": null,
2102
+ "description": "Short uppercase label above the title."
2103
+ },
2104
+ {
2105
+ "name": "handle",
2106
+ "required": false,
2107
+ "type": "DialogHandle<Payload>",
2108
+ "defaultValue": null,
2109
+ "description": "A handle to associate the dialog with a trigger.\nIf specified, allows external triggers to control the dialog's open state.\nCan be created with the Dialog.createHandle() method."
2110
+ },
2111
+ {
2112
+ "name": "headerVariant",
2113
+ "required": false,
2114
+ "type": "HeaderVariant",
2115
+ "defaultValue": "main",
2116
+ "description": "Colour of the header band."
2117
+ },
2118
+ {
2119
+ "name": "modal",
2120
+ "required": false,
2121
+ "type": "boolean | \"trap-focus\"",
2122
+ "defaultValue": "true",
2123
+ "description": "Determines if the dialog enters a modal state when open.\n- `true`: user interaction is limited to just the dialog: focus is trapped, document page scroll is locked, and pointer interactions on outside elements are disabled.\n- `false`: user interaction with the rest of the document is allowed.\n- `'trap-focus'`: focus is trapped inside the dialog, but document page scroll is not locked and pointer interactions outside of it remain enabled.\n\nWhen `modal` is `true` or `'trap-focus'`, render `<Dialog.Close>` inside `<Dialog.Popup>` so\ntouch screen readers can escape the popup."
2124
+ },
2125
+ {
2126
+ "name": "onOpenChange",
2127
+ "required": false,
2128
+ "type": "(\n open: boolean,\n eventDetails: DialogRootChangeEventDetails\n) => void",
2129
+ "defaultValue": null,
2130
+ "description": "Event handler called when the dialog is opened or closed."
2131
+ },
2132
+ {
2133
+ "name": "onOpenChangeComplete",
2134
+ "required": false,
2135
+ "type": "(open: boolean) => void",
2136
+ "defaultValue": null,
2137
+ "description": "Event handler called after any animations complete when the dialog is opened or closed."
2138
+ },
2139
+ {
2140
+ "name": "open",
2141
+ "required": false,
2142
+ "type": "boolean",
2143
+ "defaultValue": null,
2144
+ "description": "Whether the dialog is currently open."
2145
+ },
2146
+ {
2147
+ "name": "size",
2148
+ "required": false,
2149
+ "type": "\"sm\" | \"md\" | \"lg\" | \"full\"",
2150
+ "defaultValue": "md",
2151
+ "description": "Width of the window."
2152
+ },
2153
+ {
2154
+ "name": "status",
2155
+ "required": false,
2156
+ "type": "| NonNullable<\n \"info\" | \"positive\" | \"warning\" | \"negative\" | null\n >\n| undefined",
2157
+ "defaultValue": null,
2158
+ "description": "Adds a `Dialog.Status` with this variant at the start of the popup."
2159
+ },
2160
+ {
2161
+ "name": "title",
2162
+ "required": true,
2163
+ "type": "ReactNode",
2164
+ "defaultValue": null,
2165
+ "description": "Heading of the dialog."
2166
+ },
2167
+ {
2168
+ "name": "trigger",
2169
+ "required": false,
2170
+ "type": "ReactElement<\n unknown,\n string | JSXElementConstructor<any>\n>",
2171
+ "defaultValue": null,
2172
+ "description": "Element rendered as the trigger, such as a `Button`. Omit it for a controlled dialog."
2173
+ },
2174
+ {
2175
+ "name": "triggerId",
2176
+ "required": false,
2177
+ "type": "string | null",
2178
+ "defaultValue": null,
2179
+ "description": "ID of the trigger that the dialog is associated with.\nThis is useful in conjunction with the `open` prop to create a controlled dialog.\nThere's no need to specify this prop when the dialog is uncontrolled (that is, when the `open` prop is not set)."
2180
+ }
2181
+ ]
2182
+ },
2183
+ {
2184
+ "name": "Dialog.Status",
2185
+ "description": "Dialog.Status — a tinted column at the start of the popup, spanning its full height, that marks the dialog's\nstatus with the variant's glyph. Place it first inside `Dialog.Popup`. Pass children to replace the glyph.\nDecorative (`aria-hidden`); the title carries the status.",
2186
+ "props": [
2187
+ {
2188
+ "name": "ref",
2189
+ "required": false,
2190
+ "type": "((instance: HTMLButtonElement | null) => void | (() => VoidOrUndefinedOnly)) | RefObject<HTMLButtonElement | null> | ((instance: HTMLElement | null) => void | (() => VoidOrUndefinedOnly)) | RefObject<...> | null",
2191
+ "defaultValue": null,
2192
+ "description": "Allows getting a ref to the component instance.\nOnce the component unmounts, React will set `ref.current` to `null`\n(or call the ref with `null` if you passed a callback ref).\n@see {@link https://react.dev/learn/referencing-values-with-refs#refs-and-the-dom React Docs}"
2193
+ },
2194
+ {
2195
+ "name": "variant",
2196
+ "required": false,
2197
+ "type": "| \"info\"\n| \"positive\"\n| \"warning\"\n| \"negative\"\n| null",
2198
+ "defaultValue": "info",
2199
+ "description": ""
2200
+ }
2201
+ ]
2202
+ },
2203
+ {
2204
+ "name": "Dialog.Title",
2205
+ "description": "Dialog.Title — heading that names the dialog for screen readers, set as `Typo.H2`. Light on a `primary` header.",
2206
+ "props": [
2207
+ {
2208
+ "name": "className",
2209
+ "required": false,
2210
+ "type": "string | ((state: DialogTitleState) => string)",
2211
+ "defaultValue": null,
2212
+ "description": "CSS class applied to the element, or a function that\nreturns a class based on the component's state."
2213
+ },
2214
+ {
2215
+ "name": "ref",
2216
+ "required": false,
2217
+ "type": "((instance: HTMLButtonElement | null) => void | (() => VoidOrUndefinedOnly)) | RefObject<HTMLButtonElement | null> | ((instance: HTMLElement | null) => void | (() => VoidOrUndefinedOnly)) | RefObject<...> | null",
2218
+ "defaultValue": null,
2219
+ "description": "Allows getting a ref to the component instance.\nOnce the component unmounts, React will set `ref.current` to `null`\n(or call the ref with `null` if you passed a callback ref).\n@see {@link https://react.dev/learn/referencing-values-with-refs#refs-and-the-dom React Docs}"
2220
+ },
2221
+ {
2222
+ "name": "render",
2223
+ "required": false,
2224
+ "type": "| ReactElement<\n unknown,\n string | JSXElementConstructor<any>\n >\n| ComponentRenderFn<HTMLProps, DialogTitleState>",
2225
+ "defaultValue": null,
2226
+ "description": "Allows you to replace the component's HTML element\nwith a different tag, or compose it with another component.\n\nAccepts a `ReactElement` or a function that returns the element to render."
2227
+ },
2228
+ {
2229
+ "name": "style",
2230
+ "required": false,
2231
+ "type": "| CSSProperties\n| ((state: DialogTitleState) => CSSProperties)",
2232
+ "defaultValue": null,
2233
+ "description": "Style applied to the element, or a function that\nreturns a style object based on the component's state."
2234
+ }
2235
+ ]
2236
+ },
2237
+ {
2238
+ "name": "Dialog.Trigger",
2239
+ "description": "Dialog.Trigger — button that opens the dialog. `inline` styles it as a dashed-underlined term inside running text.",
2240
+ "props": [
2241
+ {
2242
+ "name": "className",
2243
+ "required": false,
2244
+ "type": "string | ((state: DialogTriggerState) => string)",
2245
+ "defaultValue": null,
2246
+ "description": "CSS class applied to the element, or a function that\nreturns a class based on the component's state."
2247
+ },
2248
+ {
2249
+ "name": "handle",
2250
+ "required": false,
2251
+ "type": "DialogHandle<unknown>",
2252
+ "defaultValue": null,
2253
+ "description": "A handle to associate the trigger with a dialog.\nCan be created with the Dialog.createHandle() method."
2254
+ },
2255
+ {
2256
+ "name": "id",
2257
+ "required": false,
2258
+ "type": "string",
2259
+ "defaultValue": null,
2260
+ "description": "ID of the trigger. In addition to being forwarded to the rendered element,\nit is also used to specify the active trigger for the dialog in controlled mode (with the DialogRoot `triggerId` prop)."
2261
+ },
2262
+ {
2263
+ "name": "inline",
2264
+ "required": false,
2265
+ "type": "boolean | null",
2266
+ "defaultValue": "false",
2267
+ "description": ""
2268
+ },
2269
+ {
2270
+ "name": "nativeButton",
2271
+ "required": false,
2272
+ "type": "boolean",
2273
+ "defaultValue": "true",
2274
+ "description": "Whether the component renders a native `<button>` element when replacing it\nvia the `render` prop.\nSet to `false` if the rendered element is not a button (for example, `<div>`)."
2275
+ },
2276
+ {
2277
+ "name": "payload",
2278
+ "required": false,
2279
+ "type": "unknown",
2280
+ "defaultValue": null,
2281
+ "description": "A payload to pass to the dialog when it is opened."
2282
+ },
2283
+ {
2284
+ "name": "ref",
2285
+ "required": false,
2286
+ "type": "((instance: HTMLButtonElement | null) => void | (() => VoidOrUndefinedOnly)) | RefObject<HTMLButtonElement | null> | ((instance: HTMLElement | null) => void | (() => VoidOrUndefinedOnly)) | RefObject<...> | null",
2287
+ "defaultValue": null,
2288
+ "description": "Allows getting a ref to the component instance.\nOnce the component unmounts, React will set `ref.current` to `null`\n(or call the ref with `null` if you passed a callback ref).\n@see {@link https://react.dev/learn/referencing-values-with-refs#refs-and-the-dom React Docs}"
2289
+ },
2290
+ {
2291
+ "name": "render",
2292
+ "required": false,
2293
+ "type": "| ReactElement<\n unknown,\n string | JSXElementConstructor<any>\n >\n| ComponentRenderFn<HTMLProps, DialogTriggerState>",
2294
+ "defaultValue": null,
2295
+ "description": "Allows you to replace the component's HTML element\nwith a different tag, or compose it with another component.\n\nAccepts a `ReactElement` or a function that returns the element to render."
2296
+ },
2297
+ {
2298
+ "name": "style",
2299
+ "required": false,
2300
+ "type": "| CSSProperties\n| ((state: DialogTriggerState) => CSSProperties)",
2301
+ "defaultValue": null,
2302
+ "description": "Style applied to the element, or a function that\nreturns a style object based on the component's state."
2303
+ }
2304
+ ]
2305
+ },
2306
+ {
2307
+ "name": "Dialog.Viewport",
2308
+ "description": "Dialog.Viewport — full-screen container that centres the popup.",
2309
+ "props": [
2310
+ {
2311
+ "name": "className",
2312
+ "required": false,
2313
+ "type": "string | ((state: DialogViewportState) => string)",
2314
+ "defaultValue": null,
2315
+ "description": "CSS class applied to the element, or a function that\nreturns a class based on the component's state."
2316
+ },
2317
+ {
2318
+ "name": "ref",
2319
+ "required": false,
2320
+ "type": "((instance: HTMLButtonElement | null) => void | (() => VoidOrUndefinedOnly)) | RefObject<HTMLButtonElement | null> | ((instance: HTMLElement | null) => void | (() => VoidOrUndefinedOnly)) | RefObject<...> | null",
2321
+ "defaultValue": null,
2322
+ "description": "Allows getting a ref to the component instance.\nOnce the component unmounts, React will set `ref.current` to `null`\n(or call the ref with `null` if you passed a callback ref).\n@see {@link https://react.dev/learn/referencing-values-with-refs#refs-and-the-dom React Docs}"
2323
+ },
2324
+ {
2325
+ "name": "render",
2326
+ "required": false,
2327
+ "type": "| ReactElement<\n unknown,\n string | JSXElementConstructor<any>\n >\n| ComponentRenderFn<HTMLProps, DialogViewportState>",
2328
+ "defaultValue": null,
2329
+ "description": "Allows you to replace the component's HTML element\nwith a different tag, or compose it with another component.\n\nAccepts a `ReactElement` or a function that returns the element to render."
2330
+ },
2331
+ {
2332
+ "name": "style",
2333
+ "required": false,
2334
+ "type": "| CSSProperties\n| ((state: DialogViewportState) => CSSProperties)",
2335
+ "defaultValue": null,
2336
+ "description": "Style applied to the element, or a function that\nreturns a style object based on the component's state."
2337
+ }
2338
+ ]
2339
+ }
2340
+ ]
2341
+ },
1520
2342
  "drawer": {
1521
2343
  "root": {
1522
2344
  "name": "Drawer.Root",
@@ -5356,6 +6178,283 @@
5356
6178
  },
5357
6179
  "subComponents": []
5358
6180
  },
6181
+ "scroll-area": {
6182
+ "root": {
6183
+ "name": "ScrollArea.Root",
6184
+ "description": "ScrollArea.Root — groups the viewport and its scrollbars. Give it a height or max-height.",
6185
+ "props": [
6186
+ {
6187
+ "name": "className",
6188
+ "required": false,
6189
+ "type": "string | ((state: ScrollAreaRootState) => string)",
6190
+ "defaultValue": null,
6191
+ "description": "CSS class applied to the element, or a function that\nreturns a class based on the component's state."
6192
+ },
6193
+ {
6194
+ "name": "overflowEdgeThreshold",
6195
+ "required": false,
6196
+ "type": "| number\n| Partial<{\n xStart: number;\n xEnd: number;\n yStart: number;\n yEnd: number;\n }>",
6197
+ "defaultValue": "0",
6198
+ "description": "The threshold in pixels that must be passed before the overflow edge attributes are applied.\nAccepts a single number for all edges or an object to configure them individually."
6199
+ },
6200
+ {
6201
+ "name": "ref",
6202
+ "required": false,
6203
+ "type": "Ref<HTMLDivElement>",
6204
+ "defaultValue": null,
6205
+ "description": "Allows getting a ref to the component instance.\nOnce the component unmounts, React will set `ref.current` to `null`\n(or call the ref with `null` if you passed a callback ref).\n@see {@link https://react.dev/learn/referencing-values-with-refs#refs-and-the-dom React Docs}"
6206
+ },
6207
+ {
6208
+ "name": "render",
6209
+ "required": false,
6210
+ "type": "| ReactElement<\n unknown,\n string | JSXElementConstructor<any>\n >\n| ComponentRenderFn<HTMLProps, ScrollAreaRootState>",
6211
+ "defaultValue": null,
6212
+ "description": "Allows you to replace the component's HTML element\nwith a different tag, or compose it with another component.\n\nAccepts a `ReactElement` or a function that returns the element to render."
6213
+ },
6214
+ {
6215
+ "name": "style",
6216
+ "required": false,
6217
+ "type": "| CSSProperties\n| ((state: ScrollAreaRootState) => CSSProperties)",
6218
+ "defaultValue": null,
6219
+ "description": "Style applied to the element, or a function that\nreturns a style object based on the component's state."
6220
+ }
6221
+ ]
6222
+ },
6223
+ "subComponents": [
6224
+ {
6225
+ "name": "ScrollArea.Auto",
6226
+ "description": "ScrollArea.Auto — Root, Viewport, Content, and the scrollbars for `orientation`, around `children`.",
6227
+ "props": [
6228
+ {
6229
+ "name": "className",
6230
+ "required": false,
6231
+ "type": "string | ((state: ScrollAreaRootState) => string)",
6232
+ "defaultValue": null,
6233
+ "description": "CSS class applied to the element, or a function that\nreturns a class based on the component's state."
6234
+ },
6235
+ {
6236
+ "name": "orientation",
6237
+ "required": false,
6238
+ "type": "\"none\" | \"both\" | \"horizontal\" | \"vertical\"",
6239
+ "defaultValue": "vertical",
6240
+ "description": "Which scrollbars to render. `both` also adds the Corner; `none` scrolls and fades without a visible bar."
6241
+ },
6242
+ {
6243
+ "name": "overflowEdgeThreshold",
6244
+ "required": false,
6245
+ "type": "| number\n| Partial<{\n xStart: number;\n xEnd: number;\n yStart: number;\n yEnd: number;\n }>",
6246
+ "defaultValue": "0",
6247
+ "description": "The threshold in pixels that must be passed before the overflow edge attributes are applied.\nAccepts a single number for all edges or an object to configure them individually."
6248
+ },
6249
+ {
6250
+ "name": "ref",
6251
+ "required": false,
6252
+ "type": "Ref<HTMLDivElement>",
6253
+ "defaultValue": null,
6254
+ "description": "Allows getting a ref to the component instance.\nOnce the component unmounts, React will set `ref.current` to `null`\n(or call the ref with `null` if you passed a callback ref).\n@see {@link https://react.dev/learn/referencing-values-with-refs#refs-and-the-dom React Docs}"
6255
+ },
6256
+ {
6257
+ "name": "render",
6258
+ "required": false,
6259
+ "type": "| ReactElement<\n unknown,\n string | JSXElementConstructor<any>\n >\n| ComponentRenderFn<HTMLProps, ScrollAreaRootState>",
6260
+ "defaultValue": null,
6261
+ "description": "Allows you to replace the component's HTML element\nwith a different tag, or compose it with another component.\n\nAccepts a `ReactElement` or a function that returns the element to render."
6262
+ },
6263
+ {
6264
+ "name": "style",
6265
+ "required": false,
6266
+ "type": "| CSSProperties\n| ((state: ScrollAreaRootState) => CSSProperties)",
6267
+ "defaultValue": null,
6268
+ "description": "Style applied to the element, or a function that\nreturns a style object based on the component's state."
6269
+ }
6270
+ ]
6271
+ },
6272
+ {
6273
+ "name": "ScrollArea.Content",
6274
+ "description": "ScrollArea.Content — wraps the scrolled content so the viewport can measure it.",
6275
+ "props": [
6276
+ {
6277
+ "name": "className",
6278
+ "required": false,
6279
+ "type": "| string\n| ((state: ScrollAreaContentState) => string)",
6280
+ "defaultValue": null,
6281
+ "description": "CSS class applied to the element, or a function that\nreturns a class based on the component's state."
6282
+ },
6283
+ {
6284
+ "name": "ref",
6285
+ "required": false,
6286
+ "type": "Ref<HTMLDivElement>",
6287
+ "defaultValue": null,
6288
+ "description": "Allows getting a ref to the component instance.\nOnce the component unmounts, React will set `ref.current` to `null`\n(or call the ref with `null` if you passed a callback ref).\n@see {@link https://react.dev/learn/referencing-values-with-refs#refs-and-the-dom React Docs}"
6289
+ },
6290
+ {
6291
+ "name": "render",
6292
+ "required": false,
6293
+ "type": "| ReactElement<\n unknown,\n string | JSXElementConstructor<any>\n >\n| ComponentRenderFn<HTMLProps, ScrollAreaContentState>",
6294
+ "defaultValue": null,
6295
+ "description": "Allows you to replace the component's HTML element\nwith a different tag, or compose it with another component.\n\nAccepts a `ReactElement` or a function that returns the element to render."
6296
+ },
6297
+ {
6298
+ "name": "style",
6299
+ "required": false,
6300
+ "type": "| CSSProperties\n| ((state: ScrollAreaContentState) => CSSProperties)",
6301
+ "defaultValue": null,
6302
+ "description": "Style applied to the element, or a function that\nreturns a style object based on the component's state."
6303
+ }
6304
+ ]
6305
+ },
6306
+ {
6307
+ "name": "ScrollArea.Corner",
6308
+ "description": "ScrollArea.Corner — the square where a vertical and a horizontal scrollbar meet.",
6309
+ "props": [
6310
+ {
6311
+ "name": "className",
6312
+ "required": false,
6313
+ "type": "| string\n| ((state: ScrollAreaCornerState) => string)",
6314
+ "defaultValue": null,
6315
+ "description": "CSS class applied to the element, or a function that\nreturns a class based on the component's state."
6316
+ },
6317
+ {
6318
+ "name": "ref",
6319
+ "required": false,
6320
+ "type": "Ref<HTMLDivElement>",
6321
+ "defaultValue": null,
6322
+ "description": "Allows getting a ref to the component instance.\nOnce the component unmounts, React will set `ref.current` to `null`\n(or call the ref with `null` if you passed a callback ref).\n@see {@link https://react.dev/learn/referencing-values-with-refs#refs-and-the-dom React Docs}"
6323
+ },
6324
+ {
6325
+ "name": "render",
6326
+ "required": false,
6327
+ "type": "| ReactElement<\n unknown,\n string | JSXElementConstructor<any>\n >\n| ComponentRenderFn<HTMLProps, ScrollAreaCornerState>",
6328
+ "defaultValue": null,
6329
+ "description": "Allows you to replace the component's HTML element\nwith a different tag, or compose it with another component.\n\nAccepts a `ReactElement` or a function that returns the element to render."
6330
+ },
6331
+ {
6332
+ "name": "style",
6333
+ "required": false,
6334
+ "type": "| CSSProperties\n| ((state: ScrollAreaCornerState) => CSSProperties)",
6335
+ "defaultValue": null,
6336
+ "description": "Style applied to the element, or a function that\nreturns a style object based on the component's state."
6337
+ }
6338
+ ]
6339
+ },
6340
+ {
6341
+ "name": "ScrollArea.Scrollbar",
6342
+ "description": "ScrollArea.Scrollbar — overlay bar that shows while the area is hovered or scrolling.",
6343
+ "props": [
6344
+ {
6345
+ "name": "className",
6346
+ "required": false,
6347
+ "type": "| string\n| ((state: ScrollAreaScrollbarState) => string)",
6348
+ "defaultValue": null,
6349
+ "description": "CSS class applied to the element, or a function that\nreturns a class based on the component's state."
6350
+ },
6351
+ {
6352
+ "name": "keepMounted",
6353
+ "required": false,
6354
+ "type": "boolean",
6355
+ "defaultValue": "false",
6356
+ "description": "Whether to keep the HTML element in the DOM when the viewport isn't scrollable."
6357
+ },
6358
+ {
6359
+ "name": "orientation",
6360
+ "required": false,
6361
+ "type": "\"horizontal\" | \"vertical\"",
6362
+ "defaultValue": "vertical",
6363
+ "description": "Whether the scrollbar controls vertical or horizontal scroll."
6364
+ },
6365
+ {
6366
+ "name": "ref",
6367
+ "required": false,
6368
+ "type": "Ref<HTMLDivElement>",
6369
+ "defaultValue": null,
6370
+ "description": "Allows getting a ref to the component instance.\nOnce the component unmounts, React will set `ref.current` to `null`\n(or call the ref with `null` if you passed a callback ref).\n@see {@link https://react.dev/learn/referencing-values-with-refs#refs-and-the-dom React Docs}"
6371
+ },
6372
+ {
6373
+ "name": "render",
6374
+ "required": false,
6375
+ "type": "| ReactElement<\n unknown,\n string | JSXElementConstructor<any>\n >\n| ComponentRenderFn<HTMLProps, ScrollAreaScrollbarState>",
6376
+ "defaultValue": null,
6377
+ "description": "Allows you to replace the component's HTML element\nwith a different tag, or compose it with another component.\n\nAccepts a `ReactElement` or a function that returns the element to render."
6378
+ },
6379
+ {
6380
+ "name": "style",
6381
+ "required": false,
6382
+ "type": "| CSSProperties\n| ((state: ScrollAreaScrollbarState) => CSSProperties)",
6383
+ "defaultValue": null,
6384
+ "description": "Style applied to the element, or a function that\nreturns a style object based on the component's state."
6385
+ }
6386
+ ]
6387
+ },
6388
+ {
6389
+ "name": "ScrollArea.Thumb",
6390
+ "description": "ScrollArea.Thumb — the draggable part of the scrollbar.",
6391
+ "props": [
6392
+ {
6393
+ "name": "className",
6394
+ "required": false,
6395
+ "type": "| string\n| ((state: ScrollAreaThumbState) => string)",
6396
+ "defaultValue": null,
6397
+ "description": "CSS class applied to the element, or a function that\nreturns a class based on the component's state."
6398
+ },
6399
+ {
6400
+ "name": "ref",
6401
+ "required": false,
6402
+ "type": "Ref<HTMLDivElement>",
6403
+ "defaultValue": null,
6404
+ "description": "Allows getting a ref to the component instance.\nOnce the component unmounts, React will set `ref.current` to `null`\n(or call the ref with `null` if you passed a callback ref).\n@see {@link https://react.dev/learn/referencing-values-with-refs#refs-and-the-dom React Docs}"
6405
+ },
6406
+ {
6407
+ "name": "render",
6408
+ "required": false,
6409
+ "type": "| ReactElement<\n unknown,\n string | JSXElementConstructor<any>\n >\n| ComponentRenderFn<HTMLProps, ScrollAreaThumbState>",
6410
+ "defaultValue": null,
6411
+ "description": "Allows you to replace the component's HTML element\nwith a different tag, or compose it with another component.\n\nAccepts a `ReactElement` or a function that returns the element to render."
6412
+ },
6413
+ {
6414
+ "name": "style",
6415
+ "required": false,
6416
+ "type": "| CSSProperties\n| ((state: ScrollAreaThumbState) => CSSProperties)",
6417
+ "defaultValue": null,
6418
+ "description": "Style applied to the element, or a function that\nreturns a style object based on the component's state."
6419
+ }
6420
+ ]
6421
+ },
6422
+ {
6423
+ "name": "ScrollArea.Viewport",
6424
+ "description": "ScrollArea.Viewport — the scrolling box. It fades its content out at each edge with more to scroll.",
6425
+ "props": [
6426
+ {
6427
+ "name": "className",
6428
+ "required": false,
6429
+ "type": "| string\n| ((state: ScrollAreaViewportState) => string)",
6430
+ "defaultValue": null,
6431
+ "description": "CSS class applied to the element, or a function that\nreturns a class based on the component's state."
6432
+ },
6433
+ {
6434
+ "name": "ref",
6435
+ "required": false,
6436
+ "type": "Ref<HTMLDivElement>",
6437
+ "defaultValue": null,
6438
+ "description": "Allows getting a ref to the component instance.\nOnce the component unmounts, React will set `ref.current` to `null`\n(or call the ref with `null` if you passed a callback ref).\n@see {@link https://react.dev/learn/referencing-values-with-refs#refs-and-the-dom React Docs}"
6439
+ },
6440
+ {
6441
+ "name": "render",
6442
+ "required": false,
6443
+ "type": "| ReactElement<\n unknown,\n string | JSXElementConstructor<any>\n >\n| ComponentRenderFn<HTMLProps, ScrollAreaViewportState>",
6444
+ "defaultValue": null,
6445
+ "description": "Allows you to replace the component's HTML element\nwith a different tag, or compose it with another component.\n\nAccepts a `ReactElement` or a function that returns the element to render."
6446
+ },
6447
+ {
6448
+ "name": "style",
6449
+ "required": false,
6450
+ "type": "| CSSProperties\n| ((state: ScrollAreaViewportState) => CSSProperties)",
6451
+ "defaultValue": null,
6452
+ "description": "Style applied to the element, or a function that\nreturns a style object based on the component's state."
6453
+ }
6454
+ ]
6455
+ }
6456
+ ]
6457
+ },
5359
6458
  "select": {
5360
6459
  "root": {
5361
6460
  "name": "Select.Root",