@fibery/ui-kit 1.34.8 → 1.35.0

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 (53) hide show
  1. package/package.json +4 -4
  2. package/src/actions-menu/actions-menu-sub-menu.tsx +3 -0
  3. package/src/antd/styles.ts +6 -6
  4. package/src/button/base-button.tsx +1 -1
  5. package/src/button/icon-button.tsx +2 -2
  6. package/src/design-system.ts +55 -31
  7. package/src/dropdown-menu/index.tsx +2 -3
  8. package/src/emoji-picker/app-icon-picker.tsx +1 -0
  9. package/src/emoji-picker/primitives/emoji.tsx +4 -2
  10. package/src/emoji-picker/primitives/render-config-provider.tsx +12 -0
  11. package/src/icons/ast/AddDatabase.ts +8 -0
  12. package/src/icons/ast/AddIntegration.ts +8 -0
  13. package/src/icons/ast/AiSearch.ts +8 -0
  14. package/src/icons/ast/Clean.ts +8 -0
  15. package/src/icons/ast/CreditsFilled.ts +8 -0
  16. package/src/icons/ast/Gift.ts +8 -0
  17. package/src/icons/ast/Markdown.ts +8 -0
  18. package/src/icons/ast/PeopleCheck.ts +8 -0
  19. package/src/icons/ast/PresentPlay.ts +8 -0
  20. package/src/icons/ast/PresentStop.ts +8 -0
  21. package/src/icons/ast/SettingsOff.ts +8 -0
  22. package/src/icons/ast/Template.ts +8 -0
  23. package/src/icons/ast/UserCheck.ts +8 -0
  24. package/src/icons/ast/UserGroupRemove.ts +8 -0
  25. package/src/icons/ast/UserX.ts +8 -0
  26. package/src/icons/ast/Views.ts +1 -1
  27. package/src/icons/ast/index.tsx +15 -0
  28. package/src/icons/react/AddDatabase.tsx +13 -0
  29. package/src/icons/react/AddIntegration.tsx +13 -0
  30. package/src/icons/react/AiSearch.tsx +13 -0
  31. package/src/icons/react/Clean.tsx +13 -0
  32. package/src/icons/react/CreditsFilled.tsx +13 -0
  33. package/src/icons/react/Gift.tsx +13 -0
  34. package/src/icons/react/Markdown.tsx +13 -0
  35. package/src/icons/react/PeopleCheck.tsx +13 -0
  36. package/src/icons/react/PresentPlay.tsx +13 -0
  37. package/src/icons/react/PresentStop.tsx +13 -0
  38. package/src/icons/react/SettingsOff.tsx +13 -0
  39. package/src/icons/react/Template.tsx +13 -0
  40. package/src/icons/react/UserCheck.tsx +13 -0
  41. package/src/icons/react/UserGroupRemove.tsx +13 -0
  42. package/src/icons/react/UserX.tsx +13 -0
  43. package/src/icons/react/index.tsx +15 -0
  44. package/src/palette.ts +2 -30
  45. package/src/select/custom-select-partials/clear-indicator.tsx +4 -0
  46. package/src/select/custom-select-partials/group-heading.tsx +4 -5
  47. package/src/select/custom-select-partials/menu-list-virtualized.tsx +22 -4
  48. package/src/select/custom-select-partials/menu.tsx +5 -6
  49. package/src/select/index.tsx +39 -28
  50. package/src/select/select-in-popover.tsx +18 -16
  51. package/src/select/styles.ts +10 -2
  52. package/src/toast/toast-queue.ts +1 -1
  53. package/src/tooltip.tsx +6 -0
@@ -5,11 +5,14 @@ export { default as Activity } from './Activity';
5
5
  export { default as AddAfter } from './AddAfter';
6
6
  export { default as AddBefore } from './AddBefore';
7
7
  export { default as AddCompact } from './AddCompact';
8
+ export { default as AddDatabase } from './AddDatabase';
8
9
  export { default as AddGroup } from './AddGroup';
10
+ export { default as AddIntegration } from './AddIntegration';
9
11
  export { default as AddReactions } from './AddReactions';
10
12
  export { default as Add } from './Add';
11
13
  export { default as AiAssistant } from './AiAssistant';
12
14
  export { default as AiAvatar } from './AiAvatar';
15
+ export { default as AiSearch } from './AiSearch';
13
16
  export { default as AlertTriangle } from './AlertTriangle';
14
17
  export { default as AppDetails } from './AppDetails';
15
18
  export { default as AppStoreOneColor } from './AppStoreOneColor';
@@ -57,6 +60,7 @@ export { default as Chat } from './Chat';
57
60
  export { default as CheckCircleFilled } from './CheckCircleFilled';
58
61
  export { default as CheckCircle } from './CheckCircle';
59
62
  export { default as Checked } from './Checked';
63
+ export { default as Clean } from './Clean';
60
64
  export { default as ClearInputFilled } from './ClearInputFilled';
61
65
  export { default as ClearValue } from './ClearValue';
62
66
  export { default as Clear } from './Clear';
@@ -73,6 +77,7 @@ export { default as Columns } from './Columns';
73
77
  export { default as CommentBubble } from './CommentBubble';
74
78
  export { default as Copy } from './Copy';
75
79
  export { default as Create } from './Create';
80
+ export { default as CreditsFilled } from './CreditsFilled';
76
81
  export { default as DatabaseOff } from './DatabaseOff';
77
82
  export { default as DatabaseStroke } from './DatabaseStroke';
78
83
  export { default as Database } from './Database';
@@ -117,6 +122,7 @@ export { default as FormWithoutCover } from './FormWithoutCover';
117
122
  export { default as FullscreenModeOffIcon } from './FullscreenModeOffIcon';
118
123
  export { default as FullscreenModeOnIcon } from './FullscreenModeOnIcon';
119
124
  export { default as FullscreenModeOn } from './FullscreenModeOn';
125
+ export { default as Gift } from './Gift';
120
126
  export { default as Github } from './Github';
121
127
  export { default as Gitlab } from './Gitlab';
122
128
  export { default as GlobeSimple } from './GlobeSimple';
@@ -160,6 +166,7 @@ export { default as LoupeZoomOut } from './LoupeZoomOut';
160
166
  export { default as LoupeZoom } from './LoupeZoom';
161
167
  export { default as ManyPeople } from './ManyPeople';
162
168
  export { default as MapMode } from './MapMode';
169
+ export { default as Markdown } from './Markdown';
163
170
  export { default as MenuCollapser } from './MenuCollapser';
164
171
  export { default as MessagePlusSquare } from './MessagePlusSquare';
165
172
  export { default as Milestones } from './Milestones';
@@ -190,12 +197,15 @@ export { default as PageRegularMode } from './PageRegularMode';
190
197
  export { default as PageWideMode } from './PageWideMode';
191
198
  export { default as PanelAdd } from './PanelAdd';
192
199
  export { default as Pencil } from './Pencil';
200
+ export { default as PeopleCheck } from './PeopleCheck';
193
201
  export { default as People } from './People';
194
202
  export { default as Photo } from './Photo';
195
203
  export { default as PinFilled } from './PinFilled';
196
204
  export { default as Pin } from './Pin';
197
205
  export { default as Popup } from './Popup';
198
206
  export { default as Posts } from './Posts';
207
+ export { default as PresentPlay } from './PresentPlay';
208
+ export { default as PresentStop } from './PresentStop';
199
209
  export { default as PrivateItems } from './PrivateItems';
200
210
  export { default as Question } from './Question';
201
211
  export { default as Refresh } from './Refresh';
@@ -256,6 +266,7 @@ export { default as SelfReferenceOn } from './SelfReferenceOn';
256
266
  export { default as SendArrow } from './SendArrow';
257
267
  export { default as SendBackward } from './SendBackward';
258
268
  export { default as SendToBack } from './SendToBack';
269
+ export { default as SettingsOff } from './SettingsOff';
259
270
  export { default as Settings } from './Settings';
260
271
  export { default as Share } from './Share';
261
272
  export { default as Shared } from './Shared';
@@ -276,6 +287,7 @@ export { default as SortOnTop } from './SortOnTop';
276
287
  export { default as Sort } from './Sort';
277
288
  export { default as Spinner } from './Spinner';
278
289
  export { default as Success } from './Success';
290
+ export { default as Template } from './Template';
279
291
  export { default as Templates } from './Templates';
280
292
  export { default as Terminal } from './Terminal';
281
293
  export { default as TextToolAlignBottom } from './TextToolAlignBottom';
@@ -321,8 +333,11 @@ export { default as UnlockFilled } from './UnlockFilled';
321
333
  export { default as UnlockOutline } from './UnlockOutline';
322
334
  export { default as Upgrade } from './Upgrade';
323
335
  export { default as UsbFlashDrive } from './UsbFlashDrive';
336
+ export { default as UserCheck } from './UserCheck';
337
+ export { default as UserGroupRemove } from './UserGroupRemove';
324
338
  export { default as UserGroup } from './UserGroup';
325
339
  export { default as UserRole } from './UserRole';
340
+ export { default as UserX } from './UserX';
326
341
  export { default as ViewAi } from './ViewAi';
327
342
  export { default as ViewBoard } from './ViewBoard';
328
343
  export { default as ViewCalendar } from './ViewCalendar';
@@ -0,0 +1,13 @@
1
+ // This icon file is generated automatically.
2
+
3
+ import {forwardRef} from 'react';
4
+ import AddDatabaseSvg from '../ast/AddDatabase';
5
+ import { Icon } from '../Icon';
6
+ import { IconBaseProps } from '../types';
7
+
8
+ const AddDatabase = forwardRef<SVGSVGElement, IconBaseProps>(function AddDatabase(
9
+ props: IconBaseProps,
10
+ ref: React.Ref<SVGSVGElement>
11
+ ) {return <Icon {...props} className={props.className} ref={ref} icon={AddDatabaseSvg} />});
12
+
13
+ export default AddDatabase;
@@ -0,0 +1,13 @@
1
+ // This icon file is generated automatically.
2
+
3
+ import {forwardRef} from 'react';
4
+ import AddIntegrationSvg from '../ast/AddIntegration';
5
+ import { Icon } from '../Icon';
6
+ import { IconBaseProps } from '../types';
7
+
8
+ const AddIntegration = forwardRef<SVGSVGElement, IconBaseProps>(function AddIntegration(
9
+ props: IconBaseProps,
10
+ ref: React.Ref<SVGSVGElement>
11
+ ) {return <Icon {...props} className={props.className} ref={ref} icon={AddIntegrationSvg} />});
12
+
13
+ export default AddIntegration;
@@ -0,0 +1,13 @@
1
+ // This icon file is generated automatically.
2
+
3
+ import {forwardRef} from 'react';
4
+ import AiSearchSvg from '../ast/AiSearch';
5
+ import { Icon } from '../Icon';
6
+ import { IconBaseProps } from '../types';
7
+
8
+ const AiSearch = forwardRef<SVGSVGElement, IconBaseProps>(function AiSearch(
9
+ props: IconBaseProps,
10
+ ref: React.Ref<SVGSVGElement>
11
+ ) {return <Icon {...props} className={props.className} ref={ref} icon={AiSearchSvg} />});
12
+
13
+ export default AiSearch;
@@ -0,0 +1,13 @@
1
+ // This icon file is generated automatically.
2
+
3
+ import {forwardRef} from 'react';
4
+ import CleanSvg from '../ast/Clean';
5
+ import { Icon } from '../Icon';
6
+ import { IconBaseProps } from '../types';
7
+
8
+ const Clean = forwardRef<SVGSVGElement, IconBaseProps>(function Clean(
9
+ props: IconBaseProps,
10
+ ref: React.Ref<SVGSVGElement>
11
+ ) {return <Icon {...props} className={props.className} ref={ref} icon={CleanSvg} />});
12
+
13
+ export default Clean;
@@ -0,0 +1,13 @@
1
+ // This icon file is generated automatically.
2
+
3
+ import {forwardRef} from 'react';
4
+ import CreditsFilledSvg from '../ast/CreditsFilled';
5
+ import { Icon } from '../Icon';
6
+ import { IconBaseProps } from '../types';
7
+
8
+ const CreditsFilled = forwardRef<SVGSVGElement, IconBaseProps>(function CreditsFilled(
9
+ props: IconBaseProps,
10
+ ref: React.Ref<SVGSVGElement>
11
+ ) {return <Icon {...props} className={props.className} ref={ref} icon={CreditsFilledSvg} />});
12
+
13
+ export default CreditsFilled;
@@ -0,0 +1,13 @@
1
+ // This icon file is generated automatically.
2
+
3
+ import {forwardRef} from 'react';
4
+ import GiftSvg from '../ast/Gift';
5
+ import { Icon } from '../Icon';
6
+ import { IconBaseProps } from '../types';
7
+
8
+ const Gift = forwardRef<SVGSVGElement, IconBaseProps>(function Gift(
9
+ props: IconBaseProps,
10
+ ref: React.Ref<SVGSVGElement>
11
+ ) {return <Icon {...props} className={props.className} ref={ref} icon={GiftSvg} />});
12
+
13
+ export default Gift;
@@ -0,0 +1,13 @@
1
+ // This icon file is generated automatically.
2
+
3
+ import {forwardRef} from 'react';
4
+ import MarkdownSvg from '../ast/Markdown';
5
+ import { Icon } from '../Icon';
6
+ import { IconBaseProps } from '../types';
7
+
8
+ const Markdown = forwardRef<SVGSVGElement, IconBaseProps>(function Markdown(
9
+ props: IconBaseProps,
10
+ ref: React.Ref<SVGSVGElement>
11
+ ) {return <Icon {...props} className={props.className} ref={ref} icon={MarkdownSvg} />});
12
+
13
+ export default Markdown;
@@ -0,0 +1,13 @@
1
+ // This icon file is generated automatically.
2
+
3
+ import {forwardRef} from 'react';
4
+ import PeopleCheckSvg from '../ast/PeopleCheck';
5
+ import { Icon } from '../Icon';
6
+ import { IconBaseProps } from '../types';
7
+
8
+ const PeopleCheck = forwardRef<SVGSVGElement, IconBaseProps>(function PeopleCheck(
9
+ props: IconBaseProps,
10
+ ref: React.Ref<SVGSVGElement>
11
+ ) {return <Icon {...props} className={props.className} ref={ref} icon={PeopleCheckSvg} />});
12
+
13
+ export default PeopleCheck;
@@ -0,0 +1,13 @@
1
+ // This icon file is generated automatically.
2
+
3
+ import {forwardRef} from 'react';
4
+ import PresentPlaySvg from '../ast/PresentPlay';
5
+ import { Icon } from '../Icon';
6
+ import { IconBaseProps } from '../types';
7
+
8
+ const PresentPlay = forwardRef<SVGSVGElement, IconBaseProps>(function PresentPlay(
9
+ props: IconBaseProps,
10
+ ref: React.Ref<SVGSVGElement>
11
+ ) {return <Icon {...props} className={props.className} ref={ref} icon={PresentPlaySvg} />});
12
+
13
+ export default PresentPlay;
@@ -0,0 +1,13 @@
1
+ // This icon file is generated automatically.
2
+
3
+ import {forwardRef} from 'react';
4
+ import PresentStopSvg from '../ast/PresentStop';
5
+ import { Icon } from '../Icon';
6
+ import { IconBaseProps } from '../types';
7
+
8
+ const PresentStop = forwardRef<SVGSVGElement, IconBaseProps>(function PresentStop(
9
+ props: IconBaseProps,
10
+ ref: React.Ref<SVGSVGElement>
11
+ ) {return <Icon {...props} className={props.className} ref={ref} icon={PresentStopSvg} />});
12
+
13
+ export default PresentStop;
@@ -0,0 +1,13 @@
1
+ // This icon file is generated automatically.
2
+
3
+ import {forwardRef} from 'react';
4
+ import SettingsOffSvg from '../ast/SettingsOff';
5
+ import { Icon } from '../Icon';
6
+ import { IconBaseProps } from '../types';
7
+
8
+ const SettingsOff = forwardRef<SVGSVGElement, IconBaseProps>(function SettingsOff(
9
+ props: IconBaseProps,
10
+ ref: React.Ref<SVGSVGElement>
11
+ ) {return <Icon {...props} className={props.className} ref={ref} icon={SettingsOffSvg} />});
12
+
13
+ export default SettingsOff;
@@ -0,0 +1,13 @@
1
+ // This icon file is generated automatically.
2
+
3
+ import {forwardRef} from 'react';
4
+ import TemplateSvg from '../ast/Template';
5
+ import { Icon } from '../Icon';
6
+ import { IconBaseProps } from '../types';
7
+
8
+ const Template = forwardRef<SVGSVGElement, IconBaseProps>(function Template(
9
+ props: IconBaseProps,
10
+ ref: React.Ref<SVGSVGElement>
11
+ ) {return <Icon {...props} className={props.className} ref={ref} icon={TemplateSvg} />});
12
+
13
+ export default Template;
@@ -0,0 +1,13 @@
1
+ // This icon file is generated automatically.
2
+
3
+ import {forwardRef} from 'react';
4
+ import UserCheckSvg from '../ast/UserCheck';
5
+ import { Icon } from '../Icon';
6
+ import { IconBaseProps } from '../types';
7
+
8
+ const UserCheck = forwardRef<SVGSVGElement, IconBaseProps>(function UserCheck(
9
+ props: IconBaseProps,
10
+ ref: React.Ref<SVGSVGElement>
11
+ ) {return <Icon {...props} className={props.className} ref={ref} icon={UserCheckSvg} />});
12
+
13
+ export default UserCheck;
@@ -0,0 +1,13 @@
1
+ // This icon file is generated automatically.
2
+
3
+ import {forwardRef} from 'react';
4
+ import UserGroupRemoveSvg from '../ast/UserGroupRemove';
5
+ import { Icon } from '../Icon';
6
+ import { IconBaseProps } from '../types';
7
+
8
+ const UserGroupRemove = forwardRef<SVGSVGElement, IconBaseProps>(function UserGroupRemove(
9
+ props: IconBaseProps,
10
+ ref: React.Ref<SVGSVGElement>
11
+ ) {return <Icon {...props} className={props.className} ref={ref} icon={UserGroupRemoveSvg} />});
12
+
13
+ export default UserGroupRemove;
@@ -0,0 +1,13 @@
1
+ // This icon file is generated automatically.
2
+
3
+ import {forwardRef} from 'react';
4
+ import UserXSvg from '../ast/UserX';
5
+ import { Icon } from '../Icon';
6
+ import { IconBaseProps } from '../types';
7
+
8
+ const UserX = forwardRef<SVGSVGElement, IconBaseProps>(function UserX(
9
+ props: IconBaseProps,
10
+ ref: React.Ref<SVGSVGElement>
11
+ ) {return <Icon {...props} className={props.className} ref={ref} icon={UserXSvg} />});
12
+
13
+ export default UserX;
@@ -5,11 +5,14 @@ export { default as Activity } from './Activity';
5
5
  export { default as AddAfter } from './AddAfter';
6
6
  export { default as AddBefore } from './AddBefore';
7
7
  export { default as AddCompact } from './AddCompact';
8
+ export { default as AddDatabase } from './AddDatabase';
8
9
  export { default as AddGroup } from './AddGroup';
10
+ export { default as AddIntegration } from './AddIntegration';
9
11
  export { default as AddReactions } from './AddReactions';
10
12
  export { default as Add } from './Add';
11
13
  export { default as AiAssistant } from './AiAssistant';
12
14
  export { default as AiAvatar } from './AiAvatar';
15
+ export { default as AiSearch } from './AiSearch';
13
16
  export { default as AlertTriangle } from './AlertTriangle';
14
17
  export { default as AppDetails } from './AppDetails';
15
18
  export { default as AppStoreOneColor } from './AppStoreOneColor';
@@ -57,6 +60,7 @@ export { default as Chat } from './Chat';
57
60
  export { default as CheckCircleFilled } from './CheckCircleFilled';
58
61
  export { default as CheckCircle } from './CheckCircle';
59
62
  export { default as Checked } from './Checked';
63
+ export { default as Clean } from './Clean';
60
64
  export { default as ClearInputFilled } from './ClearInputFilled';
61
65
  export { default as ClearValue } from './ClearValue';
62
66
  export { default as Clear } from './Clear';
@@ -73,6 +77,7 @@ export { default as Columns } from './Columns';
73
77
  export { default as CommentBubble } from './CommentBubble';
74
78
  export { default as Copy } from './Copy';
75
79
  export { default as Create } from './Create';
80
+ export { default as CreditsFilled } from './CreditsFilled';
76
81
  export { default as DatabaseOff } from './DatabaseOff';
77
82
  export { default as DatabaseStroke } from './DatabaseStroke';
78
83
  export { default as Database } from './Database';
@@ -117,6 +122,7 @@ export { default as FormWithoutCover } from './FormWithoutCover';
117
122
  export { default as FullscreenModeOffIcon } from './FullscreenModeOffIcon';
118
123
  export { default as FullscreenModeOnIcon } from './FullscreenModeOnIcon';
119
124
  export { default as FullscreenModeOn } from './FullscreenModeOn';
125
+ export { default as Gift } from './Gift';
120
126
  export { default as Github } from './Github';
121
127
  export { default as Gitlab } from './Gitlab';
122
128
  export { default as GlobeSimple } from './GlobeSimple';
@@ -160,6 +166,7 @@ export { default as LoupeZoomOut } from './LoupeZoomOut';
160
166
  export { default as LoupeZoom } from './LoupeZoom';
161
167
  export { default as ManyPeople } from './ManyPeople';
162
168
  export { default as MapMode } from './MapMode';
169
+ export { default as Markdown } from './Markdown';
163
170
  export { default as MenuCollapser } from './MenuCollapser';
164
171
  export { default as MessagePlusSquare } from './MessagePlusSquare';
165
172
  export { default as Milestones } from './Milestones';
@@ -190,12 +197,15 @@ export { default as PageRegularMode } from './PageRegularMode';
190
197
  export { default as PageWideMode } from './PageWideMode';
191
198
  export { default as PanelAdd } from './PanelAdd';
192
199
  export { default as Pencil } from './Pencil';
200
+ export { default as PeopleCheck } from './PeopleCheck';
193
201
  export { default as People } from './People';
194
202
  export { default as Photo } from './Photo';
195
203
  export { default as PinFilled } from './PinFilled';
196
204
  export { default as Pin } from './Pin';
197
205
  export { default as Popup } from './Popup';
198
206
  export { default as Posts } from './Posts';
207
+ export { default as PresentPlay } from './PresentPlay';
208
+ export { default as PresentStop } from './PresentStop';
199
209
  export { default as PrivateItems } from './PrivateItems';
200
210
  export { default as Question } from './Question';
201
211
  export { default as Refresh } from './Refresh';
@@ -256,6 +266,7 @@ export { default as SelfReferenceOn } from './SelfReferenceOn';
256
266
  export { default as SendArrow } from './SendArrow';
257
267
  export { default as SendBackward } from './SendBackward';
258
268
  export { default as SendToBack } from './SendToBack';
269
+ export { default as SettingsOff } from './SettingsOff';
259
270
  export { default as Settings } from './Settings';
260
271
  export { default as Share } from './Share';
261
272
  export { default as Shared } from './Shared';
@@ -276,6 +287,7 @@ export { default as SortOnTop } from './SortOnTop';
276
287
  export { default as Sort } from './Sort';
277
288
  export { default as Spinner } from './Spinner';
278
289
  export { default as Success } from './Success';
290
+ export { default as Template } from './Template';
279
291
  export { default as Templates } from './Templates';
280
292
  export { default as Terminal } from './Terminal';
281
293
  export { default as TextToolAlignBottom } from './TextToolAlignBottom';
@@ -321,8 +333,11 @@ export { default as UnlockFilled } from './UnlockFilled';
321
333
  export { default as UnlockOutline } from './UnlockOutline';
322
334
  export { default as Upgrade } from './Upgrade';
323
335
  export { default as UsbFlashDrive } from './UsbFlashDrive';
336
+ export { default as UserCheck } from './UserCheck';
337
+ export { default as UserGroupRemove } from './UserGroupRemove';
324
338
  export { default as UserGroup } from './UserGroup';
325
339
  export { default as UserRole } from './UserRole';
340
+ export { default as UserX } from './UserX';
326
341
  export { default as ViewAi } from './ViewAi';
327
342
  export { default as ViewBoard } from './ViewBoard';
328
343
  export { default as ViewCalendar } from './ViewCalendar';
package/src/palette.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  export const slate = {
2
+ slateBase: "hsl(0, 0%, 99%)",
2
3
  slate1: "hsl(206, 30%, 99%)",
3
4
  slate2: "hsl(210, 17%, 98%)",
4
5
  slate3: "hsl(209, 13%, 95%)",
@@ -14,6 +15,7 @@ export const slate = {
14
15
  } as const;
15
16
 
16
17
  export const slateDark = {
18
+ slateBase: "hsl(0, 0%, 3%)",
17
19
  slate1: "hsl(200, 7%, 9%)",
18
20
  slate2: "hsl(195, 7%, 11%)",
19
21
  slate3: "hsl(197, 7%, 14%)",
@@ -28,36 +30,6 @@ export const slateDark = {
28
30
  slate12: "hsl(210, 6%, 93%)",
29
31
  } as const;
30
32
 
31
- export const sage = {
32
- sage1: "hsl(155, 30%, 99%)",
33
- sage2: "hsl(150, 17%, 98%)",
34
- sage3: "hsl(151, 11%, 95%)",
35
- sage4: "hsl(151, 9%, 93%)",
36
- sage5: "hsl(151, 8%, 91%)",
37
- sage6: "hsl(152, 7%, 88%)",
38
- sage7: "hsl(153, 7%, 85%)",
39
- sage8: "hsl(154, 6%, 78%)",
40
- sage9: "hsl(155, 4%, 56%)",
41
- sage10: "hsl(154, 3%, 52%)",
42
- sage11: "hsl(155, 3%, 43%)",
43
- sage12: "hsl(155, 24%, 9%)",
44
- } as const;
45
-
46
- export const sageDark = {
47
- sage1: "hsl(160, 7%, 8%)",
48
- sage2: "hsl(150, 7%, 11%)",
49
- sage3: "hsl(150, 7%, 13%)",
50
- sage4: "hsl(150, 6%, 15%)",
51
- sage5: "hsl(150, 6%, 17%)",
52
- sage6: "hsl(150, 6%, 20%)",
53
- sage7: "hsl(150, 5%, 24%)",
54
- sage8: "hsl(150, 5%, 31%)",
55
- sage9: "hsl(155, 6%, 42%)",
56
- sage10: "hsl(153, 5%, 48%)",
57
- sage11: "hsl(155, 5%, 62%)",
58
- sage12: "hsl(155, 6%, 93%)",
59
- } as const;
60
-
61
33
  export const teal = {
62
34
  teal1: "hsl(165, 60%, 99%)",
63
35
  teal2: "hsl(169, 65%, 97%)",
@@ -21,3 +21,7 @@ export function ClearIndicator<
21
21
  </div>
22
22
  );
23
23
  }
24
+
25
+ export function NoClearIndicator() {
26
+ return null;
27
+ }
@@ -1,10 +1,9 @@
1
- import {GroupBase} from "../index";
2
- import {GroupHeadingProps, components} from "react-select";
3
1
  import {css} from "@linaria/core";
2
+ import {GroupHeadingProps, components} from "react-select";
4
3
  import {layout, space, textStyles, themeVars} from "../../design-system";
5
- import React from "react";
6
- import {isPureTextChildren} from "../util";
7
4
  import {TooltipIfOverflown} from "../../tooltip-if-overflown";
5
+ import {GroupBase} from "../index";
6
+ import {isPureTextChildren} from "../util";
8
7
 
9
8
  export const groupHeadingNulledStyles = {
10
9
  paddingLeft: "",
@@ -20,7 +19,7 @@ export const groupHeadingNulledStyles = {
20
19
  const groupHeadingClass = css`
21
20
  min-height: ${layout.menuItemHeight}px;
22
21
  color: ${themeVars.disabledTextColor};
23
- padding: 0 ${space.s6}px 0 ${space.s8}px;
22
+ padding: 0 ${space.s6}px ${space.s2}px ${space.s8}px;
24
23
  display: flex;
25
24
  align-content: flex-end;
26
25
  align-items: flex-end;
@@ -1,9 +1,25 @@
1
+ import {css} from "@linaria/core";
2
+ import _, {isFunction, isObject} from "lodash";
3
+ import {Children, ComponentType, CSSProperties, ReactNode, useContext, useEffect, useRef, useState} from "react";
1
4
  import {GroupHeadingProps, GroupProps, MenuListProps} from "react-select";
2
5
  import {ItemContent, Virtuoso, VirtuosoHandle} from "react-virtuoso";
3
- import {Children, ComponentType, CSSProperties, ReactNode, useContext, useEffect, useRef, useState} from "react";
4
- import {GroupBase, ReactSelectRefContext} from "../util";
5
6
  import {layout} from "../../../src/design-system";
6
- import _, {isFunction, isObject} from "lodash";
7
+ import {GroupBase, ReactSelectRefContext} from "../util";
8
+
9
+ const PADDING_BLOCK_HEIGHT = 6;
10
+
11
+ const Spacer = () => (
12
+ <div
13
+ className={css`
14
+ height: ${PADDING_BLOCK_HEIGHT}px;
15
+ `}
16
+ />
17
+ );
18
+
19
+ const components = {
20
+ Footer: Spacer,
21
+ Header: Spacer,
22
+ };
7
23
 
8
24
  const OPTION_HEIGHT = layout.menuItemHeight;
9
25
  // this code is logic stolen from windowed-select SCROLL_INTO_VIEW_CHECK_FIX prevents list scrolling when focusing
@@ -128,7 +144,7 @@ export function MenuListVirtualized<
128
144
  }
129
145
  }
130
146
  }, [flattenChildren, initialFocusedOption, select]);
131
- const menuHeight = Math.min(flattenChildren.length * layout.menuItemHeight, maxHeight);
147
+ const menuHeight = Math.min(flattenChildren.length * layout.menuItemHeight + PADDING_BLOCK_HEIGHT * 2, maxHeight);
132
148
  //scrolling to focused option
133
149
  useEffect(() => {
134
150
  let to: number | undefined;
@@ -171,6 +187,7 @@ export function MenuListVirtualized<
171
187
  window.clearTimeout(to);
172
188
  };
173
189
  }, [focusedOption, flattenChildren, menuHeight, initialFocusedOption, virtuoso]);
190
+
174
191
  return (
175
192
  // Needed for correct display inside portals and etc.
176
193
  <div style={getStyles("menuList", props) as CSSProperties}>
@@ -183,6 +200,7 @@ export function MenuListVirtualized<
183
200
  data={flattenChildren}
184
201
  totalCount={flattenChildren.length}
185
202
  itemContent={drawListElement}
203
+ components={components}
186
204
  />
187
205
  </div>
188
206
  );
@@ -1,8 +1,8 @@
1
- import {GroupBase} from "../index";
2
- import {CSSObjectWithLabel, MenuProps, components} from "react-select";
3
- import cn from "classnames";
4
1
  import {css} from "@linaria/core";
5
- import {border, space, themeVars} from "../../design-system";
2
+ import cn from "classnames";
3
+ import {CSSObjectWithLabel, MenuProps, components} from "react-select";
4
+ import {border, themeVars} from "../../design-system";
5
+ import {GroupBase} from "../index";
6
6
 
7
7
  export const MenuListNulledStyles: CSSObjectWithLabel = {
8
8
  paddingTop: "",
@@ -21,10 +21,9 @@ const MenuRootClass = css`
21
21
  background-color: ${themeVars.colorBgSelectMenu};
22
22
  box-shadow: ${themeVars.shadowSelectMenu};
23
23
  border-radius: ${border.radius6}px;
24
- padding-top: ${space.s6}px;
25
- padding-bottom: ${space.s6}px;
26
24
  overflow: hidden;
27
25
  `;
26
+
28
27
  export function Menu<Option, IsMulti extends boolean = false, Group extends GroupBase<Option> = GroupBase<Option>>(
29
28
  props: MenuProps<Option, IsMulti, Group>
30
29
  ) {