@dxos/react-list 0.8.1 → 0.8.2-main.10c050d
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/dist/lib/browser/index.mjs +77 -60
- package/dist/lib/browser/index.mjs.map +1 -1
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/node/index.cjs +77 -60
- package/dist/lib/node/index.cjs.map +1 -1
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node-esm/index.mjs +77 -60
- package/dist/lib/node-esm/index.mjs.map +1 -1
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +3 -2
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
// packages/ui/primitives/react-list/src/List.tsx
|
|
2
|
+
import { useSignals as _useSignals } from "@preact-signals/safe-react/tracking";
|
|
2
3
|
import { createContextScope } from "@radix-ui/react-context";
|
|
3
4
|
import { Primitive } from "@radix-ui/react-primitive";
|
|
4
5
|
import React, { forwardRef } from "react";
|
|
@@ -6,25 +7,31 @@ var LIST_NAME = "List";
|
|
|
6
7
|
var [createListContext, createListScope] = createContextScope(LIST_NAME, []);
|
|
7
8
|
var [ListProvider, useListContext] = createListContext(LIST_NAME);
|
|
8
9
|
var List = /* @__PURE__ */ forwardRef((props, forwardedRef) => {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
10
|
+
var _effect = _useSignals();
|
|
11
|
+
try {
|
|
12
|
+
const { __listScope, variant = "ordered", selectable = false, itemSizes, children, ...rootProps } = props;
|
|
13
|
+
const ListRoot = variant === "ordered" ? Primitive.ol : Primitive.ul;
|
|
14
|
+
return /* @__PURE__ */ React.createElement(ListRoot, {
|
|
15
|
+
...selectable && {
|
|
16
|
+
role: "listbox",
|
|
17
|
+
"aria-multiselectable": true
|
|
18
|
+
},
|
|
19
|
+
...rootProps,
|
|
20
|
+
ref: forwardedRef
|
|
21
|
+
}, /* @__PURE__ */ React.createElement(ListProvider, {
|
|
22
|
+
scope: __listScope,
|
|
23
|
+
variant,
|
|
24
|
+
selectable,
|
|
25
|
+
itemSizes
|
|
26
|
+
}, children));
|
|
27
|
+
} finally {
|
|
28
|
+
_effect.f();
|
|
29
|
+
}
|
|
24
30
|
});
|
|
25
31
|
List.displayName = LIST_NAME;
|
|
26
32
|
|
|
27
33
|
// packages/ui/primitives/react-list/src/ListItem.tsx
|
|
34
|
+
import { useSignals as _useSignals2 } from "@preact-signals/safe-react/tracking";
|
|
28
35
|
import * as Collapsible from "@radix-ui/react-collapsible";
|
|
29
36
|
import { createContextScope as createContextScope2 } from "@radix-ui/react-context";
|
|
30
37
|
import { Primitive as Primitive2 } from "@radix-ui/react-primitive";
|
|
@@ -36,55 +43,65 @@ var LIST_ITEM_NAME = "ListItem";
|
|
|
36
43
|
var [createListItemContext, createListItemScope] = createContextScope2(LIST_ITEM_NAME, []);
|
|
37
44
|
var [ListItemProvider, useListItemContext] = createListItemContext(LIST_ITEM_NAME);
|
|
38
45
|
var ListItemHeading = /* @__PURE__ */ forwardRef2(({ children, asChild, __listItemScope, ...props }, forwardedRef) => {
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
+
var _effect = _useSignals2();
|
|
47
|
+
try {
|
|
48
|
+
const { headingId } = useListItemContext(LIST_ITEM_NAME, __listItemScope);
|
|
49
|
+
const Root2 = asChild ? Slot : Primitive2.div;
|
|
50
|
+
return /* @__PURE__ */ React2.createElement(Root2, {
|
|
51
|
+
...props,
|
|
52
|
+
id: headingId,
|
|
53
|
+
ref: forwardedRef
|
|
54
|
+
}, children);
|
|
55
|
+
} finally {
|
|
56
|
+
_effect.f();
|
|
57
|
+
}
|
|
46
58
|
});
|
|
47
59
|
var ListItemOpenTrigger = Collapsible.Trigger;
|
|
48
60
|
var ListItemCollapsibleContent = Collapsible.Content;
|
|
49
61
|
var ListItem = /* @__PURE__ */ forwardRef2((props, forwardedRef) => {
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
62
|
+
var _effect = _useSignals2();
|
|
63
|
+
try {
|
|
64
|
+
const id = useId("listItem", props.id);
|
|
65
|
+
const { __listScope, __listItemScope, children, selected: propsSelected, defaultSelected, onSelectedChange, open: propsOpen, defaultOpen, onOpenChange, collapsible, labelId, ...listItemProps } = props;
|
|
66
|
+
const { selectable } = useListContext(LIST_NAME, __listScope);
|
|
67
|
+
const [selected = false, setSelected] = useControllableState({
|
|
68
|
+
prop: propsSelected,
|
|
69
|
+
defaultProp: defaultSelected,
|
|
70
|
+
onChange: onSelectedChange
|
|
71
|
+
});
|
|
72
|
+
const [open = false, setOpen] = useControllableState({
|
|
73
|
+
prop: propsOpen,
|
|
74
|
+
defaultProp: defaultOpen,
|
|
75
|
+
onChange: onOpenChange
|
|
76
|
+
});
|
|
77
|
+
const headingId = useId("listItem__heading", labelId);
|
|
78
|
+
const listItem = /* @__PURE__ */ React2.createElement(Primitive2.li, {
|
|
79
|
+
...listItemProps,
|
|
80
|
+
id,
|
|
81
|
+
ref: forwardedRef,
|
|
82
|
+
"aria-labelledby": headingId,
|
|
83
|
+
...selectable && {
|
|
84
|
+
role: "option",
|
|
85
|
+
"aria-selected": !!selected
|
|
86
|
+
},
|
|
87
|
+
...open && {
|
|
88
|
+
"aria-expanded": true
|
|
89
|
+
}
|
|
90
|
+
}, children);
|
|
91
|
+
return /* @__PURE__ */ React2.createElement(ListItemProvider, {
|
|
92
|
+
scope: __listItemScope,
|
|
93
|
+
headingId,
|
|
94
|
+
open,
|
|
95
|
+
selected,
|
|
96
|
+
setSelected
|
|
97
|
+
}, collapsible ? /* @__PURE__ */ React2.createElement(Collapsible.Root, {
|
|
98
|
+
asChild: true,
|
|
99
|
+
open,
|
|
100
|
+
onOpenChange: setOpen
|
|
101
|
+
}, listItem) : listItem);
|
|
102
|
+
} finally {
|
|
103
|
+
_effect.f();
|
|
104
|
+
}
|
|
88
105
|
});
|
|
89
106
|
ListItem.displayName = LIST_ITEM_NAME;
|
|
90
107
|
export {
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/List.tsx", "../../../src/ListItem.tsx"],
|
|
4
4
|
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { createContextScope, type Scope } from '@radix-ui/react-context';\nimport { Primitive } from '@radix-ui/react-primitive';\nimport React, { type ComponentPropsWithRef, forwardRef } from 'react';\n\n// TODO(thure): A lot of the accessible affordances for this kind of thing need to be implemented per https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/listbox_role\n\nconst LIST_NAME = 'List';\n\ntype ListScopedProps<P> = P & { __listScope?: Scope };\n\ntype ListVariant = 'ordered' | 'unordered';\n\ntype ListItemSizes = 'one' | 'many';\n\ntype ListProps = ComponentPropsWithRef<typeof Primitive.ol> & {\n selectable?: boolean;\n variant?: ListVariant;\n itemSizes?: ListItemSizes;\n};\n\nconst [createListContext, createListScope] = createContextScope(LIST_NAME, []);\n\ntype ListContextValue = {\n selectable: Exclude<ListProps['selectable'], undefined>;\n variant: Exclude<ListProps['variant'], undefined>;\n itemSizes?: ListItemSizes;\n};\n\nconst [ListProvider, useListContext] = createListContext<ListContextValue>(LIST_NAME);\n\nconst List = forwardRef<HTMLOListElement, ListProps>((props: ListScopedProps<ListProps>, forwardedRef) => {\n const { __listScope, variant = 'ordered', selectable = false, itemSizes, children, ...rootProps } = props;\n const ListRoot = variant === 'ordered' ? Primitive.ol : Primitive.ul;\n return (\n <ListRoot {...(selectable && { role: 'listbox', 'aria-multiselectable': true })} {...rootProps} ref={forwardedRef}>\n <ListProvider\n {...{\n scope: __listScope,\n variant,\n selectable,\n itemSizes,\n }}\n >\n {children}\n </ListProvider>\n </ListRoot>\n );\n});\n\nList.displayName = LIST_NAME;\n\nexport { List, createListScope, useListContext, LIST_NAME };\n\nexport type { ListProps, ListVariant, ListScopedProps };\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport type { CheckboxProps } from '@radix-ui/react-checkbox';\nimport { type CollapsibleContentProps, type CollapsibleTriggerProps } from '@radix-ui/react-collapsible';\nimport * as Collapsible from '@radix-ui/react-collapsible';\nimport { createContextScope, type Scope } from '@radix-ui/react-context';\nimport { Primitive } from '@radix-ui/react-primitive';\nimport { Slot } from '@radix-ui/react-slot';\nimport { useControllableState } from '@radix-ui/react-use-controllable-state';\nimport React, {\n type ComponentProps,\n type ComponentPropsWithoutRef,\n type Dispatch,\n type ElementRef,\n forwardRef,\n type ForwardRefExoticComponent,\n type RefAttributes,\n type SetStateAction,\n} from 'react';\n\nimport { useId } from '@dxos/react-hooks';\n\nimport { LIST_NAME, type ListScopedProps, useListContext } from './List';\n\nconst LIST_ITEM_NAME = 'ListItem';\n\ntype ListItemScopedProps<P> = P & { __listItemScope?: Scope };\n\ninterface ListItemData {\n id: string;\n labelId?: string;\n selected?: CheckboxProps['checked'];\n open?: boolean;\n}\n\ntype ListItemProps = Omit<ListItemData, 'id'> & { collapsible?: boolean } & RefAttributes<HTMLLIElement> &\n ComponentPropsWithoutRef<'li'> & {\n defaultOpen?: boolean;\n onOpenChange?: (nextOpen: boolean) => void;\n } & {\n onSelectedChange?: CheckboxProps['onCheckedChange'];\n defaultSelected?: CheckboxProps['defaultChecked'];\n };\n\ntype ListItemElement = ElementRef<'li'>;\n\nconst [createListItemContext, createListItemScope] = createContextScope(LIST_ITEM_NAME, []);\n\ntype ListItemContextValue = {\n headingId: string;\n open: boolean;\n selected: CheckboxProps['checked'];\n setSelected: Dispatch<SetStateAction<CheckboxProps['checked']>>;\n};\n\nconst [ListItemProvider, useListItemContext] = createListItemContext<ListItemContextValue>(LIST_ITEM_NAME);\n\ntype ListItemHeadingProps = ListItemScopedProps<Omit<ComponentPropsWithoutRef<'p'>, 'id'>> &\n RefAttributes<HTMLParagraphElement> & {\n asChild?: boolean;\n };\n\nconst ListItemHeading = forwardRef<HTMLDivElement, ListItemHeadingProps>(\n ({ children, asChild, __listItemScope, ...props }, forwardedRef) => {\n const { headingId } = useListItemContext(LIST_ITEM_NAME, __listItemScope);\n const Root = asChild ? Slot : Primitive.div;\n return (\n <Root {...props} id={headingId} ref={forwardedRef}>\n {children}\n </Root>\n );\n },\n);\n\ntype ListItemOpenTriggerProps = ListItemScopedProps<CollapsibleTriggerProps>;\n\nconst ListItemOpenTrigger = Collapsible.Trigger;\n\ntype ListItemCollapsibleContentProps = ComponentProps<typeof Collapsible.Content>;\n\nconst ListItemCollapsibleContent: ForwardRefExoticComponent<CollapsibleContentProps> = Collapsible.Content;\n\nconst ListItem = forwardRef<ListItemElement, ListItemProps>(\n (props: ListItemScopedProps<ListScopedProps<ListItemProps>>, forwardedRef) => {\n const id = useId('listItem', props.id);\n\n const {\n __listScope,\n __listItemScope,\n children,\n selected: propsSelected,\n defaultSelected,\n onSelectedChange,\n open: propsOpen,\n defaultOpen,\n onOpenChange,\n collapsible,\n labelId,\n ...listItemProps\n } = props;\n const { selectable } = useListContext(LIST_NAME, __listScope);\n\n const [selected = false, setSelected] = useControllableState({\n prop: propsSelected,\n defaultProp: defaultSelected,\n onChange: onSelectedChange,\n });\n\n const [open = false, setOpen] = useControllableState({\n prop: propsOpen,\n defaultProp: defaultOpen,\n onChange: onOpenChange,\n });\n\n const headingId = useId('listItem__heading', labelId);\n\n const listItem = (\n <Primitive.li\n {...listItemProps}\n id={id}\n ref={forwardedRef}\n aria-labelledby={headingId}\n {...(selectable && { role: 'option', 'aria-selected': !!selected })}\n {...(open && { 'aria-expanded': true })}\n >\n {children}\n </Primitive.li>\n );\n\n return (\n <ListItemProvider\n scope={__listItemScope}\n headingId={headingId}\n open={open}\n selected={selected}\n setSelected={setSelected}\n >\n {collapsible ? (\n <Collapsible.Root asChild open={open} onOpenChange={setOpen}>\n {listItem}\n </Collapsible.Root>\n ) : (\n listItem\n )}\n </ListItemProvider>\n );\n },\n);\n\nListItem.displayName = LIST_ITEM_NAME;\n\nexport {\n ListItem,\n ListItemHeading,\n ListItemCollapsibleContent,\n ListItemOpenTrigger,\n createListItemScope,\n useListItemContext,\n LIST_ITEM_NAME,\n};\n\nexport type {\n ListItemProps,\n ListItemHeadingProps,\n ListItemCollapsibleContentProps,\n ListItemOpenTriggerProps,\n ListItemScopedProps,\n};\n"],
|
|
5
|
-
"mappings": "
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["createContextScope", "Primitive", "React", "forwardRef", "LIST_NAME", "createListContext", "createListScope", "createContextScope", "ListProvider", "useListContext", "List", "forwardRef", "props", "forwardedRef", "__listScope", "variant", "selectable", "itemSizes", "children", "rootProps", "ListRoot", "Primitive", "ol", "ul", "role", "ref", "scope", "displayName", "Collapsible", "createContextScope", "Primitive", "Slot", "useControllableState", "React", "forwardRef", "useId", "LIST_ITEM_NAME", "createListItemContext", "createListItemScope", "createContextScope", "ListItemProvider", "useListItemContext", "ListItemHeading", "forwardRef", "children", "asChild", "__listItemScope", "props", "forwardedRef", "headingId", "Root", "Slot", "Primitive", "div", "React", "id", "ref", "ListItemOpenTrigger", "Trigger", "ListItemCollapsibleContent", "Content", "ListItem", "useId", "__listScope", "selected", "propsSelected", "defaultSelected", "onSelectedChange", "open", "propsOpen", "defaultOpen", "onOpenChange", "collapsible", "labelId", "listItemProps", "selectable", "useListContext", "LIST_NAME", "setSelected", "useControllableState", "prop", "defaultProp", "onChange", "setOpen", "listItem", "li", "aria-labelledby", "role", "scope", "displayName"]
|
|
7
7
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"inputs":{"packages/ui/primitives/react-list/src/List.tsx":{"bytes":
|
|
1
|
+
{"inputs":{"packages/ui/primitives/react-list/src/List.tsx":{"bytes":5630,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@radix-ui/react-context","kind":"import-statement","external":true},{"path":"@radix-ui/react-primitive","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true}],"format":"esm"},"packages/ui/primitives/react-list/src/ListItem.tsx":{"bytes":13458,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@radix-ui/react-collapsible","kind":"import-statement","external":true},{"path":"@radix-ui/react-context","kind":"import-statement","external":true},{"path":"@radix-ui/react-primitive","kind":"import-statement","external":true},{"path":"@radix-ui/react-slot","kind":"import-statement","external":true},{"path":"@radix-ui/react-use-controllable-state","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"packages/ui/primitives/react-list/src/List.tsx","kind":"import-statement","original":"./List"}],"format":"esm"},"packages/ui/primitives/react-list/src/index.ts":{"bytes":553,"imports":[{"path":"packages/ui/primitives/react-list/src/List.tsx","kind":"import-statement","original":"./List"},{"path":"packages/ui/primitives/react-list/src/ListItem.tsx","kind":"import-statement","original":"./ListItem"}],"format":"esm"}},"outputs":{"packages/ui/primitives/react-list/dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":10287},"packages/ui/primitives/react-list/dist/lib/browser/index.mjs":{"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@radix-ui/react-context","kind":"import-statement","external":true},{"path":"@radix-ui/react-primitive","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@radix-ui/react-collapsible","kind":"import-statement","external":true},{"path":"@radix-ui/react-context","kind":"import-statement","external":true},{"path":"@radix-ui/react-primitive","kind":"import-statement","external":true},{"path":"@radix-ui/react-slot","kind":"import-statement","external":true},{"path":"@radix-ui/react-use-controllable-state","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true}],"exports":["LIST_ITEM_NAME","LIST_NAME","List","ListItem","ListItemCollapsibleContent","ListItemHeading","ListItemOpenTrigger","createListItemScope","createListScope","useListContext","useListItemContext"],"entryPoint":"packages/ui/primitives/react-list/src/index.ts","inputs":{"packages/ui/primitives/react-list/src/List.tsx":{"bytesInOutput":1120},"packages/ui/primitives/react-list/src/index.ts":{"bytesInOutput":0},"packages/ui/primitives/react-list/src/ListItem.tsx":{"bytesInOutput":2852}},"bytes":4328}}}
|
package/dist/lib/node/index.cjs
CHANGED
|
@@ -41,9 +41,11 @@ __export(node_exports, {
|
|
|
41
41
|
useListItemContext: () => useListItemContext
|
|
42
42
|
});
|
|
43
43
|
module.exports = __toCommonJS(node_exports);
|
|
44
|
+
var import_tracking = require("@preact-signals/safe-react/tracking");
|
|
44
45
|
var import_react_context = require("@radix-ui/react-context");
|
|
45
46
|
var import_react_primitive = require("@radix-ui/react-primitive");
|
|
46
47
|
var import_react = __toESM(require("react"));
|
|
48
|
+
var import_tracking2 = require("@preact-signals/safe-react/tracking");
|
|
47
49
|
var Collapsible = __toESM(require("@radix-ui/react-collapsible"));
|
|
48
50
|
var import_react_context2 = require("@radix-ui/react-context");
|
|
49
51
|
var import_react_primitive2 = require("@radix-ui/react-primitive");
|
|
@@ -55,76 +57,91 @@ var LIST_NAME = "List";
|
|
|
55
57
|
var [createListContext, createListScope] = (0, import_react_context.createContextScope)(LIST_NAME, []);
|
|
56
58
|
var [ListProvider, useListContext] = createListContext(LIST_NAME);
|
|
57
59
|
var List = /* @__PURE__ */ (0, import_react.forwardRef)((props, forwardedRef) => {
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
60
|
+
var _effect = (0, import_tracking.useSignals)();
|
|
61
|
+
try {
|
|
62
|
+
const { __listScope, variant = "ordered", selectable = false, itemSizes, children, ...rootProps } = props;
|
|
63
|
+
const ListRoot = variant === "ordered" ? import_react_primitive.Primitive.ol : import_react_primitive.Primitive.ul;
|
|
64
|
+
return /* @__PURE__ */ import_react.default.createElement(ListRoot, {
|
|
65
|
+
...selectable && {
|
|
66
|
+
role: "listbox",
|
|
67
|
+
"aria-multiselectable": true
|
|
68
|
+
},
|
|
69
|
+
...rootProps,
|
|
70
|
+
ref: forwardedRef
|
|
71
|
+
}, /* @__PURE__ */ import_react.default.createElement(ListProvider, {
|
|
72
|
+
scope: __listScope,
|
|
73
|
+
variant,
|
|
74
|
+
selectable,
|
|
75
|
+
itemSizes
|
|
76
|
+
}, children));
|
|
77
|
+
} finally {
|
|
78
|
+
_effect.f();
|
|
79
|
+
}
|
|
73
80
|
});
|
|
74
81
|
List.displayName = LIST_NAME;
|
|
75
82
|
var LIST_ITEM_NAME = "ListItem";
|
|
76
83
|
var [createListItemContext, createListItemScope] = (0, import_react_context2.createContextScope)(LIST_ITEM_NAME, []);
|
|
77
84
|
var [ListItemProvider, useListItemContext] = createListItemContext(LIST_ITEM_NAME);
|
|
78
85
|
var ListItemHeading = /* @__PURE__ */ (0, import_react2.forwardRef)(({ children, asChild, __listItemScope, ...props }, forwardedRef) => {
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
+
var _effect = (0, import_tracking2.useSignals)();
|
|
87
|
+
try {
|
|
88
|
+
const { headingId } = useListItemContext(LIST_ITEM_NAME, __listItemScope);
|
|
89
|
+
const Root2 = asChild ? import_react_slot.Slot : import_react_primitive2.Primitive.div;
|
|
90
|
+
return /* @__PURE__ */ import_react2.default.createElement(Root2, {
|
|
91
|
+
...props,
|
|
92
|
+
id: headingId,
|
|
93
|
+
ref: forwardedRef
|
|
94
|
+
}, children);
|
|
95
|
+
} finally {
|
|
96
|
+
_effect.f();
|
|
97
|
+
}
|
|
86
98
|
});
|
|
87
99
|
var ListItemOpenTrigger = Collapsible.Trigger;
|
|
88
100
|
var ListItemCollapsibleContent = Collapsible.Content;
|
|
89
101
|
var ListItem = /* @__PURE__ */ (0, import_react2.forwardRef)((props, forwardedRef) => {
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
102
|
+
var _effect = (0, import_tracking2.useSignals)();
|
|
103
|
+
try {
|
|
104
|
+
const id = (0, import_react_hooks.useId)("listItem", props.id);
|
|
105
|
+
const { __listScope, __listItemScope, children, selected: propsSelected, defaultSelected, onSelectedChange, open: propsOpen, defaultOpen, onOpenChange, collapsible, labelId, ...listItemProps } = props;
|
|
106
|
+
const { selectable } = useListContext(LIST_NAME, __listScope);
|
|
107
|
+
const [selected = false, setSelected] = (0, import_react_use_controllable_state.useControllableState)({
|
|
108
|
+
prop: propsSelected,
|
|
109
|
+
defaultProp: defaultSelected,
|
|
110
|
+
onChange: onSelectedChange
|
|
111
|
+
});
|
|
112
|
+
const [open = false, setOpen] = (0, import_react_use_controllable_state.useControllableState)({
|
|
113
|
+
prop: propsOpen,
|
|
114
|
+
defaultProp: defaultOpen,
|
|
115
|
+
onChange: onOpenChange
|
|
116
|
+
});
|
|
117
|
+
const headingId = (0, import_react_hooks.useId)("listItem__heading", labelId);
|
|
118
|
+
const listItem = /* @__PURE__ */ import_react2.default.createElement(import_react_primitive2.Primitive.li, {
|
|
119
|
+
...listItemProps,
|
|
120
|
+
id,
|
|
121
|
+
ref: forwardedRef,
|
|
122
|
+
"aria-labelledby": headingId,
|
|
123
|
+
...selectable && {
|
|
124
|
+
role: "option",
|
|
125
|
+
"aria-selected": !!selected
|
|
126
|
+
},
|
|
127
|
+
...open && {
|
|
128
|
+
"aria-expanded": true
|
|
129
|
+
}
|
|
130
|
+
}, children);
|
|
131
|
+
return /* @__PURE__ */ import_react2.default.createElement(ListItemProvider, {
|
|
132
|
+
scope: __listItemScope,
|
|
133
|
+
headingId,
|
|
134
|
+
open,
|
|
135
|
+
selected,
|
|
136
|
+
setSelected
|
|
137
|
+
}, collapsible ? /* @__PURE__ */ import_react2.default.createElement(Collapsible.Root, {
|
|
138
|
+
asChild: true,
|
|
139
|
+
open,
|
|
140
|
+
onOpenChange: setOpen
|
|
141
|
+
}, listItem) : listItem);
|
|
142
|
+
} finally {
|
|
143
|
+
_effect.f();
|
|
144
|
+
}
|
|
128
145
|
});
|
|
129
146
|
ListItem.displayName = LIST_ITEM_NAME;
|
|
130
147
|
// Annotate the CommonJS export names for ESM import in node:
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/List.tsx", "../../../src/ListItem.tsx"],
|
|
4
4
|
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { createContextScope, type Scope } from '@radix-ui/react-context';\nimport { Primitive } from '@radix-ui/react-primitive';\nimport React, { type ComponentPropsWithRef, forwardRef } from 'react';\n\n// TODO(thure): A lot of the accessible affordances for this kind of thing need to be implemented per https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/listbox_role\n\nconst LIST_NAME = 'List';\n\ntype ListScopedProps<P> = P & { __listScope?: Scope };\n\ntype ListVariant = 'ordered' | 'unordered';\n\ntype ListItemSizes = 'one' | 'many';\n\ntype ListProps = ComponentPropsWithRef<typeof Primitive.ol> & {\n selectable?: boolean;\n variant?: ListVariant;\n itemSizes?: ListItemSizes;\n};\n\nconst [createListContext, createListScope] = createContextScope(LIST_NAME, []);\n\ntype ListContextValue = {\n selectable: Exclude<ListProps['selectable'], undefined>;\n variant: Exclude<ListProps['variant'], undefined>;\n itemSizes?: ListItemSizes;\n};\n\nconst [ListProvider, useListContext] = createListContext<ListContextValue>(LIST_NAME);\n\nconst List = forwardRef<HTMLOListElement, ListProps>((props: ListScopedProps<ListProps>, forwardedRef) => {\n const { __listScope, variant = 'ordered', selectable = false, itemSizes, children, ...rootProps } = props;\n const ListRoot = variant === 'ordered' ? Primitive.ol : Primitive.ul;\n return (\n <ListRoot {...(selectable && { role: 'listbox', 'aria-multiselectable': true })} {...rootProps} ref={forwardedRef}>\n <ListProvider\n {...{\n scope: __listScope,\n variant,\n selectable,\n itemSizes,\n }}\n >\n {children}\n </ListProvider>\n </ListRoot>\n );\n});\n\nList.displayName = LIST_NAME;\n\nexport { List, createListScope, useListContext, LIST_NAME };\n\nexport type { ListProps, ListVariant, ListScopedProps };\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport type { CheckboxProps } from '@radix-ui/react-checkbox';\nimport { type CollapsibleContentProps, type CollapsibleTriggerProps } from '@radix-ui/react-collapsible';\nimport * as Collapsible from '@radix-ui/react-collapsible';\nimport { createContextScope, type Scope } from '@radix-ui/react-context';\nimport { Primitive } from '@radix-ui/react-primitive';\nimport { Slot } from '@radix-ui/react-slot';\nimport { useControllableState } from '@radix-ui/react-use-controllable-state';\nimport React, {\n type ComponentProps,\n type ComponentPropsWithoutRef,\n type Dispatch,\n type ElementRef,\n forwardRef,\n type ForwardRefExoticComponent,\n type RefAttributes,\n type SetStateAction,\n} from 'react';\n\nimport { useId } from '@dxos/react-hooks';\n\nimport { LIST_NAME, type ListScopedProps, useListContext } from './List';\n\nconst LIST_ITEM_NAME = 'ListItem';\n\ntype ListItemScopedProps<P> = P & { __listItemScope?: Scope };\n\ninterface ListItemData {\n id: string;\n labelId?: string;\n selected?: CheckboxProps['checked'];\n open?: boolean;\n}\n\ntype ListItemProps = Omit<ListItemData, 'id'> & { collapsible?: boolean } & RefAttributes<HTMLLIElement> &\n ComponentPropsWithoutRef<'li'> & {\n defaultOpen?: boolean;\n onOpenChange?: (nextOpen: boolean) => void;\n } & {\n onSelectedChange?: CheckboxProps['onCheckedChange'];\n defaultSelected?: CheckboxProps['defaultChecked'];\n };\n\ntype ListItemElement = ElementRef<'li'>;\n\nconst [createListItemContext, createListItemScope] = createContextScope(LIST_ITEM_NAME, []);\n\ntype ListItemContextValue = {\n headingId: string;\n open: boolean;\n selected: CheckboxProps['checked'];\n setSelected: Dispatch<SetStateAction<CheckboxProps['checked']>>;\n};\n\nconst [ListItemProvider, useListItemContext] = createListItemContext<ListItemContextValue>(LIST_ITEM_NAME);\n\ntype ListItemHeadingProps = ListItemScopedProps<Omit<ComponentPropsWithoutRef<'p'>, 'id'>> &\n RefAttributes<HTMLParagraphElement> & {\n asChild?: boolean;\n };\n\nconst ListItemHeading = forwardRef<HTMLDivElement, ListItemHeadingProps>(\n ({ children, asChild, __listItemScope, ...props }, forwardedRef) => {\n const { headingId } = useListItemContext(LIST_ITEM_NAME, __listItemScope);\n const Root = asChild ? Slot : Primitive.div;\n return (\n <Root {...props} id={headingId} ref={forwardedRef}>\n {children}\n </Root>\n );\n },\n);\n\ntype ListItemOpenTriggerProps = ListItemScopedProps<CollapsibleTriggerProps>;\n\nconst ListItemOpenTrigger = Collapsible.Trigger;\n\ntype ListItemCollapsibleContentProps = ComponentProps<typeof Collapsible.Content>;\n\nconst ListItemCollapsibleContent: ForwardRefExoticComponent<CollapsibleContentProps> = Collapsible.Content;\n\nconst ListItem = forwardRef<ListItemElement, ListItemProps>(\n (props: ListItemScopedProps<ListScopedProps<ListItemProps>>, forwardedRef) => {\n const id = useId('listItem', props.id);\n\n const {\n __listScope,\n __listItemScope,\n children,\n selected: propsSelected,\n defaultSelected,\n onSelectedChange,\n open: propsOpen,\n defaultOpen,\n onOpenChange,\n collapsible,\n labelId,\n ...listItemProps\n } = props;\n const { selectable } = useListContext(LIST_NAME, __listScope);\n\n const [selected = false, setSelected] = useControllableState({\n prop: propsSelected,\n defaultProp: defaultSelected,\n onChange: onSelectedChange,\n });\n\n const [open = false, setOpen] = useControllableState({\n prop: propsOpen,\n defaultProp: defaultOpen,\n onChange: onOpenChange,\n });\n\n const headingId = useId('listItem__heading', labelId);\n\n const listItem = (\n <Primitive.li\n {...listItemProps}\n id={id}\n ref={forwardedRef}\n aria-labelledby={headingId}\n {...(selectable && { role: 'option', 'aria-selected': !!selected })}\n {...(open && { 'aria-expanded': true })}\n >\n {children}\n </Primitive.li>\n );\n\n return (\n <ListItemProvider\n scope={__listItemScope}\n headingId={headingId}\n open={open}\n selected={selected}\n setSelected={setSelected}\n >\n {collapsible ? (\n <Collapsible.Root asChild open={open} onOpenChange={setOpen}>\n {listItem}\n </Collapsible.Root>\n ) : (\n listItem\n )}\n </ListItemProvider>\n );\n },\n);\n\nListItem.displayName = LIST_ITEM_NAME;\n\nexport {\n ListItem,\n ListItemHeading,\n ListItemCollapsibleContent,\n ListItemOpenTrigger,\n createListItemScope,\n useListItemContext,\n LIST_ITEM_NAME,\n};\n\nexport type {\n ListItemProps,\n ListItemHeadingProps,\n ListItemCollapsibleContentProps,\n ListItemOpenTriggerProps,\n ListItemScopedProps,\n};\n"],
|
|
5
|
-
"mappings": "
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["import_react_context", "import_react_primitive", "import_react", "LIST_NAME", "createListContext", "createListScope", "createContextScope", "ListProvider", "useListContext", "List", "forwardRef", "props", "forwardedRef", "__listScope", "variant", "selectable", "itemSizes", "children", "rootProps", "ListRoot", "Primitive", "ol", "ul", "React", "role", "ref", "scope", "displayName", "LIST_ITEM_NAME", "createListItemContext", "createListItemScope", "ListItemProvider", "useListItemContext", "ListItemHeading", "asChild", "__listItemScope", "headingId", "Root", "Slot", "div", "id", "ListItemOpenTrigger", "Trigger", "ListItemCollapsibleContent", "Content", "ListItem", "useId", "selected", "propsSelected", "defaultSelected", "onSelectedChange", "open", "propsOpen", "defaultOpen", "onOpenChange", "collapsible", "labelId", "listItemProps", "setSelected", "useControllableState", "prop", "defaultProp", "onChange", "setOpen", "listItem", "li", "aria-labelledby"]
|
|
7
7
|
}
|
package/dist/lib/node/meta.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"inputs":{"packages/ui/primitives/react-list/src/List.tsx":{"bytes":
|
|
1
|
+
{"inputs":{"packages/ui/primitives/react-list/src/List.tsx":{"bytes":5630,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@radix-ui/react-context","kind":"import-statement","external":true},{"path":"@radix-ui/react-primitive","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true}],"format":"esm"},"packages/ui/primitives/react-list/src/ListItem.tsx":{"bytes":13458,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@radix-ui/react-collapsible","kind":"import-statement","external":true},{"path":"@radix-ui/react-context","kind":"import-statement","external":true},{"path":"@radix-ui/react-primitive","kind":"import-statement","external":true},{"path":"@radix-ui/react-slot","kind":"import-statement","external":true},{"path":"@radix-ui/react-use-controllable-state","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"packages/ui/primitives/react-list/src/List.tsx","kind":"import-statement","original":"./List"}],"format":"esm"},"packages/ui/primitives/react-list/src/index.ts":{"bytes":553,"imports":[{"path":"packages/ui/primitives/react-list/src/List.tsx","kind":"import-statement","original":"./List"},{"path":"packages/ui/primitives/react-list/src/ListItem.tsx","kind":"import-statement","original":"./ListItem"}],"format":"esm"}},"outputs":{"packages/ui/primitives/react-list/dist/lib/node/index.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":10287},"packages/ui/primitives/react-list/dist/lib/node/index.cjs":{"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@radix-ui/react-context","kind":"import-statement","external":true},{"path":"@radix-ui/react-primitive","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@radix-ui/react-collapsible","kind":"import-statement","external":true},{"path":"@radix-ui/react-context","kind":"import-statement","external":true},{"path":"@radix-ui/react-primitive","kind":"import-statement","external":true},{"path":"@radix-ui/react-slot","kind":"import-statement","external":true},{"path":"@radix-ui/react-use-controllable-state","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true}],"exports":["LIST_ITEM_NAME","LIST_NAME","List","ListItem","ListItemCollapsibleContent","ListItemHeading","ListItemOpenTrigger","createListItemScope","createListScope","useListContext","useListItemContext"],"entryPoint":"packages/ui/primitives/react-list/src/index.ts","inputs":{"packages/ui/primitives/react-list/src/List.tsx":{"bytesInOutput":1120},"packages/ui/primitives/react-list/src/index.ts":{"bytesInOutput":0},"packages/ui/primitives/react-list/src/ListItem.tsx":{"bytesInOutput":2852}},"bytes":4328}}}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
2
|
|
|
3
3
|
// packages/ui/primitives/react-list/src/List.tsx
|
|
4
|
+
import { useSignals as _useSignals } from "@preact-signals/safe-react/tracking";
|
|
4
5
|
import { createContextScope } from "@radix-ui/react-context";
|
|
5
6
|
import { Primitive } from "@radix-ui/react-primitive";
|
|
6
7
|
import React, { forwardRef } from "react";
|
|
@@ -8,25 +9,31 @@ var LIST_NAME = "List";
|
|
|
8
9
|
var [createListContext, createListScope] = createContextScope(LIST_NAME, []);
|
|
9
10
|
var [ListProvider, useListContext] = createListContext(LIST_NAME);
|
|
10
11
|
var List = /* @__PURE__ */ forwardRef((props, forwardedRef) => {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
12
|
+
var _effect = _useSignals();
|
|
13
|
+
try {
|
|
14
|
+
const { __listScope, variant = "ordered", selectable = false, itemSizes, children, ...rootProps } = props;
|
|
15
|
+
const ListRoot = variant === "ordered" ? Primitive.ol : Primitive.ul;
|
|
16
|
+
return /* @__PURE__ */ React.createElement(ListRoot, {
|
|
17
|
+
...selectable && {
|
|
18
|
+
role: "listbox",
|
|
19
|
+
"aria-multiselectable": true
|
|
20
|
+
},
|
|
21
|
+
...rootProps,
|
|
22
|
+
ref: forwardedRef
|
|
23
|
+
}, /* @__PURE__ */ React.createElement(ListProvider, {
|
|
24
|
+
scope: __listScope,
|
|
25
|
+
variant,
|
|
26
|
+
selectable,
|
|
27
|
+
itemSizes
|
|
28
|
+
}, children));
|
|
29
|
+
} finally {
|
|
30
|
+
_effect.f();
|
|
31
|
+
}
|
|
26
32
|
});
|
|
27
33
|
List.displayName = LIST_NAME;
|
|
28
34
|
|
|
29
35
|
// packages/ui/primitives/react-list/src/ListItem.tsx
|
|
36
|
+
import { useSignals as _useSignals2 } from "@preact-signals/safe-react/tracking";
|
|
30
37
|
import * as Collapsible from "@radix-ui/react-collapsible";
|
|
31
38
|
import { createContextScope as createContextScope2 } from "@radix-ui/react-context";
|
|
32
39
|
import { Primitive as Primitive2 } from "@radix-ui/react-primitive";
|
|
@@ -38,55 +45,65 @@ var LIST_ITEM_NAME = "ListItem";
|
|
|
38
45
|
var [createListItemContext, createListItemScope] = createContextScope2(LIST_ITEM_NAME, []);
|
|
39
46
|
var [ListItemProvider, useListItemContext] = createListItemContext(LIST_ITEM_NAME);
|
|
40
47
|
var ListItemHeading = /* @__PURE__ */ forwardRef2(({ children, asChild, __listItemScope, ...props }, forwardedRef) => {
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
+
var _effect = _useSignals2();
|
|
49
|
+
try {
|
|
50
|
+
const { headingId } = useListItemContext(LIST_ITEM_NAME, __listItemScope);
|
|
51
|
+
const Root2 = asChild ? Slot : Primitive2.div;
|
|
52
|
+
return /* @__PURE__ */ React2.createElement(Root2, {
|
|
53
|
+
...props,
|
|
54
|
+
id: headingId,
|
|
55
|
+
ref: forwardedRef
|
|
56
|
+
}, children);
|
|
57
|
+
} finally {
|
|
58
|
+
_effect.f();
|
|
59
|
+
}
|
|
48
60
|
});
|
|
49
61
|
var ListItemOpenTrigger = Collapsible.Trigger;
|
|
50
62
|
var ListItemCollapsibleContent = Collapsible.Content;
|
|
51
63
|
var ListItem = /* @__PURE__ */ forwardRef2((props, forwardedRef) => {
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
64
|
+
var _effect = _useSignals2();
|
|
65
|
+
try {
|
|
66
|
+
const id = useId("listItem", props.id);
|
|
67
|
+
const { __listScope, __listItemScope, children, selected: propsSelected, defaultSelected, onSelectedChange, open: propsOpen, defaultOpen, onOpenChange, collapsible, labelId, ...listItemProps } = props;
|
|
68
|
+
const { selectable } = useListContext(LIST_NAME, __listScope);
|
|
69
|
+
const [selected = false, setSelected] = useControllableState({
|
|
70
|
+
prop: propsSelected,
|
|
71
|
+
defaultProp: defaultSelected,
|
|
72
|
+
onChange: onSelectedChange
|
|
73
|
+
});
|
|
74
|
+
const [open = false, setOpen] = useControllableState({
|
|
75
|
+
prop: propsOpen,
|
|
76
|
+
defaultProp: defaultOpen,
|
|
77
|
+
onChange: onOpenChange
|
|
78
|
+
});
|
|
79
|
+
const headingId = useId("listItem__heading", labelId);
|
|
80
|
+
const listItem = /* @__PURE__ */ React2.createElement(Primitive2.li, {
|
|
81
|
+
...listItemProps,
|
|
82
|
+
id,
|
|
83
|
+
ref: forwardedRef,
|
|
84
|
+
"aria-labelledby": headingId,
|
|
85
|
+
...selectable && {
|
|
86
|
+
role: "option",
|
|
87
|
+
"aria-selected": !!selected
|
|
88
|
+
},
|
|
89
|
+
...open && {
|
|
90
|
+
"aria-expanded": true
|
|
91
|
+
}
|
|
92
|
+
}, children);
|
|
93
|
+
return /* @__PURE__ */ React2.createElement(ListItemProvider, {
|
|
94
|
+
scope: __listItemScope,
|
|
95
|
+
headingId,
|
|
96
|
+
open,
|
|
97
|
+
selected,
|
|
98
|
+
setSelected
|
|
99
|
+
}, collapsible ? /* @__PURE__ */ React2.createElement(Collapsible.Root, {
|
|
100
|
+
asChild: true,
|
|
101
|
+
open,
|
|
102
|
+
onOpenChange: setOpen
|
|
103
|
+
}, listItem) : listItem);
|
|
104
|
+
} finally {
|
|
105
|
+
_effect.f();
|
|
106
|
+
}
|
|
90
107
|
});
|
|
91
108
|
ListItem.displayName = LIST_ITEM_NAME;
|
|
92
109
|
export {
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/List.tsx", "../../../src/ListItem.tsx"],
|
|
4
4
|
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { createContextScope, type Scope } from '@radix-ui/react-context';\nimport { Primitive } from '@radix-ui/react-primitive';\nimport React, { type ComponentPropsWithRef, forwardRef } from 'react';\n\n// TODO(thure): A lot of the accessible affordances for this kind of thing need to be implemented per https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/listbox_role\n\nconst LIST_NAME = 'List';\n\ntype ListScopedProps<P> = P & { __listScope?: Scope };\n\ntype ListVariant = 'ordered' | 'unordered';\n\ntype ListItemSizes = 'one' | 'many';\n\ntype ListProps = ComponentPropsWithRef<typeof Primitive.ol> & {\n selectable?: boolean;\n variant?: ListVariant;\n itemSizes?: ListItemSizes;\n};\n\nconst [createListContext, createListScope] = createContextScope(LIST_NAME, []);\n\ntype ListContextValue = {\n selectable: Exclude<ListProps['selectable'], undefined>;\n variant: Exclude<ListProps['variant'], undefined>;\n itemSizes?: ListItemSizes;\n};\n\nconst [ListProvider, useListContext] = createListContext<ListContextValue>(LIST_NAME);\n\nconst List = forwardRef<HTMLOListElement, ListProps>((props: ListScopedProps<ListProps>, forwardedRef) => {\n const { __listScope, variant = 'ordered', selectable = false, itemSizes, children, ...rootProps } = props;\n const ListRoot = variant === 'ordered' ? Primitive.ol : Primitive.ul;\n return (\n <ListRoot {...(selectable && { role: 'listbox', 'aria-multiselectable': true })} {...rootProps} ref={forwardedRef}>\n <ListProvider\n {...{\n scope: __listScope,\n variant,\n selectable,\n itemSizes,\n }}\n >\n {children}\n </ListProvider>\n </ListRoot>\n );\n});\n\nList.displayName = LIST_NAME;\n\nexport { List, createListScope, useListContext, LIST_NAME };\n\nexport type { ListProps, ListVariant, ListScopedProps };\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport type { CheckboxProps } from '@radix-ui/react-checkbox';\nimport { type CollapsibleContentProps, type CollapsibleTriggerProps } from '@radix-ui/react-collapsible';\nimport * as Collapsible from '@radix-ui/react-collapsible';\nimport { createContextScope, type Scope } from '@radix-ui/react-context';\nimport { Primitive } from '@radix-ui/react-primitive';\nimport { Slot } from '@radix-ui/react-slot';\nimport { useControllableState } from '@radix-ui/react-use-controllable-state';\nimport React, {\n type ComponentProps,\n type ComponentPropsWithoutRef,\n type Dispatch,\n type ElementRef,\n forwardRef,\n type ForwardRefExoticComponent,\n type RefAttributes,\n type SetStateAction,\n} from 'react';\n\nimport { useId } from '@dxos/react-hooks';\n\nimport { LIST_NAME, type ListScopedProps, useListContext } from './List';\n\nconst LIST_ITEM_NAME = 'ListItem';\n\ntype ListItemScopedProps<P> = P & { __listItemScope?: Scope };\n\ninterface ListItemData {\n id: string;\n labelId?: string;\n selected?: CheckboxProps['checked'];\n open?: boolean;\n}\n\ntype ListItemProps = Omit<ListItemData, 'id'> & { collapsible?: boolean } & RefAttributes<HTMLLIElement> &\n ComponentPropsWithoutRef<'li'> & {\n defaultOpen?: boolean;\n onOpenChange?: (nextOpen: boolean) => void;\n } & {\n onSelectedChange?: CheckboxProps['onCheckedChange'];\n defaultSelected?: CheckboxProps['defaultChecked'];\n };\n\ntype ListItemElement = ElementRef<'li'>;\n\nconst [createListItemContext, createListItemScope] = createContextScope(LIST_ITEM_NAME, []);\n\ntype ListItemContextValue = {\n headingId: string;\n open: boolean;\n selected: CheckboxProps['checked'];\n setSelected: Dispatch<SetStateAction<CheckboxProps['checked']>>;\n};\n\nconst [ListItemProvider, useListItemContext] = createListItemContext<ListItemContextValue>(LIST_ITEM_NAME);\n\ntype ListItemHeadingProps = ListItemScopedProps<Omit<ComponentPropsWithoutRef<'p'>, 'id'>> &\n RefAttributes<HTMLParagraphElement> & {\n asChild?: boolean;\n };\n\nconst ListItemHeading = forwardRef<HTMLDivElement, ListItemHeadingProps>(\n ({ children, asChild, __listItemScope, ...props }, forwardedRef) => {\n const { headingId } = useListItemContext(LIST_ITEM_NAME, __listItemScope);\n const Root = asChild ? Slot : Primitive.div;\n return (\n <Root {...props} id={headingId} ref={forwardedRef}>\n {children}\n </Root>\n );\n },\n);\n\ntype ListItemOpenTriggerProps = ListItemScopedProps<CollapsibleTriggerProps>;\n\nconst ListItemOpenTrigger = Collapsible.Trigger;\n\ntype ListItemCollapsibleContentProps = ComponentProps<typeof Collapsible.Content>;\n\nconst ListItemCollapsibleContent: ForwardRefExoticComponent<CollapsibleContentProps> = Collapsible.Content;\n\nconst ListItem = forwardRef<ListItemElement, ListItemProps>(\n (props: ListItemScopedProps<ListScopedProps<ListItemProps>>, forwardedRef) => {\n const id = useId('listItem', props.id);\n\n const {\n __listScope,\n __listItemScope,\n children,\n selected: propsSelected,\n defaultSelected,\n onSelectedChange,\n open: propsOpen,\n defaultOpen,\n onOpenChange,\n collapsible,\n labelId,\n ...listItemProps\n } = props;\n const { selectable } = useListContext(LIST_NAME, __listScope);\n\n const [selected = false, setSelected] = useControllableState({\n prop: propsSelected,\n defaultProp: defaultSelected,\n onChange: onSelectedChange,\n });\n\n const [open = false, setOpen] = useControllableState({\n prop: propsOpen,\n defaultProp: defaultOpen,\n onChange: onOpenChange,\n });\n\n const headingId = useId('listItem__heading', labelId);\n\n const listItem = (\n <Primitive.li\n {...listItemProps}\n id={id}\n ref={forwardedRef}\n aria-labelledby={headingId}\n {...(selectable && { role: 'option', 'aria-selected': !!selected })}\n {...(open && { 'aria-expanded': true })}\n >\n {children}\n </Primitive.li>\n );\n\n return (\n <ListItemProvider\n scope={__listItemScope}\n headingId={headingId}\n open={open}\n selected={selected}\n setSelected={setSelected}\n >\n {collapsible ? (\n <Collapsible.Root asChild open={open} onOpenChange={setOpen}>\n {listItem}\n </Collapsible.Root>\n ) : (\n listItem\n )}\n </ListItemProvider>\n );\n },\n);\n\nListItem.displayName = LIST_ITEM_NAME;\n\nexport {\n ListItem,\n ListItemHeading,\n ListItemCollapsibleContent,\n ListItemOpenTrigger,\n createListItemScope,\n useListItemContext,\n LIST_ITEM_NAME,\n};\n\nexport type {\n ListItemProps,\n ListItemHeadingProps,\n ListItemCollapsibleContentProps,\n ListItemOpenTriggerProps,\n ListItemScopedProps,\n};\n"],
|
|
5
|
-
"mappings": "
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["createContextScope", "Primitive", "React", "forwardRef", "LIST_NAME", "createListContext", "createListScope", "createContextScope", "ListProvider", "useListContext", "List", "forwardRef", "props", "forwardedRef", "__listScope", "variant", "selectable", "itemSizes", "children", "rootProps", "ListRoot", "Primitive", "ol", "ul", "role", "ref", "scope", "displayName", "Collapsible", "createContextScope", "Primitive", "Slot", "useControllableState", "React", "forwardRef", "useId", "LIST_ITEM_NAME", "createListItemContext", "createListItemScope", "createContextScope", "ListItemProvider", "useListItemContext", "ListItemHeading", "forwardRef", "children", "asChild", "__listItemScope", "props", "forwardedRef", "headingId", "Root", "Slot", "Primitive", "div", "React", "id", "ref", "ListItemOpenTrigger", "Trigger", "ListItemCollapsibleContent", "Content", "ListItem", "useId", "__listScope", "selected", "propsSelected", "defaultSelected", "onSelectedChange", "open", "propsOpen", "defaultOpen", "onOpenChange", "collapsible", "labelId", "listItemProps", "selectable", "useListContext", "LIST_NAME", "setSelected", "useControllableState", "prop", "defaultProp", "onChange", "setOpen", "listItem", "li", "aria-labelledby", "role", "scope", "displayName"]
|
|
7
7
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"inputs":{"packages/ui/primitives/react-list/src/List.tsx":{"bytes":
|
|
1
|
+
{"inputs":{"packages/ui/primitives/react-list/src/List.tsx":{"bytes":5630,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@radix-ui/react-context","kind":"import-statement","external":true},{"path":"@radix-ui/react-primitive","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true}],"format":"esm"},"packages/ui/primitives/react-list/src/ListItem.tsx":{"bytes":13458,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@radix-ui/react-collapsible","kind":"import-statement","external":true},{"path":"@radix-ui/react-context","kind":"import-statement","external":true},{"path":"@radix-ui/react-primitive","kind":"import-statement","external":true},{"path":"@radix-ui/react-slot","kind":"import-statement","external":true},{"path":"@radix-ui/react-use-controllable-state","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"packages/ui/primitives/react-list/src/List.tsx","kind":"import-statement","original":"./List"}],"format":"esm"},"packages/ui/primitives/react-list/src/index.ts":{"bytes":553,"imports":[{"path":"packages/ui/primitives/react-list/src/List.tsx","kind":"import-statement","original":"./List"},{"path":"packages/ui/primitives/react-list/src/ListItem.tsx","kind":"import-statement","original":"./ListItem"}],"format":"esm"}},"outputs":{"packages/ui/primitives/react-list/dist/lib/node-esm/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":10289},"packages/ui/primitives/react-list/dist/lib/node-esm/index.mjs":{"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@radix-ui/react-context","kind":"import-statement","external":true},{"path":"@radix-ui/react-primitive","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@radix-ui/react-collapsible","kind":"import-statement","external":true},{"path":"@radix-ui/react-context","kind":"import-statement","external":true},{"path":"@radix-ui/react-primitive","kind":"import-statement","external":true},{"path":"@radix-ui/react-slot","kind":"import-statement","external":true},{"path":"@radix-ui/react-use-controllable-state","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true}],"exports":["LIST_ITEM_NAME","LIST_NAME","List","ListItem","ListItemCollapsibleContent","ListItemHeading","ListItemOpenTrigger","createListItemScope","createListScope","useListContext","useListItemContext"],"entryPoint":"packages/ui/primitives/react-list/src/index.ts","inputs":{"packages/ui/primitives/react-list/src/List.tsx":{"bytesInOutput":1120},"packages/ui/primitives/react-list/src/index.ts":{"bytesInOutput":0},"packages/ui/primitives/react-list/src/ListItem.tsx":{"bytesInOutput":2852}},"bytes":4421}}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":"5.
|
|
1
|
+
{"version":"5.8.3"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dxos/react-list",
|
|
3
|
-
"version": "0.8.
|
|
3
|
+
"version": "0.8.2-main.10c050d",
|
|
4
4
|
"description": "List primitive components for React.",
|
|
5
5
|
"homepage": "https://dxos.org",
|
|
6
6
|
"bugs": "https://github.com/dxos/dxos/issues",
|
|
@@ -24,13 +24,14 @@
|
|
|
24
24
|
"src"
|
|
25
25
|
],
|
|
26
26
|
"dependencies": {
|
|
27
|
+
"@preact-signals/safe-react": "^0.9.0",
|
|
27
28
|
"@radix-ui/react-collapsible": "1.1.3",
|
|
28
29
|
"@radix-ui/react-context": "1.1.1",
|
|
29
30
|
"@radix-ui/react-primitive": "2.0.2",
|
|
30
31
|
"@radix-ui/react-slot": "1.1.2",
|
|
31
32
|
"@radix-ui/react-use-controllable-state": "1.1.0",
|
|
32
33
|
"lodash.omit": "^4.5.0",
|
|
33
|
-
"@dxos/react-hooks": "0.8.
|
|
34
|
+
"@dxos/react-hooks": "0.8.2-main.10c050d"
|
|
34
35
|
},
|
|
35
36
|
"devDependencies": {
|
|
36
37
|
"@radix-ui/react-checkbox": "1.1.4",
|