@dxos/react-ui 0.3.10 → 0.3.11-main.0ac3ef5
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 +305 -219
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/meta.json +1 -1
- package/dist/types/src/components/Avatars/Avatar.d.ts +1 -1
- package/dist/types/src/components/Avatars/Avatar.d.ts.map +1 -1
- package/dist/types/src/components/Menus/ContextMenu.d.ts +50 -0
- package/dist/types/src/components/Menus/ContextMenu.d.ts.map +1 -0
- package/dist/types/src/components/Menus/ContextMenu.stories.d.ts +21 -0
- package/dist/types/src/components/Menus/ContextMenu.stories.d.ts.map +1 -0
- package/dist/types/src/components/{DropdownMenu → Menus}/DropdownMenu.d.ts +23 -23
- package/dist/types/src/components/Menus/DropdownMenu.d.ts.map +1 -0
- package/dist/types/src/components/Menus/DropdownMenu.stories.d.ts.map +1 -0
- package/dist/types/src/components/Menus/index.d.ts +3 -0
- package/dist/types/src/components/Menus/index.d.ts.map +1 -0
- package/dist/types/src/components/index.d.ts +1 -1
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/package.json +7 -6
- package/src/components/Avatars/Avatar.tsx +1 -1
- package/src/components/Menus/ContextMenu.stories.tsx +106 -0
- package/src/components/Menus/ContextMenu.tsx +170 -0
- package/src/components/Menus/DropdownMenu.tsx +173 -0
- package/src/components/{DropdownMenu → Menus}/index.ts +1 -0
- package/src/components/index.ts +1 -1
- package/src/playground/Typography.stories.tsx +1 -1
- package/dist/types/src/components/DropdownMenu/DropdownMenu.d.ts.map +0 -1
- package/dist/types/src/components/DropdownMenu/DropdownMenu.stories.d.ts.map +0 -1
- package/dist/types/src/components/DropdownMenu/index.d.ts +0 -2
- package/dist/types/src/components/DropdownMenu/index.d.ts.map +0 -1
- package/src/components/DropdownMenu/DropdownMenu.tsx +0 -198
- /package/dist/types/src/components/{DropdownMenu → Menus}/DropdownMenu.stories.d.ts +0 -0
- /package/src/components/{DropdownMenu → Menus}/DropdownMenu.stories.tsx +0 -0
|
@@ -1,198 +0,0 @@
|
|
|
1
|
-
//
|
|
2
|
-
// Copyright 2023 DXOS.org
|
|
3
|
-
//
|
|
4
|
-
import {
|
|
5
|
-
Root as DropdownMenuRootPrimitive,
|
|
6
|
-
type DropdownMenuProps as DropdownMenuRootPrimitiveProps,
|
|
7
|
-
DropdownMenuTrigger as DropdownMenuTriggerPrimitive,
|
|
8
|
-
type DropdownMenuTriggerProps as DropdownMenuTriggerPrimitiveProps,
|
|
9
|
-
DropdownMenuPortal as DropdownMenuPortalPrimitive,
|
|
10
|
-
type DropdownMenuPortalProps as DropdownMenuPortalPrimitiveProps,
|
|
11
|
-
DropdownMenuContent as DropdownMenuContentPrimitive,
|
|
12
|
-
type DropdownMenuContentProps as DropdownMenuContentPrimitiveProps,
|
|
13
|
-
DropdownMenuArrow as DropdownMenuArrowPrimitive,
|
|
14
|
-
type DropdownMenuArrowProps as DropdownMenuArrowPrimitiveProps,
|
|
15
|
-
DropdownMenuGroup as DropdownMenuGroupPrimitive,
|
|
16
|
-
type DropdownMenuGroupProps as DropdownMenuGroupPrimitiveProps,
|
|
17
|
-
DropdownMenuItem as DropdownMenuItemPrimitive,
|
|
18
|
-
type DropdownMenuItemProps as DropdownMenuItemPrimitiveProps,
|
|
19
|
-
DropdownMenuCheckboxItem as DropdownMenuCheckboxItemPrimitive,
|
|
20
|
-
type DropdownMenuCheckboxItemProps as DropdownMenuCheckboxItemPrimitiveProps,
|
|
21
|
-
DropdownMenuItemIndicator as DropdownMenuItemIndicatorPrimitive,
|
|
22
|
-
type DropdownMenuItemIndicatorProps as DropdownMenuItemIndicatorPrimitiveProps,
|
|
23
|
-
DropdownMenuSeparator as DropdownMenuSeparatorPrimitive,
|
|
24
|
-
type DropdownMenuSeparatorProps as DropdownMenuSeparatorPrimitiveProps,
|
|
25
|
-
DropdownMenuLabel as DropdownMenuLabelPrimitive,
|
|
26
|
-
type DropdownMenuLabelProps as DropdownMenuLabelPrimitiveProps,
|
|
27
|
-
} from '@radix-ui/react-dropdown-menu';
|
|
28
|
-
import { Primitive } from '@radix-ui/react-primitive';
|
|
29
|
-
import { Slot } from '@radix-ui/react-slot';
|
|
30
|
-
import React, { type ComponentPropsWithRef, forwardRef } from 'react';
|
|
31
|
-
|
|
32
|
-
import { useThemeContext } from '../../hooks';
|
|
33
|
-
import { type ThemedClassName } from '../../util';
|
|
34
|
-
import { ElevationProvider } from '../ElevationProvider';
|
|
35
|
-
|
|
36
|
-
type DropdownMenuRootProps = DropdownMenuRootPrimitiveProps;
|
|
37
|
-
|
|
38
|
-
const DropdownMenuRoot = DropdownMenuRootPrimitive;
|
|
39
|
-
|
|
40
|
-
type DropdownMenuTriggerProps = DropdownMenuTriggerPrimitiveProps;
|
|
41
|
-
|
|
42
|
-
const DropdownMenuTrigger = DropdownMenuTriggerPrimitive;
|
|
43
|
-
|
|
44
|
-
type DropdownMenuPortalProps = DropdownMenuPortalPrimitiveProps;
|
|
45
|
-
|
|
46
|
-
const DropdownMenuPortal = DropdownMenuPortalPrimitive;
|
|
47
|
-
|
|
48
|
-
type DropdownMenuContentProps = ThemedClassName<DropdownMenuContentPrimitiveProps> & { constrainBlockSize?: boolean };
|
|
49
|
-
|
|
50
|
-
const DropdownMenuContent = forwardRef<HTMLDivElement, DropdownMenuContentProps>(
|
|
51
|
-
({ classNames, children, ...props }, forwardedRef) => {
|
|
52
|
-
const { tx } = useThemeContext();
|
|
53
|
-
return (
|
|
54
|
-
<DropdownMenuContentPrimitive
|
|
55
|
-
sideOffset={4}
|
|
56
|
-
collisionPadding={8}
|
|
57
|
-
{...props}
|
|
58
|
-
className={tx('dropdownMenu.content', 'dropdown-menu', {}, classNames)}
|
|
59
|
-
ref={forwardedRef}
|
|
60
|
-
>
|
|
61
|
-
<ElevationProvider elevation='chrome'>{children}</ElevationProvider>
|
|
62
|
-
</DropdownMenuContentPrimitive>
|
|
63
|
-
);
|
|
64
|
-
},
|
|
65
|
-
);
|
|
66
|
-
|
|
67
|
-
type DropdownMenuViewportProps = ThemedClassName<ComponentPropsWithRef<typeof Primitive.div>> & {
|
|
68
|
-
asChild?: boolean;
|
|
69
|
-
};
|
|
70
|
-
|
|
71
|
-
const DropdownMenuViewport = forwardRef<HTMLDivElement, DropdownMenuViewportProps>(
|
|
72
|
-
({ classNames, asChild, children, ...props }, forwardedRef) => {
|
|
73
|
-
const { tx } = useThemeContext();
|
|
74
|
-
const Root = asChild ? Slot : Primitive.div;
|
|
75
|
-
return (
|
|
76
|
-
<Root
|
|
77
|
-
{...props}
|
|
78
|
-
className={tx('dropdownMenu.viewport', 'dropdown-menu__viewport', {}, classNames)}
|
|
79
|
-
ref={forwardedRef}
|
|
80
|
-
>
|
|
81
|
-
{children}
|
|
82
|
-
</Root>
|
|
83
|
-
);
|
|
84
|
-
},
|
|
85
|
-
);
|
|
86
|
-
|
|
87
|
-
type DropdownMenuArrowProps = ThemedClassName<DropdownMenuArrowPrimitiveProps>;
|
|
88
|
-
|
|
89
|
-
const DropdownMenuArrow = forwardRef<SVGSVGElement, DropdownMenuArrowProps>(
|
|
90
|
-
({ classNames, ...props }, forwardedRef) => {
|
|
91
|
-
const { tx } = useThemeContext();
|
|
92
|
-
return (
|
|
93
|
-
<DropdownMenuArrowPrimitive
|
|
94
|
-
{...props}
|
|
95
|
-
className={tx('dropdownMenu.arrow', 'dropdown-menu__arrow', {}, classNames)}
|
|
96
|
-
ref={forwardedRef}
|
|
97
|
-
/>
|
|
98
|
-
);
|
|
99
|
-
},
|
|
100
|
-
);
|
|
101
|
-
|
|
102
|
-
type DropdownMenuGroupProps = DropdownMenuGroupPrimitiveProps;
|
|
103
|
-
|
|
104
|
-
const DropdownMenuGroup = DropdownMenuGroupPrimitive;
|
|
105
|
-
|
|
106
|
-
type DropdownMenuItemIndicatorProps = DropdownMenuItemIndicatorPrimitiveProps;
|
|
107
|
-
|
|
108
|
-
const DropdownMenuItemIndicator = DropdownMenuItemIndicatorPrimitive;
|
|
109
|
-
|
|
110
|
-
type DropdownMenuItemProps = ThemedClassName<DropdownMenuItemPrimitiveProps>;
|
|
111
|
-
|
|
112
|
-
const DropdownMenuItem = forwardRef<HTMLDivElement, DropdownMenuItemProps>(
|
|
113
|
-
({ classNames, ...props }: DropdownMenuItemProps, forwardedRef) => {
|
|
114
|
-
const { tx } = useThemeContext();
|
|
115
|
-
return (
|
|
116
|
-
<DropdownMenuItemPrimitive
|
|
117
|
-
{...props}
|
|
118
|
-
className={tx('dropdownMenu.item', 'dropdown-menu__item', {}, classNames)}
|
|
119
|
-
ref={forwardedRef}
|
|
120
|
-
/>
|
|
121
|
-
);
|
|
122
|
-
},
|
|
123
|
-
);
|
|
124
|
-
|
|
125
|
-
type DropdownMenuCheckboxItemProps = ThemedClassName<DropdownMenuCheckboxItemPrimitiveProps>;
|
|
126
|
-
|
|
127
|
-
const DropdownMenuCheckboxItem = forwardRef<HTMLDivElement, DropdownMenuCheckboxItemProps>(
|
|
128
|
-
({ classNames, ...props }: DropdownMenuItemProps, forwardedRef) => {
|
|
129
|
-
const { tx } = useThemeContext();
|
|
130
|
-
return (
|
|
131
|
-
<DropdownMenuCheckboxItemPrimitive
|
|
132
|
-
{...props}
|
|
133
|
-
className={tx('dropdownMenu.item', 'dropdown-menu__item--checkbox', {}, classNames)}
|
|
134
|
-
ref={forwardedRef}
|
|
135
|
-
/>
|
|
136
|
-
);
|
|
137
|
-
},
|
|
138
|
-
);
|
|
139
|
-
|
|
140
|
-
type DropdownMenuSeparatorProps = ThemedClassName<DropdownMenuSeparatorPrimitiveProps>;
|
|
141
|
-
|
|
142
|
-
const DropdownMenuSeparator = forwardRef<HTMLDivElement, DropdownMenuSeparatorProps>(
|
|
143
|
-
({ classNames, ...props }, forwardedRef) => {
|
|
144
|
-
const { tx } = useThemeContext();
|
|
145
|
-
return (
|
|
146
|
-
<DropdownMenuSeparatorPrimitive
|
|
147
|
-
{...props}
|
|
148
|
-
className={tx('dropdownMenu.separator', 'dropdown-menu__item', {}, classNames)}
|
|
149
|
-
ref={forwardedRef}
|
|
150
|
-
/>
|
|
151
|
-
);
|
|
152
|
-
},
|
|
153
|
-
);
|
|
154
|
-
|
|
155
|
-
type DropdownMenuGroupLabelProps = ThemedClassName<DropdownMenuLabelPrimitiveProps>;
|
|
156
|
-
|
|
157
|
-
const DropdownMenuGroupLabel = forwardRef<HTMLDivElement, DropdownMenuGroupLabelProps>(
|
|
158
|
-
({ classNames, ...props }, forwardedRef) => {
|
|
159
|
-
const { tx } = useThemeContext();
|
|
160
|
-
return (
|
|
161
|
-
<DropdownMenuLabelPrimitive
|
|
162
|
-
{...props}
|
|
163
|
-
className={tx('dropdownMenu.groupLabel', 'dropdown-menu__group__label', {}, classNames)}
|
|
164
|
-
ref={forwardedRef}
|
|
165
|
-
/>
|
|
166
|
-
);
|
|
167
|
-
},
|
|
168
|
-
);
|
|
169
|
-
|
|
170
|
-
export const DropdownMenu = {
|
|
171
|
-
Root: DropdownMenuRoot,
|
|
172
|
-
Trigger: DropdownMenuTrigger,
|
|
173
|
-
Portal: DropdownMenuPortal,
|
|
174
|
-
Content: DropdownMenuContent,
|
|
175
|
-
Viewport: DropdownMenuViewport,
|
|
176
|
-
Arrow: DropdownMenuArrow,
|
|
177
|
-
Group: DropdownMenuGroup,
|
|
178
|
-
Item: DropdownMenuItem,
|
|
179
|
-
CheckboxItem: DropdownMenuCheckboxItem,
|
|
180
|
-
ItemIndicator: DropdownMenuItemIndicator,
|
|
181
|
-
Separator: DropdownMenuSeparator,
|
|
182
|
-
GroupLabel: DropdownMenuGroupLabel,
|
|
183
|
-
};
|
|
184
|
-
|
|
185
|
-
export type {
|
|
186
|
-
DropdownMenuRootProps,
|
|
187
|
-
DropdownMenuTriggerProps,
|
|
188
|
-
DropdownMenuPortalProps,
|
|
189
|
-
DropdownMenuContentProps,
|
|
190
|
-
DropdownMenuViewportProps,
|
|
191
|
-
DropdownMenuArrowProps,
|
|
192
|
-
DropdownMenuGroupProps,
|
|
193
|
-
DropdownMenuItemProps,
|
|
194
|
-
DropdownMenuCheckboxItemProps,
|
|
195
|
-
DropdownMenuItemIndicatorProps,
|
|
196
|
-
DropdownMenuSeparatorProps,
|
|
197
|
-
DropdownMenuGroupLabelProps,
|
|
198
|
-
};
|
|
File without changes
|
|
File without changes
|