@cakejp/design-system 0.11.0 → 0.12.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 (43) hide show
  1. package/CHANGELOG.md +42 -1
  2. package/CLAUDE.md +18 -1
  3. package/README.md +48 -0
  4. package/UPDATING.md +9 -0
  5. package/bin/check-duplicates.mjs +132 -0
  6. package/bin/init.js +8 -0
  7. package/contracts/components.json +175 -21
  8. package/contracts/rules.json +17 -1
  9. package/dist/index.css +1 -1
  10. package/dist/index.js +5266 -3354
  11. package/dist/types/components/ec/admin-shell.d.ts +10 -1
  12. package/dist/types/components/ec/mypage-shell.d.ts +10 -1
  13. package/dist/types/components/ec/product-card.d.ts +3 -1
  14. package/dist/types/components/ec/product-list-item.d.ts +8 -1
  15. package/dist/types/components/foundations/alert.d.ts +5 -1
  16. package/dist/types/components/foundations/button.d.ts +1 -1
  17. package/dist/types/components/foundations/card.d.ts +12 -2
  18. package/dist/types/components/foundations/chip-variants.d.ts +17 -0
  19. package/dist/types/components/foundations/field.d.ts +58 -0
  20. package/dist/types/components/foundations/file-input.d.ts +75 -0
  21. package/dist/types/components/foundations/icon-badge.d.ts +2 -2
  22. package/dist/types/components/foundations/input.d.ts +9 -1
  23. package/dist/types/components/foundations/radio-group.d.ts +12 -2
  24. package/dist/types/components/foundations/skip-link.d.ts +39 -0
  25. package/dist/types/components/foundations/textarea.d.ts +9 -1
  26. package/dist/types/components/primitives/chip.d.ts +2 -7
  27. package/dist/types/components/primitives/content-carousel.d.ts +52 -0
  28. package/dist/types/components/primitives/date-picker.d.ts +32 -0
  29. package/dist/types/components/primitives/error-state.d.ts +43 -16
  30. package/dist/types/components/primitives/funnel-shell.d.ts +10 -1
  31. package/dist/types/components/primitives/header.d.ts +15 -1
  32. package/dist/types/components/primitives/section-nav.d.ts +28 -2
  33. package/dist/types/components/primitives/share-buttons.d.ts +8 -2
  34. package/dist/types/components/primitives/standard-page-shell.d.ts +11 -1
  35. package/dist/types/components/primitives/workspace-shell.d.ts +19 -1
  36. package/dist/types/index.d.ts +66 -2
  37. package/package.json +1 -1
  38. package/src/preset-standalone.css +306 -4
  39. package/src/styles/semantic.css +7 -0
  40. package/src/styles/typography.css +8 -1
  41. package/templates/AGENTS.md +9 -0
  42. package/templates/CLAUDE.md +9 -0
  43. package/tokens.json +10 -1
@@ -6,6 +6,12 @@ export interface HeaderAction {
6
6
  label: string;
7
7
  /** クリックハンドラ */
8
8
  onClick?: () => void;
9
+ /**
10
+ * リンク先。指定すると `<a>`(Button asChild)で描画し、
11
+ * 中クリック/Cmd+クリックでの新規タブ・リンクコピー・hoverプレビューが効くようになる。
12
+ * onClick と併用可(両方付与される)
13
+ */
14
+ href?: string;
9
15
  /** バッジ数(通知やカート件数) */
10
16
  badge?: React.ReactNode;
11
17
  }
@@ -46,6 +52,14 @@ export interface HeaderProps extends React.HTMLAttributes<HTMLElement> {
46
52
  * SP では非表示。本番の "ケーキ / スイーツ / ランキング…" メニューに対応。
47
53
  */
48
54
  navItems?: HeaderNavItem[];
55
+ /**
56
+ * PC(@[768px]+)のロゴ行で navItems と actions の間にインライン配置する検索スロット
57
+ * (variant="logo" のみ)。`SearchBar` 等を渡す。`flex-1 max-w-[400px]` で伸縮し、
58
+ * 既存のロゴ・ナビ・アクションを潰さない。SP 行には出さない
59
+ * (SP の常設検索は従来どおり `bottomSlot` で運用する)。
60
+ * navItems が無く searchSlot だけを渡した場合も PC 行を描画する。
61
+ */
62
+ searchSlot?: React.ReactNode;
49
63
  /** 右側に配置するカスタム要素(variant="back"で使用) */
50
64
  rightSlot?: React.ReactNode;
51
65
  /** 検索バーなど中央に配置するカスタム要素(variant="back-search"で使用) */
@@ -65,5 +79,5 @@ export interface HeaderProps extends React.HTMLAttributes<HTMLElement> {
65
79
  * アプリ全体で使われるヘッダーの3パターンを1コンポーネントで提供。
66
80
  * ロゴ+アクション、戻るボタン+タイトル、戻るボタン+検索の3バリエーション。
67
81
  */
68
- declare function Header({ className, variant, logo, title, onBack, backLabel, actions, navItems, rightSlot, centerSlot, bottomSlot, disableSticky, ...props }: HeaderProps): import("react/jsx-runtime").JSX.Element;
82
+ declare function Header({ className, variant, logo, title, onBack, backLabel, actions, navItems, searchSlot, rightSlot, centerSlot, bottomSlot, disableSticky, ...props }: HeaderProps): import("react/jsx-runtime").JSX.Element;
69
83
  export { Header };
@@ -14,6 +14,14 @@ export interface SectionNavProps extends React.HTMLAttributes<HTMLElement> {
14
14
  items: SectionNavItem[];
15
15
  /** アクティブなセクションの key(利用側が scrollspy 等で制御。本体では監視しない) */
16
16
  activeKey?: string;
17
+ /**
18
+ * レイアウト方向(既定 "vertical")。
19
+ * - "vertical": 縦積みの目次(WorkspaceShell の左レール等)。従来の挙動。
20
+ * - "horizontal": 横並びの Tabs アンダーバー式(ガイド・FAQ 等の長い静的ページの
21
+ * ページ内ジャンプナビ)。横スクロール対応(overflow-x-auto)。sticky は内蔵しない
22
+ * (sticky/top オフセットは利用側が className で付与する)。
23
+ */
24
+ orientation?: "vertical" | "horizontal";
17
25
  /** aria-label */
18
26
  ariaLabel?: string;
19
27
  /** 項目クリック時のコールバック(任意) */
@@ -31,13 +39,14 @@ export interface SectionNavProps extends React.HTMLAttributes<HTMLElement> {
31
39
  * - 固有幅・背景・境界を持たない(`w-full`)。パネル化・幅決定はシェル/利用側の責務。
32
40
  * (SideNav の `w-64` 固定が WorkspaceShell で幅ミスマッチを起こした反省)
33
41
  * - IntersectionObserver は内包しない。`activeKey` を利用側が渡す。
42
+ * - sticky は内蔵しない。sticky/top オフセットは利用側が className で付与する。
34
43
  *
35
44
  * ### インポート
36
45
  * ```tsx
37
46
  * import { SectionNav } from '../../components/primitives/section-nav'
38
47
  * ```
39
48
  *
40
- * ### 使い方
49
+ * ### 使い方(vertical=既定)
41
50
  * ```tsx
42
51
  * <SectionNav
43
52
  * activeKey="basic"
@@ -48,13 +57,30 @@ export interface SectionNavProps extends React.HTMLAttributes<HTMLElement> {
48
57
  * />
49
58
  * ```
50
59
  *
60
+ * ### 使い方(horizontal=ページ内ジャンプの sticky アンダーバー)
61
+ * ガイド・FAQ のような長い静的ページ向け。sticky は利用側で付与する。
62
+ * ジャンプ先セクション側には `scroll-mt-*`(sticky ナビ高さ + α)を付けて、
63
+ * 見出しがナビの裏に隠れないようにする。
64
+ * ```tsx
65
+ * // ナビ: ヘッダー(h-14)直下に貼り付ける
66
+ * <SectionNav
67
+ * orientation="horizontal"
68
+ * activeKey={active}
69
+ * className="sticky top-14 z-30 border-b border-[var(--Border-Low-Emphasis)] bg-[var(--Surface-Primary)]"
70
+ * items={items}
71
+ * />
72
+ * // ターゲット: ナビ高さぶん上に余白を確保(scroll-mt-28 ≒ header 56px + nav 48px)
73
+ * <section id="basic" className="scroll-mt-28">…</section>
74
+ * ```
75
+ *
51
76
  * ### Props
52
77
  * | Prop | 型 | デフォルト | 説明 |
53
78
  * |------|-----|-----------|------|
54
79
  * | items | SectionNavItem[] | — | 目次項目(アンカー、必須) |
55
80
  * | activeKey | string | — | アクティブなセクションの key |
81
+ * | orientation | "vertical"\|"horizontal" | "vertical" | 縦積み目次 / 横アンダーバー |
56
82
  * | ariaLabel | string | "ページ内セクション" | aria-label |
57
83
  * | onItemClick | (key: string) => void | — | 項目クリック時のコールバック |
58
84
  */
59
- declare function SectionNav({ items, activeKey, ariaLabel, onItemClick, className, ...props }: SectionNavProps): import("react/jsx-runtime").JSX.Element;
85
+ declare function SectionNav({ items, activeKey, orientation, ariaLabel, onItemClick, className, ...props }: SectionNavProps): import("react/jsx-runtime").JSX.Element;
60
86
  export { SectionNav };
@@ -1,11 +1,17 @@
1
1
  import * as React from "react";
2
- export interface ShareButtonsProps extends React.HTMLAttributes<HTMLDivElement> {
2
+ export interface ShareButtonsProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "onCopy"> {
3
3
  /** シェアURL */
4
4
  url?: string;
5
5
  /** シェアテキスト */
6
6
  text?: string;
7
7
  /** コピーボタンのラベル */
8
8
  copyLabel?: string;
9
+ /** コピー成功時に一時表示するラベル(約2秒) */
10
+ copiedLabel?: string;
11
+ /** コピー失敗時に一時表示するラベル(約2秒) */
12
+ copyErrorLabel?: string;
13
+ /** コピー完了時のコールバック(成功/失敗) */
14
+ onCopy?: (result: "success" | "error") => void;
9
15
  }
10
16
  /**
11
17
  * シェアボタンコンポーネント
@@ -19,5 +25,5 @@ export interface ShareButtonsProps extends React.HTMLAttributes<HTMLDivElement>
19
25
  * - `url` と `text` でシェア内容を指定
20
26
  * - ボタンは横並び、等幅表示
21
27
  */
22
- declare function ShareButtons({ className, url, text, copyLabel, ...props }: ShareButtonsProps): import("react/jsx-runtime").JSX.Element;
28
+ declare function ShareButtons({ className, url, text, copyLabel, copiedLabel, copyErrorLabel, onCopy, ...props }: ShareButtonsProps): import("react/jsx-runtime").JSX.Element;
23
29
  export { ShareButtons };
@@ -21,6 +21,16 @@ export interface StandardPageShellProps {
21
21
  children: React.ReactNode;
22
22
  /** ルート要素の追加クラス。 */
23
23
  className?: string;
24
+ /**
25
+ * `<main>` の id(既定 "main-content")。内蔵の SkipLink の飛び先(`#${mainId}`)と対になる。
26
+ * スキップ先アンカーを別 id にしたい場合に変更する。
27
+ */
28
+ mainId?: string;
29
+ /**
30
+ * DOM 先頭に SkipLink(キーボードで本文へ飛ぶ a11y リンク)を標準内蔵する。
31
+ * `sr-only` なので視覚には影響しない。`false` で無効化。
32
+ */
33
+ skipLink?: false;
24
34
  }
25
35
  /**
26
36
  * StandardPageShell — 消費者向け標準ページ(standard-page-view / standard-page-edit)の骨格。
@@ -47,5 +57,5 @@ export interface StandardPageShellProps {
47
57
  *
48
58
  * 判断基準は contracts/composition.json(pageSkeletons)/ contracts/screen-patterns.json を参照。
49
59
  */
50
- declare function StandardPageShell({ header, bottomTab, footer, children, className, }: StandardPageShellProps): import("react/jsx-runtime").JSX.Element;
60
+ declare function StandardPageShell({ header, bottomTab, footer, children, className, mainId, skipLink, }: StandardPageShellProps): import("react/jsx-runtime").JSX.Element;
51
61
  export { StandardPageShell };
@@ -32,6 +32,24 @@ export interface WorkspaceShellProps {
32
32
  children: React.ReactNode;
33
33
  /** ルート要素の追加クラス */
34
34
  className?: string;
35
+ /**
36
+ * 編集本体 `<main>` の id(既定 "main-content")。内蔵の SkipLink の飛び先(`#${mainId}`)と対になる。
37
+ */
38
+ mainId?: string;
39
+ /**
40
+ * DOM 先頭に SkipLink(キーボードで本文へ飛ぶ a11y リンク)を標準内蔵する。
41
+ * `sr-only` なので視覚には影響しない。`false` で無効化。
42
+ */
43
+ skipLink?: false;
44
+ /**
45
+ * 編集ヘッダーのレイアウト(既定 "start"、現行と同じ挙動)。
46
+ * "center" にすると左=戻る導線/中央=タイトル/右=primaryAction の
47
+ * 3 カラム grid(`grid-cols-[minmax(0,1fr)_auto_minmax(0,1fr)]`)に固定し、
48
+ * primaryAction の有無・幅に関わらずタイトルを真の中央に揃える。
49
+ * consumer が `[&>[data-slot=header]]:!grid ...` のようなセレクタ上書きで
50
+ * 実現していた構成を公開 API として公式化したもの(#112)。
51
+ */
52
+ headerLayout?: "start" | "center";
35
53
  }
36
54
  /**
37
55
  * WorkspaceShell — Focused Workspace(全画面集中編集)のシェル。
@@ -48,5 +66,5 @@ export interface WorkspaceShellProps {
48
66
  *
49
67
  * 判断基準は contracts/screen-patterns.json / guidelines/foundations/screen-patterns.md を参照。
50
68
  */
51
- declare function WorkspaceShell({ title, onBack, backLabel, primaryAction, sectionNav, asidePanel, children, className, }: WorkspaceShellProps): import("react/jsx-runtime").JSX.Element;
69
+ declare function WorkspaceShell({ title, onBack, backLabel, primaryAction, sectionNav, asidePanel, children, className, mainId, skipLink, headerLayout, }: WorkspaceShellProps): import("react/jsx-runtime").JSX.Element;
52
70
  export { WorkspaceShell };
@@ -1,5 +1,6 @@
1
1
  import "./index.css";
2
2
  export { cn } from "./lib/utils";
3
+ export { toast } from "sonner";
3
4
  export { Accordion, AccordionContent, AccordionItem, AccordionTrigger } from "./components/foundations/accordion";
4
5
  export { Alert, AlertDescription, AlertTitle } from "./components/foundations/alert";
5
6
  export { AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger } from "./components/foundations/alert-dialog";
@@ -9,7 +10,7 @@ export { Badge, badgeVariants } from "./components/foundations/badge";
9
10
  export { Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator } from "./components/foundations/breadcrumb";
10
11
  export { Button, buttonVariants } from "./components/foundations/button";
11
12
  export { Calendar } from "./components/foundations/calendar";
12
- export { Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle } from "./components/foundations/card";
13
+ export { Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, cardVariants } from "./components/foundations/card";
13
14
  export { Checkbox } from "./components/foundations/checkbox";
14
15
  export type { CheckboxProps } from "./components/foundations/checkbox";
15
16
  export { CheckboxCardGroup, CheckboxCardItem } from "./components/foundations/checkbox-card";
@@ -20,10 +21,14 @@ export { DataTable } from "./components/foundations/data-table";
20
21
  export { Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger } from "./components/foundations/dialog";
21
22
  export { Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger } from "./components/foundations/drawer";
22
23
  export { DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger } from "./components/foundations/dropdown-menu";
24
+ export { FieldSet, FieldLegend, FieldGroup, FieldDescription, FieldError, FieldSeparator } from "./components/foundations/field";
25
+ export { FileInput, formatFileNames, validateFileSize } from "./components/foundations/file-input";
26
+ export type { FileInputProps, FileInputError } from "./components/foundations/file-input";
23
27
  export { Form, FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage, useFormField } from "./components/foundations/form";
24
28
  export { HoverCard, HoverCardContent, HoverCardTrigger } from "./components/foundations/hover-card";
25
29
  export { IconBadge, iconBadgeVariants } from "./components/foundations/icon-badge";
26
30
  export { Input } from "./components/foundations/input";
31
+ export type { InputProps } from "./components/foundations/input";
27
32
  export { Label } from "./components/foundations/label";
28
33
  export { Menubar, MenubarCheckboxItem, MenubarContent, MenubarGroup, MenubarItem, MenubarLabel, MenubarMenu, MenubarPortal, MenubarRadioGroup, MenubarRadioItem, MenubarSeparator, MenubarShortcut, MenubarSub, MenubarSubContent, MenubarSubTrigger, MenubarTrigger } from "./components/foundations/menubar";
29
34
  export { NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, NavigationMenuViewport, navigationMenuTriggerStyle } from "./components/foundations/navigation-menu";
@@ -32,17 +37,21 @@ export { Popover, PopoverContent, PopoverTrigger } from "./components/foundation
32
37
  export { Progress } from "./components/foundations/progress";
33
38
  export { ResponsiveDialog, ResponsiveDialogClose, ResponsiveDialogContent, ResponsiveDialogDescription, ResponsiveDialogFooter, ResponsiveDialogHeader, ResponsiveDialogTitle, ResponsiveDialogTrigger, useIsMobile } from "./components/foundations/responsive-dialog";
34
39
  export { RadioGroup, RadioGroupItem } from "./components/foundations/radio-group";
40
+ export type { RadioGroupVariant } from "./components/foundations/radio-group";
35
41
  export { ScrollArea, ScrollBar } from "./components/foundations/scroll-area";
36
42
  export { Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue } from "./components/foundations/select";
37
43
  export { Separator } from "./components/foundations/separator";
38
44
  export { Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger } from "./components/foundations/sheet";
39
45
  export { Skeleton } from "./components/foundations/skeleton";
46
+ export { SkipLink } from "./components/foundations/skip-link";
47
+ export type { SkipLinkProps } from "./components/foundations/skip-link";
40
48
  export { Slider } from "./components/foundations/slider";
41
49
  export { Spinner } from "./components/foundations/spinner";
42
50
  export { Switch } from "./components/foundations/switch";
43
51
  export { Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow } from "./components/foundations/table";
44
52
  export { Tabs, TabsContent, TabsList, TabsTrigger } from "./components/foundations/tabs";
45
53
  export { Textarea } from "./components/foundations/textarea";
54
+ export type { TextareaProps } from "./components/foundations/textarea";
46
55
  export { Toaster } from "./components/foundations/sonner";
47
56
  export { Toggle, toggleVariants } from "./components/foundations/toggle";
48
57
  export { ToggleGroup, ToggleGroupItem } from "./components/foundations/toggle-group";
@@ -52,10 +61,16 @@ export type { AdminSideNavProps, AdminNavItem, AdminNavSubItem, AdminNavIconCont
52
61
  export { AdminHeader } from "./components/primitives/admin-header";
53
62
  export type { AdminHeaderProps } from "./components/primitives/admin-header";
54
63
  export { CoachMark } from "./components/primitives/coach-mark";
64
+ export type { CoachMarkProps, CoachMarkDirection } from "./components/primitives/coach-mark";
55
65
  export { BannerCarousel } from "./components/primitives/banner-carousel";
66
+ export type { BannerCarouselProps, BannerItem } from "./components/primitives/banner-carousel";
67
+ export { ContentCarousel } from "./components/primitives/content-carousel";
68
+ export type { ContentCarouselProps } from "./components/primitives/content-carousel";
56
69
  export { StickyActionBar } from "./components/primitives/sticky-action-bar";
57
70
  export { BottomTabBar } from "./components/primitives/bottom-tab-bar";
71
+ export type { BottomTabBarProps, BottomTabBarItem } from "./components/primitives/bottom-tab-bar";
58
72
  export { BulkActionBar } from "./components/primitives/bulk-action-bar";
73
+ export type { BulkActionBarProps } from "./components/primitives/bulk-action-bar";
59
74
  export { CategoryShortcuts } from "./components/primitives/category-shortcuts";
60
75
  export type { CategoryShortcutsProps, CategoryShortcutsItem } from "./components/primitives/category-shortcuts";
61
76
  export { CategoryScroll } from "./components/primitives/category-scroll";
@@ -73,38 +88,65 @@ export { StandardPageShell as EcPageShell } from "./components/primitives/standa
73
88
  /** @deprecated 旧名。`StandardPageShellProps` を使うこと。次のメジャーで削除する。 */
74
89
  export type { StandardPageShellProps as EcPageShellProps } from "./components/primitives/standard-page-shell";
75
90
  export { EmptyState } from "./components/primitives/empty-state";
76
- export { ErrorState } from "./components/primitives/error-state";
91
+ export type { EmptyStateProps } from "./components/primitives/empty-state";
92
+ export { DatePicker, DateTimePicker } from "./components/primitives/date-picker";
93
+ export type { DatePickerProps, DateTimePickerProps } from "./components/primitives/date-picker";
94
+ export { ErrorState, NotFoundIllustration } from "./components/primitives/error-state";
95
+ export type { ErrorStateProps, ErrorStateKind, NotFoundIllustrationProps } from "./components/primitives/error-state";
77
96
  export { FilterBar } from "./components/primitives/filter-bar";
97
+ export type { FilterBarProps, FilterChip } from "./components/primitives/filter-bar";
78
98
  export { Footer } from "./components/primitives/footer";
99
+ export type { FooterProps, FooterLink, FooterLinkGroup, FooterPaymentMethod, FooterTrustBadge } from "./components/primitives/footer";
79
100
  export { FormField as CakeFormField } from "./components/primitives/form-field";
101
+ export type { FormFieldProps as CakeFormFieldProps } from "./components/primitives/form-field";
80
102
  export { FunnelShell } from "./components/primitives/funnel-shell";
81
103
  export type { FunnelShellProps, FunnelStep } from "./components/primitives/funnel-shell";
82
104
  export { Header } from "./components/primitives/header";
105
+ export type { HeaderProps, HeaderAction, HeaderNavItem } from "./components/primitives/header";
83
106
  export { ImageCarousel } from "./components/primitives/image-carousel";
107
+ export type { ImageCarouselProps } from "./components/primitives/image-carousel";
84
108
  export { ImageGallery } from "./components/primitives/image-gallery";
109
+ export type { ImageGalleryProps } from "./components/primitives/image-gallery";
85
110
  export { ImageUploader } from "./components/primitives/image-uploader";
111
+ export type { ImageUploaderProps, ImageUploaderImage } from "./components/primitives/image-uploader";
86
112
  export { KebabMenu } from "./components/primitives/kebab-menu";
113
+ export type { KebabMenuProps, KebabMenuItem } from "./components/primitives/kebab-menu";
87
114
  export { ListItem } from "./components/primitives/list-item";
115
+ export type { ListItemProps } from "./components/primitives/list-item";
88
116
  export { MenuDrawer } from "./components/primitives/menu-drawer";
117
+ export type { MenuDrawerProps, MenuSection, MenuItem, MenuBanner } from "./components/primitives/menu-drawer";
89
118
  export { SubNav } from "./components/primitives/sub-nav";
119
+ export type { SubNavProps, SubNavItem } from "./components/primitives/sub-nav";
90
120
  export { NotificationBadge, notificationBadgeVariants } from "./components/primitives/notification-badge";
121
+ export type { NotificationBadgeProps } from "./components/primitives/notification-badge";
91
122
  export { NotificationList } from "./components/primitives/notification-list";
123
+ export type { NotificationListProps, NotificationItem } from "./components/primitives/notification-list";
92
124
  export { PriceDisplay, priceDisplayVariants } from "./components/primitives/price-display";
125
+ export type { PriceDisplayProps } from "./components/primitives/price-display";
93
126
  export { ProgressSteps } from "./components/primitives/progress-steps";
127
+ export type { ProgressStepsProps } from "./components/primitives/progress-steps";
94
128
  export { QuantitySelector } from "./components/primitives/quantity-selector";
129
+ export type { QuantitySelectorProps } from "./components/primitives/quantity-selector";
95
130
  export { SearchBar } from "./components/primitives/search-bar";
131
+ export type { SearchBarProps } from "./components/primitives/search-bar";
96
132
  export { SearchPanel } from "./components/primitives/search-panel";
133
+ export type { SearchPanelProps } from "./components/primitives/search-panel";
97
134
  export { Container, containerVariants } from "./components/primitives/container";
98
135
  export { Section, sectionVariants } from "./components/primitives/section";
99
136
  export { SectionHeader } from "./components/primitives/section-header";
137
+ export type { SectionHeaderProps, SectionHeaderSize } from "./components/primitives/section-header";
100
138
  export { SectionNav } from "./components/primitives/section-nav";
101
139
  export type { SectionNavProps, SectionNavItem } from "./components/primitives/section-nav";
102
140
  export { ShareButtons } from "./components/primitives/share-buttons";
141
+ export type { ShareButtonsProps } from "./components/primitives/share-buttons";
103
142
  export { SideNav } from "./components/primitives/side-nav";
104
143
  export type { SideNavProps, SideNavGroup, SideNavItem } from "./components/primitives/side-nav";
105
144
  export { SocialLoginButton } from "./components/primitives/social-login-button";
145
+ export type { SocialLoginButtonProps, SocialProvider } from "./components/primitives/social-login-button";
106
146
  export { StatusCountTabs } from "./components/primitives/status-count-tabs";
147
+ export type { StatusCountTabsProps } from "./components/primitives/status-count-tabs";
107
148
  export { Tag, tagVariants } from "./components/primitives/tag";
149
+ export type { TagProps } from "./components/primitives/tag";
108
150
  export { WorkspaceShell } from "./components/primitives/workspace-shell";
109
151
  export type { WorkspaceShellProps } from "./components/primitives/workspace-shell";
110
152
  /**
@@ -126,27 +168,49 @@ export { AdminShell as AdminLayout } from "./components/ec/admin-shell";
126
168
  /** @deprecated 旧名。`AdminShellProps` を使うこと。次のメジャーで削除する。 */
127
169
  export type { AdminShellProps as AdminLayoutProps } from "./components/ec/admin-shell";
128
170
  export { AnniversaryCard } from "./components/ec/anniversary-card";
171
+ export type { AnniversaryCardProps } from "./components/ec/anniversary-card";
129
172
  export { CakeLogo } from "./components/ec/cake-logo";
173
+ export type { CakeLogoProps } from "./components/ec/cake-logo";
130
174
  export { ChartControls } from "./components/ec/chart-controls";
175
+ export type { ChartControlsProps, ChartGranularity, ChartPeriod } from "./components/ec/chart-controls";
131
176
  export { CountdownTimer } from "./components/ec/countdown-timer";
177
+ export type { CountdownTimerProps } from "./components/ec/countdown-timer";
132
178
  export { CouponCard } from "./components/ec/coupon-card";
179
+ export type { CouponCardProps } from "./components/ec/coupon-card";
133
180
  export { DeliveryCalendar } from "./components/ec/delivery-calendar";
181
+ export type { DeliveryCalendarProps, DayAvailability, CalendarDay } from "./components/ec/delivery-calendar";
134
182
  export { mypageMenuGroups } from "./components/ec/_mypage-menu-data";
135
183
  export { OrderSection } from "./components/ec/order-section";
184
+ export type { OrderSectionProps } from "./components/ec/order-section";
136
185
  export { OrderSummary } from "./components/ec/order-summary";
186
+ export type { OrderSummaryProps, OrderSummaryLineItem } from "./components/ec/order-summary";
137
187
  export { PaymentMethodDisplay, CreditCardIcon } from "./components/ec/payment-method";
188
+ export type { PaymentMethodDisplayProps, CreditCardIconProps, CreditCardBrand } from "./components/ec/payment-method";
138
189
  export { ProductCard } from "./components/ec/product-card";
190
+ export type { ProductCardProps } from "./components/ec/product-card";
139
191
  export { ProductCarousel } from "./components/ec/product-carousel";
192
+ export type { ProductCarouselProps } from "./components/ec/product-carousel";
140
193
  export { ProductCTA } from "./components/ec/product-cta";
194
+ export type { ProductCTAProps, ProductCTAVariant } from "./components/ec/product-cta";
141
195
  export { ProductDetailBar } from "./components/ec/product-detail-bar";
196
+ export type { ProductDetailBarProps, ProductDetailBarTab } from "./components/ec/product-detail-bar";
142
197
  export { ProductDetailSidebar } from "./components/ec/product-detail-sidebar";
198
+ export type { ProductDetailSidebarProps, SizeOption, CouponInfo, ProductTag, PromoBanner, PointInfo } from "./components/ec/product-detail-sidebar";
143
199
  export { ProductListItem } from "./components/ec/product-list-item";
200
+ export type { ProductListItemProps, ProductListItemTag } from "./components/ec/product-list-item";
144
201
  export { ProductOption, OptionQuantity, OptionSelect, OptionText, OptionImageUpload } from "./components/ec/product-option";
202
+ export type { ProductOptionProps, ProductOptionType, OptionQuantityProps, OptionSelectProps, OptionTextProps } from "./components/ec/product-option";
145
203
  export { RatingStars, SparkleIcon } from "./components/ec/rating-stars";
204
+ export type { RatingStarsProps } from "./components/ec/rating-stars";
146
205
  export { ReviewCard } from "./components/ec/review-card";
206
+ export type { ReviewCardProps } from "./components/ec/review-card";
147
207
  export { ReviewForm } from "./components/ec/review-form";
208
+ export type { ReviewFormProps } from "./components/ec/review-form";
148
209
  export { ReviewSummary, ReviewItem } from "./components/ec/review-summary";
210
+ export type { ReviewSummaryProps, ReviewGaugeItem, ReviewItemProps } from "./components/ec/review-summary";
149
211
  export { MypageShell } from "./components/ec/mypage-shell";
150
212
  export type { MypageShellProps, MypageShellBreadcrumb } from "./components/ec/mypage-shell";
151
213
  export { ShopCard } from "./components/ec/shop-card";
214
+ export type { ShopCardProps } from "./components/ec/shop-card";
152
215
  export { StatCard } from "./components/ec/stat-card";
216
+ export type { StatCardProps } from "./components/ec/stat-card";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cakejp/design-system",
3
- "version": "0.11.0",
3
+ "version": "0.12.0",
4
4
  "type": "module",
5
5
  "description": "Cake.jp Design System — UI コンポーネント・カラートークン・タイポグラフィ",
6
6
  "license": "UNLICENSED",