@dxos/react-ui-pickers 0.8.2-main.f11618f → 0.8.2-main.fbd8ed0
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 +19 -39
- package/dist/lib/browser/index.mjs.map +3 -3
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/node/index.cjs +19 -39
- package/dist/lib/node/index.cjs.map +3 -3
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node-esm/index.mjs +19 -39
- package/dist/lib/node-esm/index.mjs.map +3 -3
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/types/src/components/EmojiPicker/EmojiPicker.d.ts.map +1 -1
- package/dist/types/src/components/HuePicker/HuePicker.d.ts.map +1 -1
- package/dist/types/src/components/IconPicker/IconPicker.d.ts.map +1 -1
- package/dist/types/src/components/PickerButton/PickerButton.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +9 -9
- package/src/components/EmojiPicker/EmojiPicker.stories.tsx +1 -1
- package/src/components/EmojiPicker/EmojiPicker.tsx +48 -70
- package/src/components/HuePicker/HuePicker.stories.tsx +1 -1
- package/src/components/IconPicker/IconPicker.stories.tsx +1 -1
- package/src/components/PickerButton/PickerButton.tsx +38 -57
|
@@ -46,73 +46,54 @@ export const PickerButton = ({
|
|
|
46
46
|
const [open, setOpen] = useState<boolean>(false);
|
|
47
47
|
|
|
48
48
|
const suppressNextTooltip = useRef<boolean>(false);
|
|
49
|
-
const [triggerTooltipOpen, setTriggerTooltipOpen] = useState(false);
|
|
50
49
|
|
|
51
50
|
const TriggerRoot = rootVariant === 'toolbar-button' ? Toolbar.Button : Button;
|
|
52
51
|
|
|
53
52
|
return (
|
|
54
|
-
<
|
|
55
|
-
|
|
53
|
+
<DropdownMenu.Root
|
|
54
|
+
modal={false}
|
|
55
|
+
open={open}
|
|
56
56
|
onOpenChange={(nextOpen) => {
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
suppressNextTooltip.current = false;
|
|
60
|
-
} else {
|
|
61
|
-
setTriggerTooltipOpen(nextOpen);
|
|
62
|
-
}
|
|
57
|
+
setOpen(nextOpen);
|
|
58
|
+
suppressNextTooltip.current = true;
|
|
63
59
|
}}
|
|
64
60
|
>
|
|
65
|
-
<
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
</TriggerRoot>
|
|
80
|
-
</DropdownMenu.Trigger>
|
|
81
|
-
</Tooltip.Trigger>
|
|
82
|
-
<Tooltip.Portal>
|
|
83
|
-
<Tooltip.Content side='bottom'>
|
|
84
|
-
{label}
|
|
85
|
-
<Tooltip.Arrow />
|
|
86
|
-
</Tooltip.Content>
|
|
87
|
-
</Tooltip.Portal>
|
|
88
|
-
<DropdownMenu.Portal>
|
|
89
|
-
<DropdownMenu.Content side='bottom' classNames='!is-min'>
|
|
90
|
-
<DropdownMenu.Viewport classNames='grid grid-cols-[repeat(6,min-content)]'>
|
|
91
|
-
{values.map((_value) => {
|
|
92
|
-
return (
|
|
93
|
-
<DropdownMenu.CheckboxItem
|
|
94
|
-
key={_value}
|
|
95
|
-
checked={_value === value}
|
|
96
|
-
onCheckedChange={() => setValue(_value)}
|
|
97
|
-
classNames={'p-1 items-center justify-center aspect-square'}
|
|
98
|
-
>
|
|
99
|
-
<Component value={_value} iconSize={iconSize} />
|
|
100
|
-
</DropdownMenu.CheckboxItem>
|
|
101
|
-
);
|
|
102
|
-
})}
|
|
103
|
-
{onReset && (
|
|
61
|
+
<Tooltip.Trigger asChild content={label} side='bottom' suppressNextTooltip={suppressNextTooltip}>
|
|
62
|
+
<DropdownMenu.Trigger asChild>
|
|
63
|
+
<TriggerRoot classNames={['gap-2 plb-1', classNames]} disabled={disabled}>
|
|
64
|
+
<span className='sr-only'>{label}</span>
|
|
65
|
+
{(value && <Component value={value} iconSize={iconSize} />) || <Icon icon={icon} size={iconSize} />}
|
|
66
|
+
<Icon icon='ph--caret-down--bold' size={3} />
|
|
67
|
+
</TriggerRoot>
|
|
68
|
+
</DropdownMenu.Trigger>
|
|
69
|
+
</Tooltip.Trigger>
|
|
70
|
+
<DropdownMenu.Portal>
|
|
71
|
+
<DropdownMenu.Content side='bottom' classNames='!is-min'>
|
|
72
|
+
<DropdownMenu.Viewport classNames='grid grid-cols-[repeat(6,min-content)]'>
|
|
73
|
+
{values.map((_value) => {
|
|
74
|
+
return (
|
|
104
75
|
<DropdownMenu.CheckboxItem
|
|
105
|
-
|
|
76
|
+
key={_value}
|
|
77
|
+
checked={_value === value}
|
|
78
|
+
onCheckedChange={() => setValue(_value)}
|
|
106
79
|
classNames={'p-1 items-center justify-center aspect-square'}
|
|
107
80
|
>
|
|
108
|
-
<
|
|
81
|
+
<Component value={_value} iconSize={iconSize} />
|
|
109
82
|
</DropdownMenu.CheckboxItem>
|
|
110
|
-
)
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
83
|
+
);
|
|
84
|
+
})}
|
|
85
|
+
{onReset && (
|
|
86
|
+
<DropdownMenu.CheckboxItem
|
|
87
|
+
onCheckedChange={() => onReset()}
|
|
88
|
+
classNames={'p-1 items-center justify-center aspect-square'}
|
|
89
|
+
>
|
|
90
|
+
<Icon icon='ph--x--regular' size={iconSize} />
|
|
91
|
+
</DropdownMenu.CheckboxItem>
|
|
92
|
+
)}
|
|
93
|
+
</DropdownMenu.Viewport>
|
|
94
|
+
<DropdownMenu.Arrow />
|
|
95
|
+
</DropdownMenu.Content>
|
|
96
|
+
</DropdownMenu.Portal>
|
|
97
|
+
</DropdownMenu.Root>
|
|
117
98
|
);
|
|
118
99
|
};
|