@a-type/ui 1.4.1 → 1.5.1
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/cjs/components/actions/ActionButton.js +1 -1
- package/dist/cjs/components/actions/ActionButton.js.map +1 -1
- package/dist/cjs/components/avatar/Avatar.js +3 -3
- package/dist/cjs/components/avatar/Avatar.js.map +1 -1
- package/dist/cjs/components/box/Box.d.ts +13 -7
- package/dist/cjs/components/box/Box.js +39 -4
- package/dist/cjs/components/box/Box.js.map +1 -1
- package/dist/cjs/components/box/Box.stories.d.ts +3 -0
- package/dist/cjs/components/box/Box.stories.js +3 -0
- package/dist/cjs/components/box/Box.stories.js.map +1 -1
- package/dist/cjs/components/button/classes.d.ts +11 -0
- package/dist/cjs/components/button/classes.js +7 -5
- package/dist/cjs/components/button/classes.js.map +1 -1
- package/dist/cjs/components/camera/Camera.js +1 -1
- package/dist/cjs/components/camera/Camera.js.map +1 -1
- package/dist/cjs/components/card/Card.d.ts +2 -2
- package/dist/cjs/components/card/Card.js +4 -4
- package/dist/cjs/components/card/Card.js.map +1 -1
- package/dist/cjs/components/checkbox/Checkbox.js +1 -1
- package/dist/cjs/components/checkbox/Checkbox.js.map +1 -1
- package/dist/cjs/components/chip/Chip.js +1 -1
- package/dist/cjs/components/chip/Chip.js.map +1 -1
- package/dist/cjs/components/datePicker/DatePicker.js +1 -1
- package/dist/cjs/components/datePicker/DatePicker.js.map +1 -1
- package/dist/cjs/components/dialog/Dialog.js +1 -1
- package/dist/cjs/components/dialog/Dialog.js.map +1 -1
- package/dist/cjs/components/dropdownMenu/DropdownMenu.js +2 -2
- package/dist/cjs/components/dropdownMenu/DropdownMenu.js.map +1 -1
- package/dist/cjs/components/imageUploader/ImageUploader.js +1 -1
- package/dist/cjs/components/imageUploader/ImageUploader.js.map +1 -1
- package/dist/cjs/components/input/Input.js +1 -1
- package/dist/cjs/components/input/Input.js.map +1 -1
- package/dist/cjs/components/navBar/NavBar.js +3 -3
- package/dist/cjs/components/navBar/NavBar.js.map +1 -1
- package/dist/cjs/components/note/Note.js +1 -1
- package/dist/cjs/components/note/Note.js.map +1 -1
- package/dist/cjs/components/numberStepper/NumberStepper.js +1 -1
- package/dist/cjs/components/numberStepper/NumberStepper.js.map +1 -1
- package/dist/cjs/components/popover/Popover.js +1 -1
- package/dist/cjs/components/popover/Popover.js.map +1 -1
- package/dist/cjs/components/progress/Progress.js +2 -2
- package/dist/cjs/components/progress/Progress.js.map +1 -1
- package/dist/cjs/components/select/Select.js +2 -2
- package/dist/cjs/components/select/Select.js.map +1 -1
- package/dist/cjs/components/skeletons/skeletons.js +2 -2
- package/dist/cjs/components/skeletons/skeletons.js.map +1 -1
- package/dist/cjs/components/slider/Slider.js +3 -3
- package/dist/cjs/components/slider/Slider.js.map +1 -1
- package/dist/cjs/components/switch/Switch.js +2 -2
- package/dist/cjs/components/switch/Switch.js.map +1 -1
- package/dist/cjs/components/tabs/tabs.d.ts +6 -2
- package/dist/cjs/components/tabs/tabs.js +27 -2
- package/dist/cjs/components/tabs/tabs.js.map +1 -1
- package/dist/cjs/components/tabs/tabs.stories.d.ts +8 -3
- package/dist/cjs/components/tabs/tabs.stories.js +9 -4
- package/dist/cjs/components/tabs/tabs.stories.js.map +1 -1
- package/dist/cjs/components/textArea/TextArea.js +1 -1
- package/dist/cjs/components/textArea/TextArea.js.map +1 -1
- package/dist/cjs/components/tooltip/Tooltip.js +1 -1
- package/dist/cjs/hooks/index.d.ts +5 -4
- package/dist/cjs/hooks/index.js +5 -4
- package/dist/cjs/hooks/index.js.map +1 -1
- package/dist/cjs/hooks/withProps.d.ts +2 -0
- package/dist/cjs/hooks/withProps.js +12 -0
- package/dist/cjs/hooks/withProps.js.map +1 -0
- package/dist/cjs/themes.stories.js +8 -5
- package/dist/cjs/themes.stories.js.map +1 -1
- package/dist/cjs/uno.preset.d.ts +4 -2
- package/dist/cjs/uno.preset.js +26 -7
- package/dist/cjs/uno.preset.js.map +1 -1
- package/dist/css/main.css +2 -2
- package/dist/esm/components/actions/ActionButton.js +1 -1
- package/dist/esm/components/actions/ActionButton.js.map +1 -1
- package/dist/esm/components/avatar/Avatar.js +3 -3
- package/dist/esm/components/avatar/Avatar.js.map +1 -1
- package/dist/esm/components/box/Box.d.ts +13 -7
- package/dist/esm/components/box/Box.js +39 -4
- package/dist/esm/components/box/Box.js.map +1 -1
- package/dist/esm/components/box/Box.stories.d.ts +3 -0
- package/dist/esm/components/box/Box.stories.js +3 -0
- package/dist/esm/components/box/Box.stories.js.map +1 -1
- package/dist/esm/components/button/classes.d.ts +11 -0
- package/dist/esm/components/button/classes.js +6 -5
- package/dist/esm/components/button/classes.js.map +1 -1
- package/dist/esm/components/camera/Camera.js +1 -1
- package/dist/esm/components/camera/Camera.js.map +1 -1
- package/dist/esm/components/card/Card.d.ts +2 -2
- package/dist/esm/components/card/Card.js +4 -4
- package/dist/esm/components/card/Card.js.map +1 -1
- package/dist/esm/components/checkbox/Checkbox.js +1 -1
- package/dist/esm/components/checkbox/Checkbox.js.map +1 -1
- package/dist/esm/components/chip/Chip.js +1 -1
- package/dist/esm/components/chip/Chip.js.map +1 -1
- package/dist/esm/components/datePicker/DatePicker.js +1 -1
- package/dist/esm/components/datePicker/DatePicker.js.map +1 -1
- package/dist/esm/components/dialog/Dialog.js +1 -1
- package/dist/esm/components/dialog/Dialog.js.map +1 -1
- package/dist/esm/components/dropdownMenu/DropdownMenu.js +2 -2
- package/dist/esm/components/dropdownMenu/DropdownMenu.js.map +1 -1
- package/dist/esm/components/imageUploader/ImageUploader.js +1 -1
- package/dist/esm/components/imageUploader/ImageUploader.js.map +1 -1
- package/dist/esm/components/input/Input.js +1 -1
- package/dist/esm/components/input/Input.js.map +1 -1
- package/dist/esm/components/navBar/NavBar.js +3 -3
- package/dist/esm/components/navBar/NavBar.js.map +1 -1
- package/dist/esm/components/note/Note.js +1 -1
- package/dist/esm/components/note/Note.js.map +1 -1
- package/dist/esm/components/numberStepper/NumberStepper.js +1 -1
- package/dist/esm/components/numberStepper/NumberStepper.js.map +1 -1
- package/dist/esm/components/popover/Popover.js +1 -1
- package/dist/esm/components/popover/Popover.js.map +1 -1
- package/dist/esm/components/progress/Progress.js +2 -2
- package/dist/esm/components/progress/Progress.js.map +1 -1
- package/dist/esm/components/select/Select.js +2 -2
- package/dist/esm/components/select/Select.js.map +1 -1
- package/dist/esm/components/skeletons/skeletons.js +2 -2
- package/dist/esm/components/skeletons/skeletons.js.map +1 -1
- package/dist/esm/components/slider/Slider.js +3 -3
- package/dist/esm/components/slider/Slider.js.map +1 -1
- package/dist/esm/components/switch/Switch.js +2 -2
- package/dist/esm/components/switch/Switch.js.map +1 -1
- package/dist/esm/components/tabs/tabs.d.ts +6 -2
- package/dist/esm/components/tabs/tabs.js +22 -1
- package/dist/esm/components/tabs/tabs.js.map +1 -1
- package/dist/esm/components/tabs/tabs.stories.d.ts +8 -3
- package/dist/esm/components/tabs/tabs.stories.js +9 -4
- package/dist/esm/components/tabs/tabs.stories.js.map +1 -1
- package/dist/esm/components/textArea/TextArea.js +1 -1
- package/dist/esm/components/textArea/TextArea.js.map +1 -1
- package/dist/esm/components/tooltip/Tooltip.js +1 -1
- package/dist/esm/hooks/index.d.ts +5 -4
- package/dist/esm/hooks/index.js +5 -4
- package/dist/esm/hooks/index.js.map +1 -1
- package/dist/esm/hooks/withProps.d.ts +2 -0
- package/dist/esm/hooks/withProps.js +8 -0
- package/dist/esm/hooks/withProps.js.map +1 -0
- package/dist/esm/themes.stories.js +4 -1
- package/dist/esm/themes.stories.js.map +1 -1
- package/dist/esm/uno.preset.d.ts +4 -2
- package/dist/esm/uno.preset.js +26 -7
- package/dist/esm/uno.preset.js.map +1 -1
- package/package.json +1 -1
- package/src/components/actions/ActionButton.tsx +1 -2
- package/src/components/avatar/Avatar.tsx +3 -3
- package/src/components/box/Box.stories.tsx +3 -0
- package/src/components/box/Box.tsx +70 -11
- package/src/components/button/classes.tsx +6 -5
- package/src/components/camera/Camera.tsx +1 -1
- package/src/components/card/Card.tsx +4 -4
- package/src/components/checkbox/Checkbox.tsx +1 -1
- package/src/components/chip/Chip.tsx +1 -1
- package/src/components/datePicker/DatePicker.tsx +1 -1
- package/src/components/dialog/Dialog.tsx +2 -2
- package/src/components/dropdownMenu/DropdownMenu.tsx +2 -2
- package/src/components/imageUploader/ImageUploader.tsx +1 -1
- package/src/components/input/Input.tsx +1 -1
- package/src/components/navBar/NavBar.tsx +4 -4
- package/src/components/note/Note.tsx +2 -2
- package/src/components/numberStepper/NumberStepper.tsx +1 -1
- package/src/components/popover/Popover.tsx +1 -1
- package/src/components/progress/Progress.tsx +2 -2
- package/src/components/select/Select.tsx +2 -2
- package/src/components/skeletons/skeletons.tsx +2 -2
- package/src/components/slider/Slider.tsx +3 -3
- package/src/components/switch/Switch.tsx +2 -2
- package/src/components/tabs/tabs.stories.tsx +18 -7
- package/src/components/tabs/tabs.tsx +29 -3
- package/src/components/textArea/TextArea.tsx +1 -1
- package/src/components/tooltip/Tooltip.tsx +1 -1
- package/src/hooks/index.ts +5 -4
- package/src/hooks/withProps.tsx +10 -0
- package/src/themes.stories.tsx +44 -0
- package/src/uno.preset.ts +31 -7
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import * as TabsPrimitive from '@radix-ui/react-tabs';
|
|
2
|
+
import clsx from 'clsx';
|
|
2
3
|
import { withClassName } from '../../hooks/withClassName.js';
|
|
3
4
|
|
|
4
5
|
export const TabsRoot = withClassName(TabsPrimitive.Root, '');
|
|
@@ -8,10 +9,35 @@ export const TabsList = withClassName(
|
|
|
8
9
|
'flex flex-row flex-wrap py-2 px-2 items-start gap-2',
|
|
9
10
|
);
|
|
10
11
|
|
|
11
|
-
export const
|
|
12
|
+
export const TabsTriggerBase = withClassName(
|
|
12
13
|
TabsPrimitive.Trigger,
|
|
13
|
-
'layer-components:(flex flex-row items-center justify-center gap-2 color-black py-1 px-5 bg-wash text-md min-w-100px rounded-
|
|
14
|
-
'hover:bg-
|
|
14
|
+
'layer-components:(flex flex-row items-center justify-center gap-2 color-black py-1 px-5 bg-wash text-md min-w-100px rounded-lg border-default font-semibold text-gray-8 border-gray-8 transition-colors cursor-pointer select-none font-sans flex-shrink-0 shadow-sm)',
|
|
15
|
+
'layer-components:hover:bg-[var(--hover)]',
|
|
16
|
+
'layer-components:focus-visible:(focus-ring focus-ring-[var(--focus)] outline-off)',
|
|
17
|
+
'[&[data-state=active]]:(font-semibold bg-[var(--focus,var(--hover))] text-black cursor-default hover:bg-[var(--hover)] relative z-1)',
|
|
18
|
+
);
|
|
19
|
+
|
|
20
|
+
const colorClasses = {
|
|
21
|
+
default:
|
|
22
|
+
'layer-variants:([--bg:var(--color-white)] [--hover:var(--color-gray-3)] [--focus:var(--color-gray-4)] [--active:var(--color-gray-4)])',
|
|
23
|
+
primary:
|
|
24
|
+
'layer-variants:([--bg:var(--color-primary-light)] [--hover:var(--color-primary)] [--focus:var(--color-primary)] [--active:var(--color-primary)])',
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
export interface TabsTriggerProps
|
|
28
|
+
extends Omit<TabsPrimitive.TabsTriggerProps, 'color'> {
|
|
29
|
+
color?: 'default' | 'primary';
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
export const TabsTrigger = ({
|
|
33
|
+
className,
|
|
34
|
+
color = 'primary',
|
|
35
|
+
...props
|
|
36
|
+
}: TabsTriggerProps) => (
|
|
37
|
+
<TabsTriggerBase
|
|
38
|
+
className={clsx(colorClasses[color], `btn-color-${color}`, className)}
|
|
39
|
+
{...props}
|
|
40
|
+
/>
|
|
15
41
|
);
|
|
16
42
|
|
|
17
43
|
export const TabsContent = withClassName(TabsPrimitive.Content, '');
|
|
@@ -97,7 +97,7 @@ export const TextArea = function TextArea({
|
|
|
97
97
|
className={classNames(
|
|
98
98
|
inputClassName,
|
|
99
99
|
'layer-components:([font-family:inherit] text-inherit overflow-hidden resize-none)',
|
|
100
|
-
'layer-variants:(rounded-
|
|
100
|
+
'layer-variants:(rounded-lg px-4 py-4)',
|
|
101
101
|
{
|
|
102
102
|
'layer-components:[resize:vertical]': !autoSize,
|
|
103
103
|
'layer-components:[resize:none]': autoSize,
|
|
@@ -12,7 +12,7 @@ function Content({
|
|
|
12
12
|
<TooltipPrimitive.Portal>
|
|
13
13
|
<TooltipPrimitive.Content
|
|
14
14
|
className={classNames(
|
|
15
|
-
'layer-components:(relative rounded-
|
|
15
|
+
'layer-components:(relative rounded-sm py-2 px-3 bg-black text-white text-sm leading-tight shadow-sm select-none hidden z-tooltip sm:display-initial)',
|
|
16
16
|
'[&[data-state=delayed-open]]:display-initial',
|
|
17
17
|
'[&[data-state=instant-open]]:display-initial',
|
|
18
18
|
'layer-components:transform-origin-[var(--radix-tooltip-content-transform-origin)]',
|
package/src/hooks/index.ts
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
|
+
export * from './useAnimationFrame.js';
|
|
2
|
+
export * from './useLongPress.js';
|
|
1
3
|
export * from './useMergedRef.js';
|
|
4
|
+
export * from './useOnUnmount.js';
|
|
2
5
|
export * from './useSize.js';
|
|
3
6
|
export * from './useStableCallback.js';
|
|
7
|
+
export * from './useTitleBarColor.js';
|
|
4
8
|
export * from './useToggle.js';
|
|
5
9
|
export * from './useVisualViewportOffset.js';
|
|
6
|
-
export * from './useOnUnmount.js';
|
|
7
10
|
export * from './withClassName.js';
|
|
8
|
-
export * from './
|
|
9
|
-
export * from './useLongPress.js';
|
|
10
|
-
export * from './useTitleBarColor.js';
|
|
11
|
+
export * from './withProps.js';
|
package/src/themes.stories.tsx
CHANGED
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import type { Meta, StoryObj } from '@storybook/react';
|
|
2
2
|
import clsx from 'clsx';
|
|
3
|
+
import { ActionBar, ActionButton } from './components/actions/index.js';
|
|
3
4
|
import { Button } from './components/button/index.js';
|
|
4
5
|
import { Card } from './components/card/index.js';
|
|
6
|
+
import { Icon } from './components/icon/index.js';
|
|
7
|
+
import { AvatarList, Dialog, Tooltip } from './components/index.js';
|
|
5
8
|
import { Input } from './components/input/index.js';
|
|
6
9
|
import { Tabs } from './components/tabs/tabs.js';
|
|
7
10
|
import { TextArea } from './components/textArea/index.js';
|
|
@@ -25,6 +28,9 @@ function DemoUI({ className }: { className?: string }) {
|
|
|
25
28
|
<Button color="primary">Primary</Button>
|
|
26
29
|
<Button color="accent">Accent</Button>
|
|
27
30
|
<Button>Default</Button>
|
|
31
|
+
<Button color="contrast">Contrast</Button>
|
|
32
|
+
<Button color="ghost">Ghost</Button>
|
|
33
|
+
<Button color="ghostAccent">Ghost Accent</Button>
|
|
28
34
|
<Button size="small" color="destructive">
|
|
29
35
|
Destructive
|
|
30
36
|
</Button>
|
|
@@ -59,6 +65,44 @@ function DemoUI({ className }: { className?: string }) {
|
|
|
59
65
|
<Tabs.Content value="tab2">Tab 2 Content</Tabs.Content>
|
|
60
66
|
</Tabs>
|
|
61
67
|
</div>
|
|
68
|
+
<div>
|
|
69
|
+
<ActionBar>
|
|
70
|
+
<ActionButton>
|
|
71
|
+
<Icon name="placeholder" />
|
|
72
|
+
Hello
|
|
73
|
+
</ActionButton>
|
|
74
|
+
<ActionButton color="primary">
|
|
75
|
+
<Icon name="placeholder" />
|
|
76
|
+
World
|
|
77
|
+
</ActionButton>
|
|
78
|
+
</ActionBar>
|
|
79
|
+
</div>
|
|
80
|
+
<div>
|
|
81
|
+
<AvatarList count={3}>
|
|
82
|
+
<AvatarList.Item index={0} name="John Doe" />
|
|
83
|
+
<AvatarList.Item index={1} name="Jane Doe" />
|
|
84
|
+
<AvatarList.Item index={2} name="John Smith" />
|
|
85
|
+
</AvatarList>
|
|
86
|
+
</div>
|
|
87
|
+
<div>
|
|
88
|
+
<Tooltip content="Hello World">
|
|
89
|
+
<Button>Hover me</Button>
|
|
90
|
+
</Tooltip>
|
|
91
|
+
</div>
|
|
92
|
+
<div>
|
|
93
|
+
<Dialog>
|
|
94
|
+
<Dialog.Trigger asChild>
|
|
95
|
+
<Button>Click</Button>
|
|
96
|
+
</Dialog.Trigger>
|
|
97
|
+
<Dialog.Content>
|
|
98
|
+
<Dialog.Title>Hello there</Dialog.Title>
|
|
99
|
+
<Dialog.Description>Im a dialog</Dialog.Description>
|
|
100
|
+
<Dialog.Actions>
|
|
101
|
+
<Dialog.Close>Close</Dialog.Close>
|
|
102
|
+
</Dialog.Actions>
|
|
103
|
+
</Dialog.Content>
|
|
104
|
+
</Dialog>
|
|
105
|
+
</div>
|
|
62
106
|
</div>
|
|
63
107
|
);
|
|
64
108
|
}
|
package/src/uno.preset.ts
CHANGED
|
@@ -1,21 +1,38 @@
|
|
|
1
1
|
import { entriesToCss, toArray } from '@unocss/core';
|
|
2
2
|
import { PreflightContext, Preset, presetUno } from 'unocss';
|
|
3
3
|
|
|
4
|
+
const spacing = {
|
|
5
|
+
sm: 0.125,
|
|
6
|
+
md: 0.25,
|
|
7
|
+
lg: 0.33333,
|
|
8
|
+
};
|
|
9
|
+
const roundedScaling = {
|
|
10
|
+
sm: 1,
|
|
11
|
+
md: 1,
|
|
12
|
+
lg: 1.25,
|
|
13
|
+
};
|
|
14
|
+
|
|
4
15
|
export default function presetAglio({
|
|
5
|
-
|
|
16
|
+
scale = 'md',
|
|
6
17
|
interFontLocation = 'https://resources.biscuits.club/fonts/Inter-VariableFont_slnt,wght.ttf',
|
|
7
18
|
colorRanges = {
|
|
8
19
|
light: [90, 40],
|
|
9
20
|
dark: [0, 60],
|
|
10
21
|
},
|
|
22
|
+
borderScale = 1,
|
|
23
|
+
roundedness = 1,
|
|
11
24
|
}: {
|
|
12
|
-
|
|
25
|
+
scale?: 'sm' | 'md' | 'lg';
|
|
13
26
|
interFontLocation?: string;
|
|
14
27
|
colorRanges?: {
|
|
15
28
|
light: [number, number];
|
|
16
29
|
dark: [number, number];
|
|
17
30
|
};
|
|
31
|
+
borderScale?: number;
|
|
32
|
+
roundedness?: number;
|
|
18
33
|
} = {}): Preset {
|
|
34
|
+
const spacingIncrement = spacing[scale];
|
|
35
|
+
roundedness *= roundedScaling[scale];
|
|
19
36
|
const lightColors = generateColors(...colorRanges.light);
|
|
20
37
|
const darkColors = generateColors(...colorRanges.dark);
|
|
21
38
|
|
|
@@ -93,10 +110,17 @@ export default function presetAglio({
|
|
|
93
110
|
},
|
|
94
111
|
spacing: makeSpacing(spacingIncrement),
|
|
95
112
|
borderRadius: {
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
113
|
+
xs: `${0.25 * roundedness}rem`,
|
|
114
|
+
sm: `${0.5 * roundedness}rem`,
|
|
115
|
+
md: `${roundedness}rem`,
|
|
116
|
+
lg: `${roundedness * 1.25}rem`,
|
|
117
|
+
xl: `${roundedness * 1.5}rem`,
|
|
118
|
+
full: roundedness === 0 ? '0px' : '9999px',
|
|
119
|
+
},
|
|
120
|
+
lineWidth: {
|
|
121
|
+
DEFAULT: `${borderScale}px`,
|
|
122
|
+
none: '0',
|
|
123
|
+
thick: `${2 * borderScale}px`,
|
|
100
124
|
},
|
|
101
125
|
width: {
|
|
102
126
|
content: '700px',
|
|
@@ -380,7 +404,7 @@ export default function presetAglio({
|
|
|
380
404
|
],
|
|
381
405
|
|
|
382
406
|
shortcuts: {
|
|
383
|
-
'border-default': 'border border-
|
|
407
|
+
'border-default': 'border border-solid border-black',
|
|
384
408
|
'border-light': 'border border-solid border-gray5',
|
|
385
409
|
'flex-1-0-0': 'flex-grow-1 flex-shrink-0 flex-basis-0',
|
|
386
410
|
'flex-0-0-auto': 'flex-grow-0 flex-shrink-0 flex-basis-auto',
|