@k8o/arte-odyssey 3.0.0 → 3.1.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.
- package/dist/components/card/card.js +6 -3
- package/dist/components/card/card.stories.js +7 -0
- package/dist/components/card/interactive-card.js +6 -3
- package/dist/components/card/type.d.ts +1 -0
- package/dist/components/drawer/drawer.d.ts +3 -2
- package/dist/components/drawer/drawer.js +25 -15
- package/dist/components/icons/index.d.ts +1 -1
- package/dist/components/icons/index.js +10 -0
- package/dist/components/icons/lucide.d.ts +5 -0
- package/dist/components/icons/lucide.js +65 -0
- package/dist/components/modal/modal.d.ts +1 -1
- package/dist/components/modal/modal.js +21 -2
- package/dist/styles/index.css +31 -0
- package/package.json +60 -12
|
@@ -3,12 +3,15 @@ import { cn } from "./../../helpers/cn";
|
|
|
3
3
|
const Card = ({
|
|
4
4
|
children,
|
|
5
5
|
variant = "primary",
|
|
6
|
-
width = "full"
|
|
6
|
+
width = "full",
|
|
7
|
+
appearance = "shadow"
|
|
7
8
|
}) => /* @__PURE__ */ jsx(
|
|
8
|
-
"
|
|
9
|
+
"div",
|
|
9
10
|
{
|
|
10
11
|
className: cn(
|
|
11
|
-
"rounded-lg
|
|
12
|
+
"rounded-lg",
|
|
13
|
+
appearance === "shadow" && "shadow-sm",
|
|
14
|
+
appearance === "bordered" && "border border-border-mute",
|
|
12
15
|
width === "full" && "w-full",
|
|
13
16
|
width === "fit" && "w-fit",
|
|
14
17
|
variant === "primary" && "bg-bg-base",
|
|
@@ -33,10 +33,17 @@ const Interactive = {
|
|
|
33
33
|
] }) })
|
|
34
34
|
] })
|
|
35
35
|
};
|
|
36
|
+
const Bordered = {
|
|
37
|
+
render: () => /* @__PURE__ */ jsx(Card, { appearance: "bordered", children: /* @__PURE__ */ jsxs("div", { className: "p-4", children: [
|
|
38
|
+
/* @__PURE__ */ jsx("h3", { className: "font-bold text-lg", children: "\u30DC\u30FC\u30C0\u30FC\u30B9\u30BF\u30A4\u30EB" }),
|
|
39
|
+
/* @__PURE__ */ jsx("p", { className: "mt-2 text-fg-mute", children: "\u30B7\u30E3\u30C9\u30A6\u306E\u4EE3\u308F\u308A\u306B\u30DC\u30FC\u30C0\u30FC\u3067\u533A\u5207\u308B\u30B9\u30BF\u30A4\u30EB\u3067\u3059\u3002" })
|
|
40
|
+
] }) })
|
|
41
|
+
};
|
|
36
42
|
const FitWidth = {
|
|
37
43
|
render: () => /* @__PURE__ */ jsx(Card, { width: "fit", children: /* @__PURE__ */ jsx("div", { className: "p-4", children: /* @__PURE__ */ jsx("p", { children: "\u5E45\u304C\u30B3\u30F3\u30C6\u30F3\u30C4\u306B\u5408\u308F\u305B\u3066\u8ABF\u6574\u3055\u308C\u307E\u3059\u3002" }) }) })
|
|
38
44
|
};
|
|
39
45
|
export {
|
|
46
|
+
Bordered,
|
|
40
47
|
FitWidth,
|
|
41
48
|
Interactive,
|
|
42
49
|
Primary,
|
|
@@ -3,12 +3,15 @@ import { cn } from "./../../helpers/cn";
|
|
|
3
3
|
const InteractiveCard = ({
|
|
4
4
|
children,
|
|
5
5
|
variant = "primary",
|
|
6
|
-
width = "full"
|
|
6
|
+
width = "full",
|
|
7
|
+
appearance = "shadow"
|
|
7
8
|
}) => /* @__PURE__ */ jsx(
|
|
8
|
-
"
|
|
9
|
+
"div",
|
|
9
10
|
{
|
|
10
11
|
className: cn(
|
|
11
|
-
"rounded-lg
|
|
12
|
+
"rounded-lg transition-transform hover:scale-[1.02] active:scale-[0.98]",
|
|
13
|
+
appearance === "shadow" && "shadow-sm",
|
|
14
|
+
appearance === "bordered" && "border border-border-mute",
|
|
12
15
|
width === "full" && "w-full",
|
|
13
16
|
width === "fit" && "w-fit",
|
|
14
17
|
variant === "primary" && "bg-bg-base",
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { type FC, type PropsWithChildren } from 'react';
|
|
1
|
+
import { type FC, type PropsWithChildren, type ReactNode } from 'react';
|
|
2
2
|
export declare const Drawer: FC<PropsWithChildren<{
|
|
3
|
-
title:
|
|
3
|
+
title: ReactNode;
|
|
4
4
|
isOpen: boolean;
|
|
5
5
|
onClose: () => void;
|
|
6
|
+
side?: 'left' | 'right';
|
|
6
7
|
}>>;
|
|
@@ -1,45 +1,55 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
3
|
import { useId } from "react";
|
|
4
|
+
import { cn } from "../../helpers/cn";
|
|
4
5
|
import { Heading } from "../heading";
|
|
5
6
|
import { IconButton } from "../icon-button";
|
|
6
7
|
import { CloseIcon } from "../icons";
|
|
7
8
|
import { Modal } from "../modal";
|
|
8
|
-
const Drawer = ({ title, isOpen, onClose, children }) => {
|
|
9
|
+
const Drawer = ({ title, isOpen, onClose, side = "right", children }) => {
|
|
9
10
|
const rootId = useId();
|
|
10
|
-
return /* @__PURE__ */ jsx(Modal, { isOpen, onClose, type:
|
|
11
|
+
return /* @__PURE__ */ jsx(Modal, { isOpen, onClose, type: side, children: /* @__PURE__ */ jsxs(
|
|
11
12
|
"section",
|
|
12
13
|
{
|
|
13
14
|
"aria-describedby": `${rootId}-content`,
|
|
14
15
|
"aria-labelledby": `${rootId}-header`,
|
|
15
|
-
className: "
|
|
16
|
+
className: "flex h-full flex-col",
|
|
16
17
|
id: rootId,
|
|
17
18
|
children: [
|
|
18
19
|
/* @__PURE__ */ jsxs(
|
|
19
20
|
"div",
|
|
20
21
|
{
|
|
21
|
-
className: "flex items-center justify-center p-4 pb-2",
|
|
22
|
+
className: "flex shrink-0 items-center justify-center p-4 pb-2",
|
|
22
23
|
id: `${rootId}-header`,
|
|
23
24
|
children: [
|
|
24
|
-
/* @__PURE__ */ jsx(Heading, { type: "h3", children: title }),
|
|
25
|
-
/* @__PURE__ */ jsx(
|
|
26
|
-
|
|
25
|
+
typeof title === "string" ? /* @__PURE__ */ jsx(Heading, { type: "h3", children: title }) : title,
|
|
26
|
+
/* @__PURE__ */ jsx(
|
|
27
|
+
"div",
|
|
27
28
|
{
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
29
|
+
className: cn(
|
|
30
|
+
"absolute top-2",
|
|
31
|
+
side === "left" ? "left-2" : "right-2"
|
|
32
|
+
),
|
|
33
|
+
children: /* @__PURE__ */ jsx(
|
|
34
|
+
IconButton,
|
|
35
|
+
{
|
|
36
|
+
label: "\u9589\u3058\u308B",
|
|
37
|
+
onClick: (e) => {
|
|
38
|
+
e.stopPropagation();
|
|
39
|
+
onClose();
|
|
40
|
+
},
|
|
41
|
+
children: /* @__PURE__ */ jsx(CloseIcon, { size: "sm" })
|
|
42
|
+
}
|
|
43
|
+
)
|
|
34
44
|
}
|
|
35
|
-
)
|
|
45
|
+
)
|
|
36
46
|
]
|
|
37
47
|
}
|
|
38
48
|
),
|
|
39
49
|
/* @__PURE__ */ jsx(
|
|
40
50
|
"div",
|
|
41
51
|
{
|
|
42
|
-
className: "p-4",
|
|
52
|
+
className: "flex-1 overflow-y-auto overscroll-contain p-4",
|
|
43
53
|
id: `${rootId}-content`,
|
|
44
54
|
onClick: (e) => {
|
|
45
55
|
e.stopPropagation();
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { ArteOdyssey } from './arte-odyssey';
|
|
2
2
|
export { GitHubIcon } from './github-mark';
|
|
3
3
|
export { Logo, LogoIcon } from './logo';
|
|
4
|
-
export { AIIcon, AlertIcon, BadIcon, BlogIcon, BoringIcon, CheckIcon, ChevronIcon, CloseIcon, ColorContrastIcon, ColorInfoIcon, CopyIcon, DarkModeIcon, DifficultIcon, EasyIcon, ExternalLinkIcon, FormIcon, GoodIcon, HistoryIcon, InformativeIcon, InterestingIcon, LightModeIcon, LinkIcon, ListIcon, LocationIcon, MailIcon, MinusIcon, MixedColorIcon, NavigationMenuIcon, NewsIcon, PlusIcon, PrepareIcon, PublishDateIcon, RSSIcon, SendIcon, ShallowIcon, SlideIcon, SubscribeIcon, TableIcon, TagIcon, UpdateDateIcon, ViewIcon, } from './lucide';
|
|
4
|
+
export { AccessibilityIcon, AIIcon, AlertIcon, AtomIcon, BadIcon, BlogIcon, BoringIcon, CheckIcon, ChevronIcon, CloseIcon, ColorContrastIcon, ColorInfoIcon, CopyIcon, DarkModeIcon, DifficultIcon, EasyIcon, ExternalLinkIcon, FormIcon, GoodIcon, HistoryIcon, InformativeIcon, InterestingIcon, LightModeIcon, LinkIcon, ListIcon, LocationIcon, MailIcon, MinusIcon, MixedColorIcon, NavigationMenuIcon, NewsIcon, PaletteIcon, PlusIcon, PrepareIcon, PublishDateIcon, RSSIcon, SendIcon, ShallowIcon, ShieldCheckIcon, SlideIcon, SparklesIcon, SubscribeIcon, TableIcon, TagIcon, UpdateDateIcon, ViewIcon, } from './lucide';
|
|
5
5
|
export { QiitaIcon } from './qiita';
|
|
6
6
|
export { TwitterIcon } from './twitter';
|
|
@@ -2,8 +2,10 @@ import { ArteOdyssey } from "./arte-odyssey";
|
|
|
2
2
|
import { GitHubIcon } from "./github-mark";
|
|
3
3
|
import { Logo, LogoIcon } from "./logo";
|
|
4
4
|
import {
|
|
5
|
+
AccessibilityIcon,
|
|
5
6
|
AIIcon,
|
|
6
7
|
AlertIcon,
|
|
8
|
+
AtomIcon,
|
|
7
9
|
BadIcon,
|
|
8
10
|
BlogIcon,
|
|
9
11
|
BoringIcon,
|
|
@@ -31,13 +33,16 @@ import {
|
|
|
31
33
|
MixedColorIcon,
|
|
32
34
|
NavigationMenuIcon,
|
|
33
35
|
NewsIcon,
|
|
36
|
+
PaletteIcon,
|
|
34
37
|
PlusIcon,
|
|
35
38
|
PrepareIcon,
|
|
36
39
|
PublishDateIcon,
|
|
37
40
|
RSSIcon,
|
|
38
41
|
SendIcon,
|
|
39
42
|
ShallowIcon,
|
|
43
|
+
ShieldCheckIcon,
|
|
40
44
|
SlideIcon,
|
|
45
|
+
SparklesIcon,
|
|
41
46
|
SubscribeIcon,
|
|
42
47
|
TableIcon,
|
|
43
48
|
TagIcon,
|
|
@@ -48,8 +53,10 @@ import { QiitaIcon } from "./qiita";
|
|
|
48
53
|
import { TwitterIcon } from "./twitter";
|
|
49
54
|
export {
|
|
50
55
|
AIIcon,
|
|
56
|
+
AccessibilityIcon,
|
|
51
57
|
AlertIcon,
|
|
52
58
|
ArteOdyssey,
|
|
59
|
+
AtomIcon,
|
|
53
60
|
BadIcon,
|
|
54
61
|
BlogIcon,
|
|
55
62
|
BoringIcon,
|
|
@@ -80,6 +87,7 @@ export {
|
|
|
80
87
|
MixedColorIcon,
|
|
81
88
|
NavigationMenuIcon,
|
|
82
89
|
NewsIcon,
|
|
90
|
+
PaletteIcon,
|
|
83
91
|
PlusIcon,
|
|
84
92
|
PrepareIcon,
|
|
85
93
|
PublishDateIcon,
|
|
@@ -87,7 +95,9 @@ export {
|
|
|
87
95
|
RSSIcon,
|
|
88
96
|
SendIcon,
|
|
89
97
|
ShallowIcon,
|
|
98
|
+
ShieldCheckIcon,
|
|
90
99
|
SlideIcon,
|
|
100
|
+
SparklesIcon,
|
|
91
101
|
SubscribeIcon,
|
|
92
102
|
TableIcon,
|
|
93
103
|
TagIcon,
|
|
@@ -47,4 +47,9 @@ export declare const InformativeIcon: FC<IconProps>;
|
|
|
47
47
|
export declare const ShallowIcon: FC<IconProps>;
|
|
48
48
|
export declare const EasyIcon: FC<IconProps>;
|
|
49
49
|
export declare const DifficultIcon: FC<IconProps>;
|
|
50
|
+
export declare const AtomIcon: FC<IconProps>;
|
|
51
|
+
export declare const PaletteIcon: FC<IconProps>;
|
|
52
|
+
export declare const ShieldCheckIcon: FC<IconProps>;
|
|
53
|
+
export declare const AccessibilityIcon: FC<IconProps>;
|
|
54
|
+
export declare const SparklesIcon: FC<IconProps>;
|
|
50
55
|
export {};
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
2
|
import {
|
|
3
|
+
Accessibility,
|
|
3
4
|
AlignRight,
|
|
4
5
|
Angry,
|
|
5
6
|
Annoyed,
|
|
7
|
+
Atom,
|
|
6
8
|
Bell,
|
|
7
9
|
Blend,
|
|
8
10
|
Bookmark,
|
|
@@ -34,12 +36,15 @@ import {
|
|
|
34
36
|
Minus,
|
|
35
37
|
MoonStar,
|
|
36
38
|
PaintBucket,
|
|
39
|
+
Palette,
|
|
37
40
|
Plus,
|
|
38
41
|
Presentation,
|
|
39
42
|
Rocket,
|
|
40
43
|
Rss,
|
|
41
44
|
Send,
|
|
45
|
+
ShieldCheck,
|
|
42
46
|
Smile,
|
|
47
|
+
Sparkles,
|
|
43
48
|
Sun,
|
|
44
49
|
Table2,
|
|
45
50
|
Tag,
|
|
@@ -524,9 +529,66 @@ const DifficultIcon = ({ size = "md" }) => {
|
|
|
524
529
|
}
|
|
525
530
|
);
|
|
526
531
|
};
|
|
532
|
+
const AtomIcon = ({ size = "md" }) => {
|
|
533
|
+
return /* @__PURE__ */ jsx(
|
|
534
|
+
BaseIcon,
|
|
535
|
+
{
|
|
536
|
+
renderItem: (props) => {
|
|
537
|
+
return /* @__PURE__ */ jsx(Atom, { ...props });
|
|
538
|
+
},
|
|
539
|
+
size
|
|
540
|
+
}
|
|
541
|
+
);
|
|
542
|
+
};
|
|
543
|
+
const PaletteIcon = ({ size = "md" }) => {
|
|
544
|
+
return /* @__PURE__ */ jsx(
|
|
545
|
+
BaseIcon,
|
|
546
|
+
{
|
|
547
|
+
renderItem: (props) => {
|
|
548
|
+
return /* @__PURE__ */ jsx(Palette, { ...props });
|
|
549
|
+
},
|
|
550
|
+
size
|
|
551
|
+
}
|
|
552
|
+
);
|
|
553
|
+
};
|
|
554
|
+
const ShieldCheckIcon = ({ size = "md" }) => {
|
|
555
|
+
return /* @__PURE__ */ jsx(
|
|
556
|
+
BaseIcon,
|
|
557
|
+
{
|
|
558
|
+
renderItem: (props) => {
|
|
559
|
+
return /* @__PURE__ */ jsx(ShieldCheck, { ...props });
|
|
560
|
+
},
|
|
561
|
+
size
|
|
562
|
+
}
|
|
563
|
+
);
|
|
564
|
+
};
|
|
565
|
+
const AccessibilityIcon = ({ size = "md" }) => {
|
|
566
|
+
return /* @__PURE__ */ jsx(
|
|
567
|
+
BaseIcon,
|
|
568
|
+
{
|
|
569
|
+
renderItem: (props) => {
|
|
570
|
+
return /* @__PURE__ */ jsx(Accessibility, { ...props });
|
|
571
|
+
},
|
|
572
|
+
size
|
|
573
|
+
}
|
|
574
|
+
);
|
|
575
|
+
};
|
|
576
|
+
const SparklesIcon = ({ size = "md" }) => {
|
|
577
|
+
return /* @__PURE__ */ jsx(
|
|
578
|
+
BaseIcon,
|
|
579
|
+
{
|
|
580
|
+
renderItem: (props) => {
|
|
581
|
+
return /* @__PURE__ */ jsx(Sparkles, { ...props });
|
|
582
|
+
},
|
|
583
|
+
size
|
|
584
|
+
}
|
|
585
|
+
);
|
|
586
|
+
};
|
|
527
587
|
export {
|
|
528
588
|
AIIcon,
|
|
589
|
+
AccessibilityIcon,
|
|
529
590
|
AlertIcon,
|
|
591
|
+
AtomIcon,
|
|
530
592
|
BadIcon,
|
|
531
593
|
BlogIcon,
|
|
532
594
|
BoringIcon,
|
|
@@ -554,13 +616,16 @@ export {
|
|
|
554
616
|
MixedColorIcon,
|
|
555
617
|
NavigationMenuIcon,
|
|
556
618
|
NewsIcon,
|
|
619
|
+
PaletteIcon,
|
|
557
620
|
PlusIcon,
|
|
558
621
|
PrepareIcon,
|
|
559
622
|
PublishDateIcon,
|
|
560
623
|
RSSIcon,
|
|
561
624
|
SendIcon,
|
|
562
625
|
ShallowIcon,
|
|
626
|
+
ShieldCheckIcon,
|
|
563
627
|
SlideIcon,
|
|
628
|
+
SparklesIcon,
|
|
564
629
|
SubscribeIcon,
|
|
565
630
|
TableIcon,
|
|
566
631
|
TagIcon,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type FC, type PropsWithChildren, type RefObject } from 'react';
|
|
2
2
|
export declare const Modal: FC<PropsWithChildren<{
|
|
3
3
|
ref?: RefObject<HTMLDialogElement | null>;
|
|
4
|
-
type?: 'center' | 'bottom' | 'right';
|
|
4
|
+
type?: 'center' | 'bottom' | 'right' | 'left';
|
|
5
5
|
defaultOpen?: boolean;
|
|
6
6
|
isOpen?: boolean;
|
|
7
7
|
onClose?: () => void;
|
|
@@ -63,6 +63,24 @@ const rightVariants = {
|
|
|
63
63
|
}
|
|
64
64
|
}
|
|
65
65
|
};
|
|
66
|
+
const leftVariants = {
|
|
67
|
+
open: {
|
|
68
|
+
opacity: 1,
|
|
69
|
+
x: 0,
|
|
70
|
+
transition: {
|
|
71
|
+
duration: 0.3,
|
|
72
|
+
ease: [0.4, 0, 0.2, 1]
|
|
73
|
+
}
|
|
74
|
+
},
|
|
75
|
+
closed: {
|
|
76
|
+
opacity: 0,
|
|
77
|
+
x: "-100%",
|
|
78
|
+
transition: {
|
|
79
|
+
duration: 0.3,
|
|
80
|
+
ease: [0.4, 0, 0.2, 1]
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
};
|
|
66
84
|
const Modal = ({ ref, type = "center", defaultOpen, isOpen, onClose, children }) => {
|
|
67
85
|
const dialogRef = useRef(null);
|
|
68
86
|
const [dialogOpen, setDialogOpen] = useState(defaultOpen ?? false);
|
|
@@ -99,7 +117,8 @@ const Modal = ({ ref, type = "center", defaultOpen, isOpen, onClose, children })
|
|
|
99
117
|
"border-border-mute bg-bg-base shadow-md backdrop:bg-back-drop",
|
|
100
118
|
type === "center" && "m-auto max-h-lg w-5/6 max-w-2xl rounded-lg dark:border",
|
|
101
119
|
type === "bottom" && "mt-auto w-screen max-w-screen rounded-t-lg dark:border-t",
|
|
102
|
-
type === "right" && "ml-auto
|
|
120
|
+
type === "right" && "ml-auto h-svh max-h-none w-screen max-w-sm rounded-l-lg dark:border-l",
|
|
121
|
+
type === "left" && "mr-auto h-svh max-h-none w-screen max-w-sm rounded-r-lg dark:border-r"
|
|
103
122
|
),
|
|
104
123
|
exit: "closed",
|
|
105
124
|
initial: "closed",
|
|
@@ -110,7 +129,7 @@ const Modal = ({ ref, type = "center", defaultOpen, isOpen, onClose, children })
|
|
|
110
129
|
},
|
|
111
130
|
onClose: realOnClose,
|
|
112
131
|
ref: realRef,
|
|
113
|
-
variants: type === "center" ? centerVariants : type === "bottom" ? bottomVariants : rightVariants,
|
|
132
|
+
variants: type === "center" ? centerVariants : type === "bottom" ? bottomVariants : type === "left" ? leftVariants : rightVariants,
|
|
114
133
|
children: /* @__PURE__ */ jsx(ToastProvider, { portalRef: realRef, position: "absolute", children })
|
|
115
134
|
}
|
|
116
135
|
);
|
package/dist/styles/index.css
CHANGED
|
@@ -360,6 +360,37 @@
|
|
|
360
360
|
--tracking-*: initial;
|
|
361
361
|
--tracking-none: 0em;
|
|
362
362
|
--tracking-normal: 0.025em;
|
|
363
|
+
|
|
364
|
+
--leading-*: initial;
|
|
365
|
+
--leading-none: 1;
|
|
366
|
+
--leading-tight: 1.25;
|
|
367
|
+
--leading-snug: 1.375;
|
|
368
|
+
--leading-normal: 1.5;
|
|
369
|
+
--leading-relaxed: 1.625;
|
|
370
|
+
--leading-loose: 2;
|
|
371
|
+
|
|
372
|
+
--shadow-*: initial;
|
|
373
|
+
--shadow-2xs: 0 1px rgb(0 0 0 / 0.05);
|
|
374
|
+
--shadow-xs: 0 1px 2px 0 rgb(0 0 0 / 0.05);
|
|
375
|
+
--shadow-sm: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
|
|
376
|
+
--shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
|
|
377
|
+
--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
|
|
378
|
+
--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
|
|
379
|
+
--shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / 0.25);
|
|
380
|
+
|
|
381
|
+
--inset-shadow-*: initial;
|
|
382
|
+
--inset-shadow-2xs: inset 0 1px rgb(0 0 0 / 0.05);
|
|
383
|
+
--inset-shadow-xs: inset 0 1px 1px rgb(0 0 0 / 0.05);
|
|
384
|
+
--inset-shadow-sm: inset 0 2px 4px rgb(0 0 0 / 0.05);
|
|
385
|
+
|
|
386
|
+
--spacing: 0.25rem;
|
|
387
|
+
|
|
388
|
+
--breakpoint-*: initial;
|
|
389
|
+
--breakpoint-sm: 40rem;
|
|
390
|
+
--breakpoint-md: 48rem;
|
|
391
|
+
--breakpoint-lg: 64rem;
|
|
392
|
+
--breakpoint-xl: 80rem;
|
|
393
|
+
--breakpoint-2xl: 96rem;
|
|
363
394
|
}
|
|
364
395
|
|
|
365
396
|
@utility grid-cols-auto-fill-* {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@k8o/arte-odyssey",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.1.0",
|
|
4
4
|
"description": "k8o's react ui library",
|
|
5
5
|
"author": "k8o <kosakanoki@gmail.com>",
|
|
6
6
|
"keywords": [
|
|
@@ -40,6 +40,54 @@
|
|
|
40
40
|
"default": "./dist/hooks/*/index.js"
|
|
41
41
|
}
|
|
42
42
|
},
|
|
43
|
+
"./helpers/cn": {
|
|
44
|
+
"import": {
|
|
45
|
+
"types": "./dist/helpers/cn.d.ts",
|
|
46
|
+
"default": "./dist/helpers/cn.js"
|
|
47
|
+
}
|
|
48
|
+
},
|
|
49
|
+
"./helpers/color/find-all-colors": {
|
|
50
|
+
"import": {
|
|
51
|
+
"types": "./dist/helpers/color/find-all-colors.d.ts",
|
|
52
|
+
"default": "./dist/helpers/color/find-all-colors.js"
|
|
53
|
+
}
|
|
54
|
+
},
|
|
55
|
+
"./helpers/number/between": {
|
|
56
|
+
"import": {
|
|
57
|
+
"types": "./dist/helpers/number/between.d.ts",
|
|
58
|
+
"default": "./dist/helpers/number/between.js"
|
|
59
|
+
}
|
|
60
|
+
},
|
|
61
|
+
"./helpers/number/cast": {
|
|
62
|
+
"import": {
|
|
63
|
+
"types": "./dist/helpers/number/cast.d.ts",
|
|
64
|
+
"default": "./dist/helpers/number/cast.js"
|
|
65
|
+
}
|
|
66
|
+
},
|
|
67
|
+
"./helpers/number/commalize": {
|
|
68
|
+
"import": {
|
|
69
|
+
"types": "./dist/helpers/number/commalize.d.ts",
|
|
70
|
+
"default": "./dist/helpers/number/commalize.js"
|
|
71
|
+
}
|
|
72
|
+
},
|
|
73
|
+
"./helpers/number/to-precision": {
|
|
74
|
+
"import": {
|
|
75
|
+
"types": "./dist/helpers/number/to-precision.d.ts",
|
|
76
|
+
"default": "./dist/helpers/number/to-precision.js"
|
|
77
|
+
}
|
|
78
|
+
},
|
|
79
|
+
"./helpers/uuid-v4": {
|
|
80
|
+
"import": {
|
|
81
|
+
"types": "./dist/helpers/uuid-v4.d.ts",
|
|
82
|
+
"default": "./dist/helpers/uuid-v4.js"
|
|
83
|
+
}
|
|
84
|
+
},
|
|
85
|
+
"./helpers/is-internal-route": {
|
|
86
|
+
"import": {
|
|
87
|
+
"types": "./dist/helpers/is-internal-route.d.ts",
|
|
88
|
+
"default": "./dist/helpers/is-internal-route.js"
|
|
89
|
+
}
|
|
90
|
+
},
|
|
43
91
|
"./styles.css": "./dist/styles/index.css",
|
|
44
92
|
"./*": {
|
|
45
93
|
"import": {
|
|
@@ -52,22 +100,22 @@
|
|
|
52
100
|
"*.css"
|
|
53
101
|
],
|
|
54
102
|
"dependencies": {
|
|
55
|
-
"@floating-ui/react": "0.27.
|
|
103
|
+
"@floating-ui/react": "0.27.18",
|
|
56
104
|
"baseline-status": "1.1.1",
|
|
57
105
|
"clsx": "2.1.1",
|
|
58
106
|
"esbuild": "0.27.3",
|
|
59
|
-
"lucide-react": "0.
|
|
60
|
-
"motion": "12.34.
|
|
107
|
+
"lucide-react": "0.575.0",
|
|
108
|
+
"motion": "12.34.3",
|
|
61
109
|
"react-error-boundary": "6.1.1",
|
|
62
|
-
"tailwind-merge": "3.
|
|
110
|
+
"tailwind-merge": "3.5.0"
|
|
63
111
|
},
|
|
64
112
|
"devDependencies": {
|
|
65
113
|
"@chromatic-com/storybook": "5.0.1",
|
|
66
|
-
"@storybook/addon-a11y": "10.2.
|
|
67
|
-
"@storybook/addon-docs": "10.2.
|
|
68
|
-
"@storybook/addon-vitest": "10.2.
|
|
69
|
-
"@storybook/react-vite": "10.2.
|
|
70
|
-
"@tailwindcss/postcss": "4.1
|
|
114
|
+
"@storybook/addon-a11y": "10.2.13",
|
|
115
|
+
"@storybook/addon-docs": "10.2.13",
|
|
116
|
+
"@storybook/addon-vitest": "10.2.13",
|
|
117
|
+
"@storybook/react-vite": "10.2.13",
|
|
118
|
+
"@tailwindcss/postcss": "4.2.1",
|
|
71
119
|
"@types/react": "19.2.14",
|
|
72
120
|
"@types/react-dom": "19.2.3",
|
|
73
121
|
"@vitejs/plugin-react-swc": "4.2.3",
|
|
@@ -76,9 +124,9 @@
|
|
|
76
124
|
"postcss": "8.5.6",
|
|
77
125
|
"react": "19.2.4",
|
|
78
126
|
"react-dom": "19.2.4",
|
|
79
|
-
"storybook": "10.2.
|
|
127
|
+
"storybook": "10.2.13",
|
|
80
128
|
"storybook-addon-mock-date": "2.0.0",
|
|
81
|
-
"tailwindcss": "4.1
|
|
129
|
+
"tailwindcss": "4.2.1",
|
|
82
130
|
"vite": "7.3.1",
|
|
83
131
|
"vitest": "4.0.18",
|
|
84
132
|
"vitest-browser-react": "2.0.5"
|