@dxos/react-ui-pickers 0.8.4-main.f9ba587 → 0.8.4-main.fcc0d83b33

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 (44) hide show
  1. package/dist/lib/browser/chunk-D3UYVI3X.mjs +64 -0
  2. package/dist/lib/browser/chunk-D3UYVI3X.mjs.map +7 -0
  3. package/dist/lib/browser/components/IconPicker/icons.mjs +9 -0
  4. package/dist/lib/browser/components/IconPicker/icons.mjs.map +7 -0
  5. package/dist/lib/browser/index.css +2 -2
  6. package/dist/lib/browser/index.css.map +2 -2
  7. package/dist/lib/browser/index.mjs +195 -295
  8. package/dist/lib/browser/index.mjs.map +3 -3
  9. package/dist/lib/browser/meta.json +1 -1
  10. package/dist/lib/node-esm/chunk-N4YXLEKA.mjs +66 -0
  11. package/dist/lib/node-esm/chunk-N4YXLEKA.mjs.map +7 -0
  12. package/dist/lib/node-esm/components/IconPicker/icons.mjs +10 -0
  13. package/dist/lib/node-esm/components/IconPicker/icons.mjs.map +7 -0
  14. package/dist/lib/node-esm/index.css +2 -2
  15. package/dist/lib/node-esm/index.css.map +2 -2
  16. package/dist/lib/node-esm/index.mjs +194 -295
  17. package/dist/lib/node-esm/index.mjs.map +3 -3
  18. package/dist/lib/node-esm/meta.json +1 -1
  19. package/dist/types/src/components/EmojiPicker/EmojiPicker.d.ts +2 -2
  20. package/dist/types/src/components/EmojiPicker/EmojiPicker.d.ts.map +1 -1
  21. package/dist/types/src/components/EmojiPicker/EmojiPicker.stories.d.ts +8 -4
  22. package/dist/types/src/components/EmojiPicker/EmojiPicker.stories.d.ts.map +1 -1
  23. package/dist/types/src/components/HuePicker/HuePicker.d.ts.map +1 -1
  24. package/dist/types/src/components/HuePicker/HuePicker.stories.d.ts +10 -4
  25. package/dist/types/src/components/HuePicker/HuePicker.stories.d.ts.map +1 -1
  26. package/dist/types/src/components/IconPicker/IconPicker.d.ts +1 -1
  27. package/dist/types/src/components/IconPicker/IconPicker.d.ts.map +1 -1
  28. package/dist/types/src/components/IconPicker/IconPicker.stories.d.ts +10 -4
  29. package/dist/types/src/components/IconPicker/IconPicker.stories.d.ts.map +1 -1
  30. package/dist/types/src/components/IconPicker/icons.d.ts +7 -0
  31. package/dist/types/src/components/IconPicker/icons.d.ts.map +1 -0
  32. package/dist/types/src/components/PickerButton/PickerButton.d.ts +3 -3
  33. package/dist/types/src/components/PickerButton/PickerButton.d.ts.map +1 -1
  34. package/dist/types/tsconfig.tsbuildinfo +1 -1
  35. package/package.json +27 -20
  36. package/src/components/EmojiPicker/EmojiPicker.stories.tsx +12 -15
  37. package/src/components/EmojiPicker/EmojiPicker.tsx +29 -24
  38. package/src/components/EmojiPicker/emoji.css +5 -21
  39. package/src/components/HuePicker/HuePicker.stories.tsx +10 -12
  40. package/src/components/HuePicker/HuePicker.tsx +8 -12
  41. package/src/components/IconPicker/IconPicker.stories.tsx +10 -12
  42. package/src/components/IconPicker/IconPicker.tsx +7 -62
  43. package/src/components/IconPicker/icons.ts +66 -0
  44. package/src/components/PickerButton/PickerButton.tsx +11 -12
@@ -1,335 +1,234 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
+ import {
3
+ iconValues
4
+ } from "./chunk-N4YXLEKA.mjs";
2
5
 
3
6
  // src/components/EmojiPicker/EmojiPicker.tsx
4
- import { useSignals as _useSignals } from "@preact-signals/safe-react/tracking";
5
7
  import emojiData from "@emoji-mart/data";
6
8
  import EmojiMart from "@emoji-mart/react";
7
9
  import { useControllableState } from "@radix-ui/react-use-controllable-state";
8
10
  import React, { useState } from "react";
9
- import { Button, Popover, Toolbar, Tooltip, useMediaQuery, useThemeContext, useTranslation, Icon, ButtonGroup } from "@dxos/react-ui";
11
+ import { Button, ButtonGroup, Icon, IconButton, Popover, Toolbar, useMediaQuery, useThemeContext, useTranslation } from "@dxos/react-ui";
12
+ import { osTranslations } from "@dxos/ui-theme";
10
13
  var EmojiPickerToolbarButton = ({ classNames, emoji, disabled, defaultEmoji, onChangeEmoji }) => {
11
- var _effect = _useSignals();
12
- try {
13
- const { t } = useTranslation("os");
14
- const { themeMode } = useThemeContext();
15
- const [_emojiValue, setEmojiValue] = useControllableState({
16
- prop: emoji,
17
- onChange: onChangeEmoji,
18
- defaultProp: defaultEmoji
19
- });
20
- const [emojiPickerOpen, setEmojiPickerOpen] = useState(false);
21
- return /* @__PURE__ */ React.createElement(Popover.Root, {
22
- open: emojiPickerOpen,
23
- onOpenChange: (nextOpen) => {
24
- setEmojiPickerOpen(nextOpen);
14
+ const { t } = useTranslation(osTranslations);
15
+ const { themeMode } = useThemeContext();
16
+ const [_emojiValue, setEmojiValue] = useControllableState({
17
+ prop: emoji,
18
+ onChange: onChangeEmoji,
19
+ defaultProp: defaultEmoji
20
+ });
21
+ const [emojiPickerOpen, setEmojiPickerOpen] = useState(false);
22
+ return /* @__PURE__ */ React.createElement(Popover.Root, {
23
+ open: emojiPickerOpen,
24
+ onOpenChange: (nextOpen) => {
25
+ setEmojiPickerOpen(nextOpen);
26
+ }
27
+ }, /* @__PURE__ */ React.createElement(Popover.Trigger, {
28
+ asChild: true
29
+ }, /* @__PURE__ */ React.createElement(Toolbar.IconButton, {
30
+ icon: "ph--user-circle--regular",
31
+ label: t("select-emoji.label"),
32
+ iconOnly: true,
33
+ tooltipSide: "bottom",
34
+ disabled
35
+ })), /* @__PURE__ */ React.createElement(Popover.Portal, null, /* @__PURE__ */ React.createElement(Popover.Content, {
36
+ side: "bottom",
37
+ onKeyDownCapture: (event) => {
38
+ if (event.key === "Escape") {
39
+ event.stopPropagation();
40
+ setEmojiPickerOpen(false);
25
41
  }
26
- }, /* @__PURE__ */ React.createElement(Tooltip.Trigger, {
27
- asChild: true,
28
- content: t("select emoji label"),
29
- side: "bottom"
30
- }, /* @__PURE__ */ React.createElement(Popover.Trigger, {
31
- asChild: true
32
- }, /* @__PURE__ */ React.createElement(Toolbar.Button, {
33
- classNames: [
34
- "gap-2 text-2xl plb-1",
35
- classNames
36
- ],
37
- disabled
38
- }, /* @__PURE__ */ React.createElement("span", {
39
- className: "sr-only"
40
- }, t("select emoji label")), /* @__PURE__ */ React.createElement(Icon, {
41
- icon: "ph--user-circle--regular",
42
- size: 5
43
- })))), /* @__PURE__ */ React.createElement(Popover.Portal, null, /* @__PURE__ */ React.createElement(Popover.Content, {
44
- side: "bottom",
45
- onKeyDownCapture: (event) => {
46
- if (event.key === "Escape") {
47
- event.stopPropagation();
48
- setEmojiPickerOpen(false);
49
- }
42
+ }
43
+ }, /* @__PURE__ */ React.createElement(EmojiMart, {
44
+ data: emojiData,
45
+ onEmojiSelect: ({ native }) => {
46
+ if (native) {
47
+ setEmojiValue(native);
48
+ setEmojiPickerOpen(false);
50
49
  }
51
- }, /* @__PURE__ */ React.createElement(EmojiMart, {
52
- data: emojiData,
53
- onEmojiSelect: ({ native }) => {
54
- if (native) {
55
- setEmojiValue(native);
56
- setEmojiPickerOpen(false);
57
- }
58
- },
59
- autoFocus: true,
60
- maxFrequentRows: 0,
61
- noCountryFlags: true,
62
- theme: themeMode
63
- }), /* @__PURE__ */ React.createElement(Popover.Arrow, null))));
64
- } finally {
65
- _effect.f();
66
- }
50
+ },
51
+ autoFocus: true,
52
+ maxFrequentRows: 0,
53
+ noCountryFlags: true,
54
+ theme: themeMode
55
+ }), /* @__PURE__ */ React.createElement(Popover.Arrow, null))));
67
56
  };
68
57
  var EmojiPickerBlock = ({ disabled, defaultEmoji, emoji, onChangeEmoji, onClickClear, triggerVariant = "ghost", classNames }) => {
69
- var _effect = _useSignals();
70
- try {
71
- const { t } = useTranslation("os");
72
- const [isMd] = useMediaQuery("md", {
73
- ssr: false
74
- });
75
- const [emojiValue, setEmojiValue] = useControllableState({
76
- prop: emoji,
77
- onChange: onChangeEmoji,
78
- defaultProp: defaultEmoji
79
- });
80
- const [emojiPickerOpen, setEmojiPickerOpen] = useState(false);
81
- return /* @__PURE__ */ React.createElement(ButtonGroup, {
82
- classNames
83
- }, /* @__PURE__ */ React.createElement(Popover.Root, {
84
- open: emojiPickerOpen,
85
- onOpenChange: setEmojiPickerOpen
86
- }, /* @__PURE__ */ React.createElement(Popover.Trigger, {
87
- asChild: true
88
- }, /* @__PURE__ */ React.createElement(Button, {
89
- variant: triggerVariant,
90
- classNames: "grow gap-2 text-2xl plb-1",
91
- disabled
92
- }, /* @__PURE__ */ React.createElement("span", {
93
- className: "sr-only"
94
- }, t("select emoji label")), /* @__PURE__ */ React.createElement("span", null, emojiValue), /* @__PURE__ */ React.createElement(Icon, {
95
- icon: "ph--caret-down--bold",
96
- size: 3
97
- }))), /* @__PURE__ */ React.createElement(Popover.Content, {
98
- side: "right",
99
- sideOffset: isMd ? 0 : -310,
100
- onKeyDownCapture: (event) => {
101
- if (event.key === "Escape") {
102
- event.stopPropagation();
103
- setEmojiPickerOpen(false);
104
- }
58
+ const { t } = useTranslation(osTranslations);
59
+ const [isMd] = useMediaQuery("md");
60
+ const [emojiValue, setEmojiValue] = useControllableState({
61
+ prop: emoji,
62
+ onChange: onChangeEmoji,
63
+ defaultProp: defaultEmoji
64
+ });
65
+ const [emojiPickerOpen, setEmojiPickerOpen] = useState(false);
66
+ return /* @__PURE__ */ React.createElement(ButtonGroup, {
67
+ classNames
68
+ }, /* @__PURE__ */ React.createElement(Popover.Root, {
69
+ open: emojiPickerOpen,
70
+ onOpenChange: setEmojiPickerOpen
71
+ }, /* @__PURE__ */ React.createElement(Popover.Trigger, {
72
+ asChild: true
73
+ }, /* @__PURE__ */ React.createElement(Button, {
74
+ variant: triggerVariant,
75
+ classNames: "grow gap-2 text-2xl py-1",
76
+ disabled
77
+ }, /* @__PURE__ */ React.createElement("span", {
78
+ className: "sr-only"
79
+ }, t("select-emoji.label")), /* @__PURE__ */ React.createElement("span", null, emojiValue), /* @__PURE__ */ React.createElement(Icon, {
80
+ icon: "ph--caret-down--bold",
81
+ size: 3
82
+ }))), /* @__PURE__ */ React.createElement(Popover.Content, {
83
+ side: "right",
84
+ sideOffset: isMd ? 0 : -310,
85
+ onKeyDownCapture: (event) => {
86
+ if (event.key === "Escape") {
87
+ event.stopPropagation();
88
+ setEmojiPickerOpen(false);
89
+ }
90
+ }
91
+ }, /* @__PURE__ */ React.createElement(EmojiMart, {
92
+ data: emojiData,
93
+ onEmojiSelect: ({ native }) => {
94
+ if (native) {
95
+ setEmojiValue(native);
96
+ setEmojiPickerOpen(false);
105
97
  }
106
- }, /* @__PURE__ */ React.createElement(EmojiMart, {
107
- data: emojiData,
108
- onEmojiSelect: ({ native }) => {
109
- if (native) {
110
- setEmojiValue(native);
111
- setEmojiPickerOpen(false);
112
- }
113
- },
114
- autoFocus: true,
115
- maxFrequentRows: 0,
116
- noCountryFlags: true
117
- }), /* @__PURE__ */ React.createElement(Popover.Arrow, null))), /* @__PURE__ */ React.createElement(Tooltip.Trigger, {
118
- asChild: true,
119
- content: t("clear label"),
120
- side: "right"
121
- }, /* @__PURE__ */ React.createElement(Button, {
122
- variant: triggerVariant,
123
- onClick: onClickClear,
124
- disabled
125
- }, /* @__PURE__ */ React.createElement("span", {
126
- className: "sr-only"
127
- }, t("clear label")), /* @__PURE__ */ React.createElement(Icon, {
128
- icon: "ph--arrow-counter-clockwise--regular",
129
- size: 5
130
- }))));
131
- } finally {
132
- _effect.f();
133
- }
98
+ },
99
+ autoFocus: true,
100
+ maxFrequentRows: 0,
101
+ noCountryFlags: true
102
+ }), /* @__PURE__ */ React.createElement(Popover.Arrow, null))), /* @__PURE__ */ React.createElement(IconButton, {
103
+ icon: "ph--arrow-counter-clockwise--regular",
104
+ iconOnly: true,
105
+ label: t("clear.label"),
106
+ tooltipSide: "right",
107
+ variant: triggerVariant,
108
+ onClick: onClickClear,
109
+ disabled
110
+ }));
134
111
  };
135
112
 
136
113
  // src/components/HuePicker/HuePicker.tsx
137
- import { useSignals as _useSignals3 } from "@preact-signals/safe-react/tracking";
138
114
  import React3 from "react";
139
115
  import { useTranslation as useTranslation2 } from "@dxos/react-ui";
140
- import { hues } from "@dxos/react-ui-theme";
116
+ import { getSize, hues, osTranslations as osTranslations2 } from "@dxos/ui-theme";
141
117
 
142
118
  // src/components/PickerButton/PickerButton.tsx
143
- import { useSignals as _useSignals2 } from "@preact-signals/safe-react/tracking";
144
119
  import { useControllableState as useControllableState2 } from "@radix-ui/react-use-controllable-state";
145
120
  import React2, { useEffect, useState as useState2 } from "react";
146
- import { Button as Button2, DropdownMenu, Icon as Icon2, Toolbar as Toolbar2, Tooltip as Tooltip2 } from "@dxos/react-ui";
147
- var PickerButton = ({ Component, disabled, classNames, defaultValue: _defaultValue, value: _value, values, label, icon, onChange, onReset, rootVariant = "button", iconSize = 5 }) => {
148
- var _effect = _useSignals2();
149
- try {
150
- const [value, setValue] = useControllableState2({
151
- prop: _value,
152
- defaultProp: _defaultValue,
153
- onChange
154
- });
155
- useEffect(() => setValue(_value), [
156
- _value
157
- ]);
158
- const [open, setOpen] = useState2(false);
159
- const TriggerRoot = rootVariant === "toolbar-button" ? Toolbar2.Button : Button2;
160
- return /* @__PURE__ */ React2.createElement(DropdownMenu.Root, {
161
- modal: false,
162
- open,
163
- onOpenChange: setOpen
164
- }, /* @__PURE__ */ React2.createElement(Tooltip2.Trigger, {
165
- asChild: true,
166
- content: label,
167
- side: "bottom"
168
- }, /* @__PURE__ */ React2.createElement(DropdownMenu.Trigger, {
169
- asChild: true
170
- }, /* @__PURE__ */ React2.createElement(TriggerRoot, {
171
- classNames: [
172
- "gap-2 plb-1",
173
- classNames
174
- ],
175
- disabled
176
- }, /* @__PURE__ */ React2.createElement("span", {
177
- className: "sr-only"
178
- }, label), value && /* @__PURE__ */ React2.createElement(Component, {
179
- value,
180
- iconSize
181
- }) || /* @__PURE__ */ React2.createElement(Icon2, {
182
- icon,
183
- size: iconSize
184
- }), /* @__PURE__ */ React2.createElement(Icon2, {
185
- icon: "ph--caret-down--bold",
186
- size: 3
187
- })))), /* @__PURE__ */ React2.createElement(DropdownMenu.Portal, null, /* @__PURE__ */ React2.createElement(DropdownMenu.Content, {
188
- side: "bottom",
189
- classNames: "!is-min"
190
- }, /* @__PURE__ */ React2.createElement(DropdownMenu.Viewport, {
191
- classNames: "grid grid-cols-[repeat(6,min-content)]"
192
- }, values.map((_value2) => {
193
- return /* @__PURE__ */ React2.createElement(DropdownMenu.CheckboxItem, {
194
- key: _value2,
195
- checked: _value2 === value,
196
- onCheckedChange: () => setValue(_value2),
197
- classNames: "p-1 items-center justify-center aspect-square"
198
- }, /* @__PURE__ */ React2.createElement(Component, {
199
- value: _value2,
200
- iconSize
201
- }));
202
- }), onReset && /* @__PURE__ */ React2.createElement(DropdownMenu.CheckboxItem, {
203
- onCheckedChange: () => onReset(),
121
+ import { Button as Button2, DropdownMenu, Icon as Icon2, Toolbar as Toolbar2, Tooltip } from "@dxos/react-ui";
122
+ var PickerButton = ({ Component, disabled, classNames, defaultValue: defaultValueProp, value: valueProp, values, label, icon, onChange, onReset, rootVariant = "button", iconSize = 5 }) => {
123
+ const [value, setValue] = useControllableState2({
124
+ prop: valueProp,
125
+ defaultProp: defaultValueProp,
126
+ onChange
127
+ });
128
+ useEffect(() => setValue(valueProp), [
129
+ valueProp
130
+ ]);
131
+ const [open, setOpen] = useState2(false);
132
+ const TriggerRoot = rootVariant === "toolbar-button" ? Toolbar2.Button : Button2;
133
+ return /* @__PURE__ */ React2.createElement(DropdownMenu.Root, {
134
+ modal: false,
135
+ open,
136
+ onOpenChange: setOpen
137
+ }, /* @__PURE__ */ React2.createElement(Tooltip.Trigger, {
138
+ asChild: true,
139
+ content: label,
140
+ side: "bottom"
141
+ }, /* @__PURE__ */ React2.createElement(DropdownMenu.Trigger, {
142
+ asChild: true
143
+ }, /* @__PURE__ */ React2.createElement(TriggerRoot, {
144
+ classNames: [
145
+ "gap-2 py-1",
146
+ classNames
147
+ ],
148
+ disabled
149
+ }, /* @__PURE__ */ React2.createElement("span", {
150
+ className: "sr-only"
151
+ }, label), value && /* @__PURE__ */ React2.createElement(Component, {
152
+ value,
153
+ size: iconSize
154
+ }) || /* @__PURE__ */ React2.createElement(Icon2, {
155
+ icon,
156
+ size: iconSize
157
+ }), /* @__PURE__ */ React2.createElement(Icon2, {
158
+ icon: "ph--caret-down--bold",
159
+ size: 3
160
+ })))), /* @__PURE__ */ React2.createElement(DropdownMenu.Portal, null, /* @__PURE__ */ React2.createElement(DropdownMenu.Content, {
161
+ side: "bottom",
162
+ classNames: "!w-min"
163
+ }, /* @__PURE__ */ React2.createElement(DropdownMenu.Viewport, {
164
+ classNames: "grid grid-cols-[repeat(6,min-content)]"
165
+ }, values.map((_value) => {
166
+ return /* @__PURE__ */ React2.createElement(DropdownMenu.CheckboxItem, {
167
+ key: _value,
168
+ checked: _value === value,
169
+ onCheckedChange: () => setValue(_value),
204
170
  classNames: "p-1 items-center justify-center aspect-square"
205
- }, /* @__PURE__ */ React2.createElement(Icon2, {
206
- icon: "ph--x--regular",
171
+ }, /* @__PURE__ */ React2.createElement(Component, {
172
+ value: _value,
207
173
  size: iconSize
208
- }))), /* @__PURE__ */ React2.createElement(DropdownMenu.Arrow, null))));
209
- } finally {
210
- _effect.f();
211
- }
174
+ }));
175
+ }), onReset && /* @__PURE__ */ React2.createElement(DropdownMenu.CheckboxItem, {
176
+ onCheckedChange: () => onReset(),
177
+ classNames: "p-1 items-center justify-center aspect-square"
178
+ }, /* @__PURE__ */ React2.createElement(Icon2, {
179
+ icon: "ph--x--regular",
180
+ size: iconSize
181
+ }))), /* @__PURE__ */ React2.createElement(DropdownMenu.Arrow, null))));
212
182
  };
213
183
 
214
184
  // src/components/HuePicker/HuePicker.tsx
215
185
  var HuePicker = (props) => {
216
- var _effect = _useSignals3();
217
- try {
218
- const { t } = useTranslation2("os");
219
- return /* @__PURE__ */ React3.createElement(PickerButton, {
220
- Component: HuePreview,
221
- label: t("select hue label"),
222
- icon: "ph--palette--regular",
223
- values: hues,
224
- ...props
225
- });
226
- } finally {
227
- _effect.f();
228
- }
186
+ const { t } = useTranslation2(osTranslations2);
187
+ return /* @__PURE__ */ React3.createElement(PickerButton, {
188
+ Component: HuePreview,
189
+ label: t("select-hue.label"),
190
+ icon: "ph--palette--regular",
191
+ values: hues,
192
+ ...props
193
+ });
229
194
  };
230
- var HuePreview = ({ value }) => {
231
- var _effect = _useSignals3();
232
- try {
233
- const size = 16;
234
- return /* @__PURE__ */ React3.createElement("div", {
235
- className: "flex p-[2px] justify-center items-center"
236
- }, /* @__PURE__ */ React3.createElement("svg", {
237
- viewBox: `0 0 ${size} ${size}`,
238
- className: "is-[var(--hue-preview-size,1rem)] bs-[var(--hue-preview-size,1rem)]"
239
- }, /* @__PURE__ */ React3.createElement("rect", {
240
- x: 0,
241
- y: 0,
242
- width: size,
243
- height: size,
244
- fill: `var(--dx-${value}Fill)`,
245
- strokeWidth: 4
246
- })));
247
- } finally {
248
- _effect.f();
249
- }
195
+ var HuePreview = ({ value, size = 5 }) => {
196
+ return /* @__PURE__ */ React3.createElement("div", {
197
+ role: "none",
198
+ className: "flex justify-center items-center"
199
+ }, /* @__PURE__ */ React3.createElement("svg", {
200
+ viewBox: `0 0 ${size} ${size}`,
201
+ className: getSize(size)
202
+ }, /* @__PURE__ */ React3.createElement("rect", {
203
+ x: 0,
204
+ y: 0,
205
+ width: size,
206
+ height: size,
207
+ fill: `var(--color-${value}-surface)`,
208
+ strokeWidth: 4
209
+ })));
250
210
  };
251
211
 
252
212
  // src/components/IconPicker/IconPicker.tsx
253
- import { useSignals as _useSignals4 } from "@preact-signals/safe-react/tracking";
254
213
  import React4 from "react";
255
214
  import { Icon as Icon3, useTranslation as useTranslation3 } from "@dxos/react-ui";
215
+ import { osTranslations as osTranslations3 } from "@dxos/ui-theme";
256
216
  var IconPicker = ({ ...props }) => {
257
- var _effect = _useSignals4();
258
- try {
259
- const { t } = useTranslation3("os");
260
- return /* @__PURE__ */ React4.createElement(PickerButton, {
261
- Component: IconPreview,
262
- label: t("select icon label"),
263
- icon: "ph--selection--regular",
264
- values: iconValues,
265
- ...props
266
- });
267
- } finally {
268
- _effect.f();
269
- }
217
+ const { t } = useTranslation3(osTranslations3);
218
+ return /* @__PURE__ */ React4.createElement(PickerButton, {
219
+ Component: IconPreview,
220
+ label: t("select-icon.label"),
221
+ icon: "ph--selection--regular",
222
+ values: iconValues,
223
+ ...props
224
+ });
270
225
  };
271
- var IconPreview = ({ value, iconSize = 5 }) => {
272
- var _effect = _useSignals4();
273
- try {
274
- return /* @__PURE__ */ React4.createElement(Icon3, {
275
- icon: `ph--${value}--regular`,
276
- size: iconSize
277
- });
278
- } finally {
279
- _effect.f();
280
- }
226
+ var IconPreview = ({ value, size }) => {
227
+ return /* @__PURE__ */ React4.createElement(Icon3, {
228
+ icon: `ph--${value}--regular`,
229
+ size
230
+ });
281
231
  };
282
- var icons = [
283
- "ph--air-traffic-control--regular",
284
- "ph--asterisk--regular",
285
- "ph--atom--regular",
286
- "ph--basketball--regular",
287
- "ph--butterfly--regular",
288
- "ph--cactus--regular",
289
- "ph--cake--regular",
290
- "ph--calendar-dots--regular",
291
- "ph--campfire--regular",
292
- "ph--command--regular",
293
- "ph--confetti--regular",
294
- "ph--detective--regular",
295
- "ph--disco-ball--regular",
296
- "ph--dna--regular",
297
- "ph--factory--regular",
298
- "ph--flag-banner-fold--regular",
299
- "ph--flask--regular",
300
- "ph--flower-lotus--regular",
301
- "ph--flying-saucer--regular",
302
- "ph--game-controller--regular",
303
- "ph--gavel--regular",
304
- "ph--gift--regular",
305
- "ph--guitar--regular",
306
- "ph--hamburger--regular",
307
- "ph--handshake--regular",
308
- "ph--heart--regular",
309
- "ph--lightbulb--regular",
310
- "ph--lock--regular",
311
- "ph--martini--regular",
312
- "ph--medal-military--regular",
313
- "ph--moped-front--regular",
314
- "ph--office-chair--regular",
315
- "ph--paint-brush-household--regular",
316
- "ph--peace--regular",
317
- "ph--person-simple-hike--regular",
318
- "ph--piggy-bank--regular",
319
- "ph--potted-plant--regular",
320
- "ph--radioactive--regular",
321
- "ph--rocket-launch--regular",
322
- "ph--shield-star--regular",
323
- "ph--shopping-cart--regular",
324
- "ph--stethoscope--regular",
325
- "ph--student--regular",
326
- "ph--sun--regular",
327
- "ph--tote--regular",
328
- "ph--tree--regular",
329
- "ph--users-three--regular",
330
- "ph--yin-yang--regular"
331
- ];
332
- var iconValues = icons.map((icon) => icon.match(/ph--(.+)--regular/)?.[1] ?? icon);
333
232
  export {
334
233
  EmojiPickerBlock,
335
234
  EmojiPickerToolbarButton,