@cakejp/design-system 0.19.0 → 0.20.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/CHANGELOG.md +42 -0
- package/CLAUDE.md +1 -0
- package/bin/init.js +191 -28
- package/contracts/components.json +43 -7
- package/contracts/composition.json +1 -1
- package/contracts/rules.json +1 -1
- package/contracts/screen-patterns.json +1 -1
- package/dist/components/ec/order-summary.js +16 -15
- package/dist/components/ec/product-card.js +1 -1
- package/dist/components/foundations/alert-dialog.js +7 -7
- package/dist/components/foundations/data-table.js +490 -16
- package/dist/components/foundations/dialog.js +13 -13
- package/dist/components/foundations/drawer.js +5 -5
- package/dist/components/foundations/sheet.js +7 -7
- package/dist/components/primitives/admin-header.js +1 -1
- package/dist/components/primitives/admin-side-nav.js +195 -86
- package/dist/components/primitives/bottom-tab-bar.js +20 -20
- package/dist/components/primitives/header.js +43 -37
- package/dist/components/primitives/image-uploader.js +40 -19
- package/dist/components/primitives/sticky-action-bar.js +2 -1
- package/dist/index.css +1 -1
- package/dist/index.js +817 -476
- package/dist/types/components/primitives/admin-side-nav.d.ts +3 -0
- package/dist/types/index.d.ts +3 -2
- package/dist/types/lib/link-component.d.ts +9 -0
- package/package.json +2 -2
- package/src/components/COMPONENT_LOOKUP.md +2 -2
- package/src/preset-standalone.css +2 -0
- package/src/preset.css +13 -3
- package/src/styles/semantic.css +10 -0
- package/templates/AGENTS.md +4 -2
- package/templates/AGENTS.stub.md +25 -0
- package/templates/CLAUDE.md +4 -2
- package/templates/CLAUDE.stub.md +25 -0
- package/tokens.json +9 -0
package/dist/index.js
CHANGED
|
@@ -1,150 +1,150 @@
|
|
|
1
1
|
/* empty css */
|
|
2
2
|
import { cn as t } from "./lib/utils.js";
|
|
3
3
|
import { FOCUS_RING as n, FOCUS_RING_INSET as i, FOCUS_RING_WITHIN as p } from "./lib/focus-ring.js";
|
|
4
|
-
import { toast as
|
|
4
|
+
import { toast as m } from "sonner";
|
|
5
5
|
import { Accordion as u, AccordionContent as f, AccordionItem as d, AccordionTrigger as g } from "./components/foundations/accordion.js";
|
|
6
|
-
import { Alert as
|
|
7
|
-
import { AlertDialog as D, AlertDialogAction as
|
|
8
|
-
import { AspectRatio as
|
|
6
|
+
import { Alert as c, AlertDescription as s, AlertTitle as b } from "./components/foundations/alert.js";
|
|
7
|
+
import { AlertDialog as D, AlertDialogAction as T, AlertDialogCancel as M, AlertDialogContent as I, AlertDialogDescription as v, AlertDialogFooter as h, AlertDialogHeader as F, AlertDialogOverlay as P, AlertDialogPortal as w, AlertDialogTitle as A, AlertDialogTrigger as k } from "./components/foundations/alert-dialog.js";
|
|
8
|
+
import { AspectRatio as R } from "./components/foundations/aspect-ratio.js";
|
|
9
9
|
import { Avatar as L, AvatarFallback as N, AvatarImage as G } from "./components/foundations/avatar.js";
|
|
10
|
-
import { Badge as
|
|
10
|
+
import { Badge as V, badgeVariants as O } from "./components/foundations/badge.js";
|
|
11
11
|
import { Breadcrumb as U, BreadcrumbEllipsis as _, BreadcrumbItem as W, BreadcrumbLink as Q, BreadcrumbList as z, BreadcrumbPage as K, BreadcrumbSeparator as j } from "./components/foundations/breadcrumb.js";
|
|
12
12
|
import { Button as J, buttonVariants as X } from "./components/foundations/button.js";
|
|
13
13
|
import { Calendar as Z } from "./components/foundations/calendar.js";
|
|
14
|
-
import { Card as
|
|
15
|
-
import { Checkbox as
|
|
16
|
-
import { CheckboxCardGroup as
|
|
17
|
-
import { CheckboxGroup as
|
|
18
|
-
import { Collapsible as
|
|
19
|
-
import { Command as
|
|
20
|
-
import { ContextMenu as
|
|
21
|
-
import { DataTable as
|
|
22
|
-
import { Dialog as
|
|
23
|
-
import { Drawer as
|
|
24
|
-
import { DropdownMenu as
|
|
25
|
-
import { Field as
|
|
26
|
-
import { FileInput as
|
|
27
|
-
import { Form as
|
|
28
|
-
import { HoverCard as
|
|
29
|
-
import { IconBadge as
|
|
30
|
-
import { Input as
|
|
31
|
-
import { Label as
|
|
32
|
-
import { Menubar as
|
|
33
|
-
import { NavigationMenu as
|
|
34
|
-
import { Pagination as
|
|
35
|
-
import { getPaginationRange as
|
|
36
|
-
import { Popover as
|
|
37
|
-
import { Progress as
|
|
38
|
-
import { ResponsiveDialog as
|
|
39
|
-
import { RadioGroup as
|
|
40
|
-
import { ScrollArea as
|
|
41
|
-
import { Select as
|
|
42
|
-
import { Separator as
|
|
43
|
-
import { Sheet as
|
|
44
|
-
import { Skeleton as
|
|
45
|
-
import { SkipLink as
|
|
46
|
-
import { Slider as
|
|
47
|
-
import { Spinner as
|
|
48
|
-
import { SocialIcon as
|
|
49
|
-
import { Switch as
|
|
50
|
-
import { Table as
|
|
51
|
-
import { Tabs as
|
|
52
|
-
import { Textarea as
|
|
53
|
-
import { Toaster as
|
|
54
|
-
import { Toggle as
|
|
55
|
-
import { ToggleGroup as
|
|
56
|
-
import { Tooltip as
|
|
57
|
-
import { AdminSideNav as
|
|
58
|
-
import { AdminHeader as
|
|
59
|
-
import { CoachMark as
|
|
60
|
-
import { Combobox as
|
|
61
|
-
import { BannerCarousel as
|
|
62
|
-
import { ContentCarousel as
|
|
63
|
-
import { MultiSelect as
|
|
64
|
-
import { StickyActionBar as
|
|
65
|
-
import { BottomTabBar as
|
|
66
|
-
import { BulkActionBar as
|
|
67
|
-
import { CategoryShortcuts as
|
|
68
|
-
import { CategoryScroll as
|
|
69
|
-
import { ChatComposer as
|
|
70
|
-
import { Chip as
|
|
71
|
-
import { Prose as
|
|
72
|
-
import { ContentCard as
|
|
73
|
-
import { StandardPageShell as
|
|
74
|
-
import { EmptyState as
|
|
75
|
-
import { DatePicker as
|
|
76
|
-
import { ErrorState as
|
|
77
|
-
import { FilterBar as
|
|
78
|
-
import { Footer as
|
|
79
|
-
import { FormField as
|
|
80
|
-
import { FunnelShell as
|
|
81
|
-
import { Header as
|
|
82
|
-
import { ImageCarousel as
|
|
83
|
-
import { ImageGallery as
|
|
84
|
-
import { ImageInput as
|
|
85
|
-
import { ImageUploader as
|
|
86
|
-
import { KebabMenu as
|
|
87
|
-
import { ListItem as
|
|
88
|
-
import { MenuDrawer as
|
|
89
|
-
import { SubNav as
|
|
90
|
-
import { NotificationBadge as
|
|
91
|
-
import { NotificationList as
|
|
92
|
-
import { PriceDisplay as
|
|
93
|
-
import { ProgressSteps as
|
|
94
|
-
import { Timeline as
|
|
95
|
-
import { NumberInput as
|
|
96
|
-
import { SearchBar as
|
|
97
|
-
import { SearchPanel as
|
|
98
|
-
import { Container as
|
|
99
|
-
import { Section as
|
|
100
|
-
import { SectionHeader as
|
|
101
|
-
import { SectionNav as
|
|
102
|
-
import { ShareButtons as
|
|
103
|
-
import { SideNav as
|
|
104
|
-
import { SocialLoginButton as
|
|
105
|
-
import { StatusCountTabs as
|
|
106
|
-
import { Tag as
|
|
107
|
-
import { WorkspaceShell as
|
|
108
|
-
import { AdminShell as
|
|
109
|
-
import { AnniversaryCard as
|
|
110
|
-
import { CakeLogo as
|
|
111
|
-
import { ChartControls as
|
|
112
|
-
import { CountdownTimer as
|
|
113
|
-
import { CouponCard as
|
|
114
|
-
import { DeliveryCalendar as
|
|
115
|
-
import { mypageMenuGroups as
|
|
116
|
-
import { OrderSection as
|
|
117
|
-
import { OrderSummary as
|
|
118
|
-
import { CreditCardIcon as
|
|
119
|
-
import { ProductCard as
|
|
120
|
-
import { ProductCarousel as
|
|
121
|
-
import { ProductCTA as
|
|
122
|
-
import { ProductDetailBar as
|
|
123
|
-
import { ProductDetailSidebar as
|
|
124
|
-
import { ProductListItem as
|
|
125
|
-
import { OptionImageUpload as
|
|
126
|
-
import { RatingStars as
|
|
127
|
-
import { ReviewCard as
|
|
128
|
-
import { ReviewForm as
|
|
129
|
-
import { ReviewItem as
|
|
130
|
-
import { MypageShell as
|
|
131
|
-
import { ShopCard as
|
|
132
|
-
import { StatCard as
|
|
133
|
-
import { chipVariants as
|
|
14
|
+
import { Card as ee, CardAction as oe, CardContent as re, CardDescription as te, CardFooter as ae, CardHeader as ne, CardTitle as ie, cardVariants as pe } from "./components/foundations/card.js";
|
|
15
|
+
import { Checkbox as me } from "./components/foundations/checkbox.js";
|
|
16
|
+
import { CheckboxCardGroup as ue, CheckboxCardItem as fe } from "./components/foundations/checkbox-card.js";
|
|
17
|
+
import { CheckboxGroup as ge, CheckboxGroupItem as Ce } from "./components/foundations/checkbox-group.js";
|
|
18
|
+
import { Collapsible as se, CollapsibleContent as be, CollapsibleTrigger as Se } from "./components/foundations/collapsible.js";
|
|
19
|
+
import { Command as Te, CommandDialog as Me, CommandEmpty as Ie, CommandGroup as ve, CommandInput as he, CommandItem as Fe, CommandList as Pe, CommandSeparator as we, CommandShortcut as Ae } from "./components/foundations/command.js";
|
|
20
|
+
import { ContextMenu as Be, ContextMenuCheckboxItem as Re, ContextMenuContent as ye, ContextMenuGroup as Le, ContextMenuItem as Ne, ContextMenuLabel as Ge, ContextMenuPortal as He, ContextMenuRadioGroup as Ve, ContextMenuRadioItem as Oe, ContextMenuSeparator as Ee, ContextMenuShortcut as Ue, ContextMenuSub as _e, ContextMenuSubContent as We, ContextMenuSubTrigger as Qe, ContextMenuTrigger as ze } from "./components/foundations/context-menu.js";
|
|
21
|
+
import { DataTable as je, DataTableActionCell as qe, DataTableAddRow as Je, DataTableAvatarCell as Xe, DataTableBody as Ye, DataTableBulkActions as Ze, DataTableCell as $e, DataTableCheckboxCell as eo, DataTableDragHandleCell as oo, DataTableEmptyState as ro, DataTableHead as to, DataTableHeader as ao, DataTableImageCell as no, DataTableInputCell as io, DataTableLinkCell as po, DataTableNumberCell as lo, DataTableRow as mo, DataTableSectionRow as xo, DataTableSelectCell as uo, DataTableTable as fo } from "./components/foundations/data-table.js";
|
|
22
|
+
import { Dialog as Co, DialogClose as co, DialogContent as so, DialogDescription as bo, DialogFooter as So, DialogHeader as Do, DialogOverlay as To, DialogPortal as Mo, DialogTitle as Io, DialogTrigger as vo } from "./components/foundations/dialog.js";
|
|
23
|
+
import { Drawer as Fo, DrawerClose as Po, DrawerContent as wo, DrawerDescription as Ao, DrawerFooter as ko, DrawerHeader as Bo, DrawerOverlay as Ro, DrawerPortal as yo, DrawerTitle as Lo, DrawerTrigger as No } from "./components/foundations/drawer.js";
|
|
24
|
+
import { DropdownMenu as Ho, DropdownMenuCheckboxItem as Vo, DropdownMenuContent as Oo, DropdownMenuGroup as Eo, DropdownMenuItem as Uo, DropdownMenuLabel as _o, DropdownMenuPortal as Wo, DropdownMenuRadioGroup as Qo, DropdownMenuRadioItem as zo, DropdownMenuSeparator as Ko, DropdownMenuShortcut as jo, DropdownMenuSub as qo, DropdownMenuSubContent as Jo, DropdownMenuSubTrigger as Xo, DropdownMenuTrigger as Yo } from "./components/foundations/dropdown-menu.js";
|
|
25
|
+
import { Field as $o, FieldDescription as er, FieldError as or, FieldGroup as rr, FieldLabel as tr, FieldLegend as ar, FieldSeparator as nr, FieldSet as ir, fieldVariants as pr } from "./components/foundations/field.js";
|
|
26
|
+
import { FileInput as mr, formatFileNames as xr, validateFileSize as ur } from "./components/foundations/file-input.js";
|
|
27
|
+
import { Form as dr, FormControl as gr, FormDescription as Cr, FormField as cr, FormItem as sr, FormLabel as br, FormMessage as Sr, useFormField as Dr } from "./components/foundations/form.js";
|
|
28
|
+
import { HoverCard as Mr, HoverCardContent as Ir, HoverCardTrigger as vr } from "./components/foundations/hover-card.js";
|
|
29
|
+
import { IconBadge as Fr, iconBadgeVariants as Pr } from "./components/foundations/icon-badge.js";
|
|
30
|
+
import { Input as Ar } from "./components/foundations/input.js";
|
|
31
|
+
import { Label as Br } from "./components/foundations/label.js";
|
|
32
|
+
import { Menubar as yr, MenubarCheckboxItem as Lr, MenubarContent as Nr, MenubarGroup as Gr, MenubarItem as Hr, MenubarLabel as Vr, MenubarMenu as Or, MenubarPortal as Er, MenubarRadioGroup as Ur, MenubarRadioItem as _r, MenubarSeparator as Wr, MenubarShortcut as Qr, MenubarSub as zr, MenubarSubContent as Kr, MenubarSubTrigger as jr, MenubarTrigger as qr } from "./components/foundations/menubar.js";
|
|
33
|
+
import { NavigationMenu as Xr, NavigationMenuContent as Yr, NavigationMenuIndicator as Zr, NavigationMenuItem as $r, NavigationMenuLink as et, NavigationMenuList as ot, NavigationMenuTrigger as rt, NavigationMenuViewport as tt, navigationMenuTriggerStyle as at } from "./components/foundations/navigation-menu.js";
|
|
34
|
+
import { Pagination as it, PaginationContent as pt, PaginationEllipsis as lt, PaginationItem as mt, PaginationLink as xt, PaginationNext as ut, PaginationPrevious as ft } from "./components/foundations/pagination.js";
|
|
35
|
+
import { getPaginationRange as gt } from "./lib/pagination-range.js";
|
|
36
|
+
import { Popover as ct, PopoverAnchor as st, PopoverContent as bt, PopoverTrigger as St } from "./components/foundations/popover.js";
|
|
37
|
+
import { Progress as Tt } from "./components/foundations/progress.js";
|
|
38
|
+
import { ResponsiveDialog as It, ResponsiveDialogClose as vt, ResponsiveDialogContent as ht, ResponsiveDialogDescription as Ft, ResponsiveDialogFooter as Pt, ResponsiveDialogHeader as wt, ResponsiveDialogTitle as At, ResponsiveDialogTrigger as kt, useIsMobile as Bt } from "./components/foundations/responsive-dialog.js";
|
|
39
|
+
import { RadioGroup as yt, RadioGroupItem as Lt } from "./components/foundations/radio-group.js";
|
|
40
|
+
import { ScrollArea as Gt, ScrollBar as Ht } from "./components/foundations/scroll-area.js";
|
|
41
|
+
import { Select as Ot, SelectContent as Et, SelectGroup as Ut, SelectItem as _t, SelectLabel as Wt, SelectScrollDownButton as Qt, SelectScrollUpButton as zt, SelectSeparator as Kt, SelectTrigger as jt, SelectValue as qt } from "./components/foundations/select.js";
|
|
42
|
+
import { Separator as Xt } from "./components/foundations/separator.js";
|
|
43
|
+
import { Sheet as Zt, SheetClose as $t, SheetContent as ea, SheetDescription as oa, SheetFooter as ra, SheetHeader as ta, SheetTitle as aa, SheetTrigger as na } from "./components/foundations/sheet.js";
|
|
44
|
+
import { Skeleton as pa } from "./components/foundations/skeleton.js";
|
|
45
|
+
import { SkipLink as ma } from "./components/foundations/skip-link.js";
|
|
46
|
+
import { Slider as ua } from "./components/foundations/slider.js";
|
|
47
|
+
import { Spinner as da } from "./components/foundations/spinner.js";
|
|
48
|
+
import { SocialIcon as Ca } from "./components/foundations/social-icon.js";
|
|
49
|
+
import { Switch as sa } from "./components/foundations/switch.js";
|
|
50
|
+
import { Table as Sa, TableBody as Da, TableCaption as Ta, TableCell as Ma, TableFooter as Ia, TableHead as va, TableHeader as ha, TableRow as Fa } from "./components/foundations/table.js";
|
|
51
|
+
import { Tabs as wa, TabsContent as Aa, TabsList as ka, TabsTrigger as Ba } from "./components/foundations/tabs.js";
|
|
52
|
+
import { Textarea as ya } from "./components/foundations/textarea.js";
|
|
53
|
+
import { Toaster as Na } from "./components/foundations/sonner.js";
|
|
54
|
+
import { Toggle as Ha, toggleVariants as Va } from "./components/foundations/toggle.js";
|
|
55
|
+
import { ToggleGroup as Ea, ToggleGroupItem as Ua } from "./components/foundations/toggle-group.js";
|
|
56
|
+
import { Tooltip as Wa, TooltipContent as Qa, TooltipProvider as za, TooltipTrigger as Ka } from "./components/foundations/tooltip.js";
|
|
57
|
+
import { AdminSideNav as qa } from "./components/primitives/admin-side-nav.js";
|
|
58
|
+
import { AdminHeader as Xa } from "./components/primitives/admin-header.js";
|
|
59
|
+
import { CoachMark as Za } from "./components/primitives/coach-mark.js";
|
|
60
|
+
import { Combobox as en } from "./components/primitives/combobox.js";
|
|
61
|
+
import { BannerCarousel as rn } from "./components/primitives/banner-carousel.js";
|
|
62
|
+
import { ContentCarousel as an } from "./components/primitives/content-carousel.js";
|
|
63
|
+
import { MultiSelect as pn } from "./components/primitives/multi-select.js";
|
|
64
|
+
import { StickyActionBar as mn } from "./components/primitives/sticky-action-bar.js";
|
|
65
|
+
import { BottomTabBar as un } from "./components/primitives/bottom-tab-bar.js";
|
|
66
|
+
import { BulkActionBar as dn } from "./components/primitives/bulk-action-bar.js";
|
|
67
|
+
import { CategoryShortcuts as Cn } from "./components/primitives/category-shortcuts.js";
|
|
68
|
+
import { CategoryScroll as sn } from "./components/primitives/category-scroll.js";
|
|
69
|
+
import { ChatComposer as Sn } from "./components/primitives/chat-composer.js";
|
|
70
|
+
import { Chip as Tn } from "./components/primitives/chip.js";
|
|
71
|
+
import { Prose as In } from "./components/primitives/prose.js";
|
|
72
|
+
import { ContentCard as hn, ContentList as Fn } from "./components/primitives/content-card.js";
|
|
73
|
+
import { StandardPageShell as wn, StandardPageShell as An } from "./components/primitives/standard-page-shell.js";
|
|
74
|
+
import { EmptyState as Bn } from "./components/primitives/empty-state.js";
|
|
75
|
+
import { DatePicker as yn, DateTimePicker as Ln } from "./components/primitives/date-picker.js";
|
|
76
|
+
import { ErrorState as Gn, NotFoundIllustration as Hn } from "./components/primitives/error-state.js";
|
|
77
|
+
import { FilterBar as On } from "./components/primitives/filter-bar.js";
|
|
78
|
+
import { Footer as Un } from "./components/primitives/footer.js";
|
|
79
|
+
import { FormField as Wn } from "./components/primitives/form-field.js";
|
|
80
|
+
import { FunnelShell as zn } from "./components/primitives/funnel-shell.js";
|
|
81
|
+
import { Header as jn } from "./components/primitives/header.js";
|
|
82
|
+
import { ImageCarousel as Jn } from "./components/primitives/image-carousel.js";
|
|
83
|
+
import { ImageGallery as Yn } from "./components/primitives/image-gallery.js";
|
|
84
|
+
import { ImageInput as $n, imageInputPreviewVariants as ei } from "./components/primitives/image-input.js";
|
|
85
|
+
import { ImageUploader as ri } from "./components/primitives/image-uploader.js";
|
|
86
|
+
import { KebabMenu as ai } from "./components/primitives/kebab-menu.js";
|
|
87
|
+
import { ListItem as ii } from "./components/primitives/list-item.js";
|
|
88
|
+
import { MenuDrawer as li } from "./components/primitives/menu-drawer.js";
|
|
89
|
+
import { SubNav as xi } from "./components/primitives/sub-nav.js";
|
|
90
|
+
import { NotificationBadge as fi, notificationBadgeVariants as di } from "./components/primitives/notification-badge.js";
|
|
91
|
+
import { NotificationList as Ci } from "./components/primitives/notification-list.js";
|
|
92
|
+
import { PriceDisplay as si, priceDisplayVariants as bi } from "./components/primitives/price-display.js";
|
|
93
|
+
import { ProgressSteps as Di } from "./components/primitives/progress-steps.js";
|
|
94
|
+
import { Timeline as Mi } from "./components/primitives/timeline.js";
|
|
95
|
+
import { NumberInput as vi, QuantitySelector as hi } from "./components/primitives/number-input.js";
|
|
96
|
+
import { SearchBar as Pi } from "./components/primitives/search-bar.js";
|
|
97
|
+
import { SearchPanel as Ai } from "./components/primitives/search-panel.js";
|
|
98
|
+
import { Container as Bi, containerVariants as Ri } from "./components/primitives/container.js";
|
|
99
|
+
import { Section as Li, sectionScrimVariants as Ni, sectionVariants as Gi } from "./components/primitives/section.js";
|
|
100
|
+
import { SectionHeader as Vi } from "./components/primitives/section-header.js";
|
|
101
|
+
import { SectionNav as Ei } from "./components/primitives/section-nav.js";
|
|
102
|
+
import { ShareButtons as _i } from "./components/primitives/share-buttons.js";
|
|
103
|
+
import { SideNav as Qi } from "./components/primitives/side-nav.js";
|
|
104
|
+
import { SocialLoginButton as Ki } from "./components/primitives/social-login-button.js";
|
|
105
|
+
import { StatusCountTabs as qi } from "./components/primitives/status-count-tabs.js";
|
|
106
|
+
import { Tag as Xi, tagVariants as Yi } from "./components/primitives/tag.js";
|
|
107
|
+
import { WorkspaceShell as $i, WorkspaceShell as ep } from "./components/primitives/workspace-shell.js";
|
|
108
|
+
import { AdminShell as rp, AdminShell as tp, MissingComponent as ap } from "./components/ec/admin-shell.js";
|
|
109
|
+
import { AnniversaryCard as ip } from "./components/ec/anniversary-card.js";
|
|
110
|
+
import { CakeLogo as lp } from "./components/ec/cake-logo.js";
|
|
111
|
+
import { ChartControls as xp } from "./components/ec/chart-controls.js";
|
|
112
|
+
import { CountdownTimer as fp } from "./components/ec/countdown-timer.js";
|
|
113
|
+
import { CouponCard as gp } from "./components/ec/coupon-card.js";
|
|
114
|
+
import { DeliveryCalendar as cp } from "./components/ec/delivery-calendar.js";
|
|
115
|
+
import { mypageMenuGroups as bp } from "./components/ec/_mypage-menu-data.js";
|
|
116
|
+
import { OrderSection as Dp } from "./components/ec/order-section.js";
|
|
117
|
+
import { OrderSummary as Mp } from "./components/ec/order-summary.js";
|
|
118
|
+
import { CreditCardIcon as vp, PaymentMethodDisplay as hp } from "./components/ec/payment-method.js";
|
|
119
|
+
import { BookmarkRibbonIcon as Pp, ProductCard as wp } from "./components/ec/product-card.js";
|
|
120
|
+
import { ProductCarousel as kp } from "./components/ec/product-carousel.js";
|
|
121
|
+
import { ProductCTA as Rp } from "./components/ec/product-cta.js";
|
|
122
|
+
import { ProductDetailBar as Lp } from "./components/ec/product-detail-bar.js";
|
|
123
|
+
import { ProductDetailSidebar as Gp } from "./components/ec/product-detail-sidebar.js";
|
|
124
|
+
import { ProductListItem as Vp } from "./components/ec/product-list-item.js";
|
|
125
|
+
import { OptionImageUpload as Ep, OptionQuantity as Up, OptionSelect as _p, OptionText as Wp, ProductOption as Qp } from "./components/ec/product-option.js";
|
|
126
|
+
import { RatingStars as Kp, SparkleIcon as jp } from "./components/ec/rating-stars.js";
|
|
127
|
+
import { ReviewCard as Jp } from "./components/ec/review-card.js";
|
|
128
|
+
import { ReviewForm as Yp } from "./components/ec/review-form.js";
|
|
129
|
+
import { ReviewItem as $p, ReviewSummary as el } from "./components/ec/review-summary.js";
|
|
130
|
+
import { MypageShell as rl } from "./components/ec/mypage-shell.js";
|
|
131
|
+
import { ShopCard as al } from "./components/ec/shop-card.js";
|
|
132
|
+
import { StatCard as il } from "./components/ec/stat-card.js";
|
|
133
|
+
import { chipVariants as ll } from "./components/foundations/chip-variants.js";
|
|
134
134
|
export {
|
|
135
135
|
u as Accordion,
|
|
136
136
|
f as AccordionContent,
|
|
137
137
|
d as AccordionItem,
|
|
138
138
|
g as AccordionTrigger,
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
139
|
+
Xa as AdminHeader,
|
|
140
|
+
rp as AdminLayout,
|
|
141
|
+
tp as AdminShell,
|
|
142
|
+
qa as AdminSideNav,
|
|
143
|
+
c as Alert,
|
|
144
|
+
s as AlertDescription,
|
|
145
145
|
D as AlertDialog,
|
|
146
|
-
|
|
147
|
-
|
|
146
|
+
T as AlertDialogAction,
|
|
147
|
+
M as AlertDialogCancel,
|
|
148
148
|
I as AlertDialogContent,
|
|
149
149
|
v as AlertDialogDescription,
|
|
150
150
|
h as AlertDialogFooter,
|
|
@@ -152,16 +152,17 @@ export {
|
|
|
152
152
|
P as AlertDialogOverlay,
|
|
153
153
|
w as AlertDialogPortal,
|
|
154
154
|
A as AlertDialogTitle,
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
155
|
+
k as AlertDialogTrigger,
|
|
156
|
+
b as AlertTitle,
|
|
157
|
+
ip as AnniversaryCard,
|
|
158
|
+
R as AspectRatio,
|
|
159
159
|
L as Avatar,
|
|
160
160
|
N as AvatarFallback,
|
|
161
161
|
G as AvatarImage,
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
162
|
+
V as Badge,
|
|
163
|
+
rn as BannerCarousel,
|
|
164
|
+
Pp as BookmarkRibbonIcon,
|
|
165
|
+
un as BottomTabBar,
|
|
165
166
|
U as Breadcrumb,
|
|
166
167
|
_ as BreadcrumbEllipsis,
|
|
167
168
|
W as BreadcrumbItem,
|
|
@@ -169,308 +170,327 @@ export {
|
|
|
169
170
|
z as BreadcrumbList,
|
|
170
171
|
K as BreadcrumbPage,
|
|
171
172
|
j as BreadcrumbSeparator,
|
|
172
|
-
|
|
173
|
+
dn as BulkActionBar,
|
|
173
174
|
J as Button,
|
|
174
|
-
|
|
175
|
-
|
|
175
|
+
Wn as CakeFormField,
|
|
176
|
+
lp as CakeLogo,
|
|
176
177
|
Z as Calendar,
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
178
|
+
ee as Card,
|
|
179
|
+
oe as CardAction,
|
|
180
|
+
re as CardContent,
|
|
181
|
+
te as CardDescription,
|
|
182
|
+
ae as CardFooter,
|
|
183
|
+
ne as CardHeader,
|
|
184
|
+
ie as CardTitle,
|
|
185
|
+
sn as CategoryScroll,
|
|
186
|
+
Cn as CategoryShortcuts,
|
|
187
|
+
xp as ChartControls,
|
|
188
|
+
Sn as ChatComposer,
|
|
189
|
+
me as Checkbox,
|
|
190
|
+
ue as CheckboxCardGroup,
|
|
191
|
+
fe as CheckboxCardItem,
|
|
192
|
+
ge as CheckboxGroup,
|
|
193
|
+
Ce as CheckboxGroupItem,
|
|
194
|
+
Tn as Chip,
|
|
195
|
+
Za as CoachMark,
|
|
196
|
+
se as Collapsible,
|
|
197
|
+
be as CollapsibleContent,
|
|
198
|
+
Se as CollapsibleTrigger,
|
|
199
|
+
en as Combobox,
|
|
200
|
+
Te as Command,
|
|
201
|
+
Me as CommandDialog,
|
|
202
|
+
Ie as CommandEmpty,
|
|
203
|
+
ve as CommandGroup,
|
|
204
|
+
he as CommandInput,
|
|
205
|
+
Fe as CommandItem,
|
|
206
|
+
Pe as CommandList,
|
|
207
|
+
we as CommandSeparator,
|
|
208
|
+
Ae as CommandShortcut,
|
|
209
|
+
Bi as Container,
|
|
210
|
+
hn as ContentCard,
|
|
211
|
+
an as ContentCarousel,
|
|
212
|
+
Fn as ContentList,
|
|
213
|
+
Be as ContextMenu,
|
|
214
|
+
Re as ContextMenuCheckboxItem,
|
|
215
|
+
ye as ContextMenuContent,
|
|
216
|
+
Le as ContextMenuGroup,
|
|
217
|
+
Ne as ContextMenuItem,
|
|
218
|
+
Ge as ContextMenuLabel,
|
|
219
|
+
He as ContextMenuPortal,
|
|
220
|
+
Ve as ContextMenuRadioGroup,
|
|
221
|
+
Oe as ContextMenuRadioItem,
|
|
222
|
+
Ee as ContextMenuSeparator,
|
|
223
|
+
Ue as ContextMenuShortcut,
|
|
224
|
+
_e as ContextMenuSub,
|
|
225
|
+
We as ContextMenuSubContent,
|
|
226
|
+
Qe as ContextMenuSubTrigger,
|
|
227
|
+
ze as ContextMenuTrigger,
|
|
228
|
+
fp as CountdownTimer,
|
|
229
|
+
gp as CouponCard,
|
|
230
|
+
vp as CreditCardIcon,
|
|
231
|
+
je as DataTable,
|
|
232
|
+
qe as DataTableActionCell,
|
|
233
|
+
Je as DataTableAddRow,
|
|
234
|
+
Xe as DataTableAvatarCell,
|
|
235
|
+
Ye as DataTableBody,
|
|
236
|
+
Ze as DataTableBulkActions,
|
|
237
|
+
$e as DataTableCell,
|
|
238
|
+
eo as DataTableCheckboxCell,
|
|
239
|
+
oo as DataTableDragHandleCell,
|
|
240
|
+
ro as DataTableEmptyState,
|
|
241
|
+
to as DataTableHead,
|
|
242
|
+
ao as DataTableHeader,
|
|
243
|
+
no as DataTableImageCell,
|
|
244
|
+
io as DataTableInputCell,
|
|
245
|
+
po as DataTableLinkCell,
|
|
246
|
+
lo as DataTableNumberCell,
|
|
247
|
+
mo as DataTableRow,
|
|
248
|
+
xo as DataTableSectionRow,
|
|
249
|
+
uo as DataTableSelectCell,
|
|
250
|
+
fo as DataTableTable,
|
|
251
|
+
yn as DatePicker,
|
|
252
|
+
Ln as DateTimePicker,
|
|
253
|
+
cp as DeliveryCalendar,
|
|
254
|
+
Co as Dialog,
|
|
255
|
+
co as DialogClose,
|
|
256
|
+
so as DialogContent,
|
|
257
|
+
bo as DialogDescription,
|
|
258
|
+
So as DialogFooter,
|
|
259
|
+
Do as DialogHeader,
|
|
260
|
+
To as DialogOverlay,
|
|
261
|
+
Mo as DialogPortal,
|
|
262
|
+
Io as DialogTitle,
|
|
263
|
+
vo as DialogTrigger,
|
|
264
|
+
Fo as Drawer,
|
|
265
|
+
Po as DrawerClose,
|
|
266
|
+
wo as DrawerContent,
|
|
267
|
+
Ao as DrawerDescription,
|
|
268
|
+
ko as DrawerFooter,
|
|
269
|
+
Bo as DrawerHeader,
|
|
270
|
+
Ro as DrawerOverlay,
|
|
271
|
+
yo as DrawerPortal,
|
|
272
|
+
Lo as DrawerTitle,
|
|
273
|
+
No as DrawerTrigger,
|
|
274
|
+
Ho as DropdownMenu,
|
|
275
|
+
Vo as DropdownMenuCheckboxItem,
|
|
276
|
+
Oo as DropdownMenuContent,
|
|
277
|
+
Eo as DropdownMenuGroup,
|
|
278
|
+
Uo as DropdownMenuItem,
|
|
279
|
+
_o as DropdownMenuLabel,
|
|
280
|
+
Wo as DropdownMenuPortal,
|
|
281
|
+
Qo as DropdownMenuRadioGroup,
|
|
282
|
+
zo as DropdownMenuRadioItem,
|
|
283
|
+
Ko as DropdownMenuSeparator,
|
|
284
|
+
jo as DropdownMenuShortcut,
|
|
285
|
+
qo as DropdownMenuSub,
|
|
286
|
+
Jo as DropdownMenuSubContent,
|
|
287
|
+
Xo as DropdownMenuSubTrigger,
|
|
288
|
+
Yo as DropdownMenuTrigger,
|
|
289
|
+
wn as EcPageShell,
|
|
290
|
+
Bn as EmptyState,
|
|
291
|
+
Gn as ErrorState,
|
|
272
292
|
n as FOCUS_RING,
|
|
273
293
|
i as FOCUS_RING_INSET,
|
|
274
294
|
p as FOCUS_RING_WITHIN,
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
295
|
+
$o as Field,
|
|
296
|
+
er as FieldDescription,
|
|
297
|
+
or as FieldError,
|
|
298
|
+
rr as FieldGroup,
|
|
299
|
+
tr as FieldLabel,
|
|
300
|
+
ar as FieldLegend,
|
|
301
|
+
nr as FieldSeparator,
|
|
302
|
+
ir as FieldSet,
|
|
303
|
+
mr as FileInput,
|
|
304
|
+
On as FilterBar,
|
|
305
|
+
Un as Footer,
|
|
306
|
+
dr as Form,
|
|
307
|
+
gr as FormControl,
|
|
308
|
+
Cr as FormDescription,
|
|
309
|
+
cr as FormField,
|
|
310
|
+
sr as FormItem,
|
|
311
|
+
br as FormLabel,
|
|
312
|
+
Sr as FormMessage,
|
|
313
|
+
zn as FunnelShell,
|
|
314
|
+
jn as Header,
|
|
315
|
+
Mr as HoverCard,
|
|
316
|
+
Ir as HoverCardContent,
|
|
317
|
+
vr as HoverCardTrigger,
|
|
318
|
+
Fr as IconBadge,
|
|
319
|
+
Jn as ImageCarousel,
|
|
320
|
+
Yn as ImageGallery,
|
|
321
|
+
$n as ImageInput,
|
|
322
|
+
ri as ImageUploader,
|
|
323
|
+
Ar as Input,
|
|
324
|
+
ai as KebabMenu,
|
|
325
|
+
Br as Label,
|
|
326
|
+
ii as ListItem,
|
|
327
|
+
li as MenuDrawer,
|
|
328
|
+
yr as Menubar,
|
|
329
|
+
Lr as MenubarCheckboxItem,
|
|
330
|
+
Nr as MenubarContent,
|
|
331
|
+
Gr as MenubarGroup,
|
|
332
|
+
Hr as MenubarItem,
|
|
333
|
+
Vr as MenubarLabel,
|
|
334
|
+
Or as MenubarMenu,
|
|
335
|
+
Er as MenubarPortal,
|
|
336
|
+
Ur as MenubarRadioGroup,
|
|
337
|
+
_r as MenubarRadioItem,
|
|
338
|
+
Wr as MenubarSeparator,
|
|
339
|
+
Qr as MenubarShortcut,
|
|
340
|
+
zr as MenubarSub,
|
|
341
|
+
Kr as MenubarSubContent,
|
|
342
|
+
jr as MenubarSubTrigger,
|
|
343
|
+
qr as MenubarTrigger,
|
|
344
|
+
ap as MissingComponent,
|
|
345
|
+
pn as MultiSelect,
|
|
346
|
+
rl as MypageShell,
|
|
347
|
+
Xr as NavigationMenu,
|
|
348
|
+
Yr as NavigationMenuContent,
|
|
349
|
+
Zr as NavigationMenuIndicator,
|
|
350
|
+
$r as NavigationMenuItem,
|
|
351
|
+
et as NavigationMenuLink,
|
|
352
|
+
ot as NavigationMenuList,
|
|
353
|
+
rt as NavigationMenuTrigger,
|
|
354
|
+
tt as NavigationMenuViewport,
|
|
355
|
+
Hn as NotFoundIllustration,
|
|
356
|
+
fi as NotificationBadge,
|
|
357
|
+
Ci as NotificationList,
|
|
358
|
+
vi as NumberInput,
|
|
359
|
+
Ep as OptionImageUpload,
|
|
360
|
+
Up as OptionQuantity,
|
|
361
|
+
_p as OptionSelect,
|
|
362
|
+
Wp as OptionText,
|
|
363
|
+
Dp as OrderSection,
|
|
364
|
+
Mp as OrderSummary,
|
|
365
|
+
it as Pagination,
|
|
366
|
+
pt as PaginationContent,
|
|
367
|
+
lt as PaginationEllipsis,
|
|
368
|
+
mt as PaginationItem,
|
|
369
|
+
xt as PaginationLink,
|
|
370
|
+
ut as PaginationNext,
|
|
371
|
+
ft as PaginationPrevious,
|
|
372
|
+
hp as PaymentMethodDisplay,
|
|
373
|
+
ct as Popover,
|
|
374
|
+
st as PopoverAnchor,
|
|
375
|
+
bt as PopoverContent,
|
|
376
|
+
St as PopoverTrigger,
|
|
377
|
+
si as PriceDisplay,
|
|
378
|
+
Rp as ProductCTA,
|
|
379
|
+
wp as ProductCard,
|
|
380
|
+
kp as ProductCarousel,
|
|
381
|
+
Lp as ProductDetailBar,
|
|
382
|
+
Gp as ProductDetailSidebar,
|
|
383
|
+
Vp as ProductListItem,
|
|
384
|
+
Qp as ProductOption,
|
|
385
|
+
Tt as Progress,
|
|
386
|
+
Di as ProgressSteps,
|
|
387
|
+
In as Prose,
|
|
388
|
+
hi as QuantitySelector,
|
|
389
|
+
yt as RadioGroup,
|
|
390
|
+
Lt as RadioGroupItem,
|
|
391
|
+
Kp as RatingStars,
|
|
392
|
+
It as ResponsiveDialog,
|
|
393
|
+
vt as ResponsiveDialogClose,
|
|
394
|
+
ht as ResponsiveDialogContent,
|
|
395
|
+
Ft as ResponsiveDialogDescription,
|
|
396
|
+
Pt as ResponsiveDialogFooter,
|
|
397
|
+
wt as ResponsiveDialogHeader,
|
|
398
|
+
At as ResponsiveDialogTitle,
|
|
399
|
+
kt as ResponsiveDialogTrigger,
|
|
400
|
+
Jp as ReviewCard,
|
|
401
|
+
Yp as ReviewForm,
|
|
402
|
+
$p as ReviewItem,
|
|
403
|
+
el as ReviewSummary,
|
|
404
|
+
Gt as ScrollArea,
|
|
405
|
+
Ht as ScrollBar,
|
|
406
|
+
Pi as SearchBar,
|
|
407
|
+
Ai as SearchPanel,
|
|
408
|
+
Li as Section,
|
|
409
|
+
Vi as SectionHeader,
|
|
410
|
+
Ei as SectionNav,
|
|
411
|
+
Ot as Select,
|
|
412
|
+
Et as SelectContent,
|
|
413
|
+
Ut as SelectGroup,
|
|
414
|
+
_t as SelectItem,
|
|
415
|
+
Wt as SelectLabel,
|
|
416
|
+
Qt as SelectScrollDownButton,
|
|
417
|
+
zt as SelectScrollUpButton,
|
|
418
|
+
Kt as SelectSeparator,
|
|
419
|
+
jt as SelectTrigger,
|
|
420
|
+
qt as SelectValue,
|
|
421
|
+
Xt as Separator,
|
|
422
|
+
_i as ShareButtons,
|
|
423
|
+
Zt as Sheet,
|
|
424
|
+
$t as SheetClose,
|
|
425
|
+
ea as SheetContent,
|
|
426
|
+
oa as SheetDescription,
|
|
427
|
+
ra as SheetFooter,
|
|
428
|
+
ta as SheetHeader,
|
|
429
|
+
aa as SheetTitle,
|
|
430
|
+
na as SheetTrigger,
|
|
431
|
+
al as ShopCard,
|
|
432
|
+
Qi as SideNav,
|
|
433
|
+
pa as Skeleton,
|
|
434
|
+
ma as SkipLink,
|
|
435
|
+
ua as Slider,
|
|
436
|
+
Ca as SocialIcon,
|
|
437
|
+
Ki as SocialLoginButton,
|
|
438
|
+
jp as SparkleIcon,
|
|
439
|
+
da as Spinner,
|
|
440
|
+
An as StandardPageShell,
|
|
441
|
+
il as StatCard,
|
|
442
|
+
qi as StatusCountTabs,
|
|
443
|
+
mn as StickyActionBar,
|
|
444
|
+
xi as SubNav,
|
|
445
|
+
sa as Switch,
|
|
446
|
+
Sa as Table,
|
|
447
|
+
Da as TableBody,
|
|
448
|
+
Ta as TableCaption,
|
|
449
|
+
Ma as TableCell,
|
|
450
|
+
Ia as TableFooter,
|
|
451
|
+
va as TableHead,
|
|
452
|
+
ha as TableHeader,
|
|
453
|
+
Fa as TableRow,
|
|
454
|
+
wa as Tabs,
|
|
455
|
+
Aa as TabsContent,
|
|
456
|
+
ka as TabsList,
|
|
457
|
+
Ba as TabsTrigger,
|
|
458
|
+
Xi as Tag,
|
|
459
|
+
ya as Textarea,
|
|
460
|
+
Mi as Timeline,
|
|
461
|
+
Na as Toaster,
|
|
462
|
+
Ha as Toggle,
|
|
463
|
+
Ea as ToggleGroup,
|
|
464
|
+
Ua as ToggleGroupItem,
|
|
465
|
+
Wa as Tooltip,
|
|
466
|
+
Qa as TooltipContent,
|
|
467
|
+
za as TooltipProvider,
|
|
468
|
+
Ka as TooltipTrigger,
|
|
469
|
+
$i as WorkspaceLayout,
|
|
470
|
+
ep as WorkspaceShell,
|
|
451
471
|
O as badgeVariants,
|
|
452
472
|
X as buttonVariants,
|
|
453
|
-
|
|
454
|
-
|
|
473
|
+
pe as cardVariants,
|
|
474
|
+
ll as chipVariants,
|
|
455
475
|
t as cn,
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
476
|
+
Ri as containerVariants,
|
|
477
|
+
pr as fieldVariants,
|
|
478
|
+
xr as formatFileNames,
|
|
479
|
+
gt as getPaginationRange,
|
|
480
|
+
Pr as iconBadgeVariants,
|
|
481
|
+
ei as imageInputPreviewVariants,
|
|
482
|
+
bp as mypageMenuGroups,
|
|
483
|
+
at as navigationMenuTriggerStyle,
|
|
484
|
+
di as notificationBadgeVariants,
|
|
485
|
+
bi as priceDisplayVariants,
|
|
486
|
+
Ni as sectionScrimVariants,
|
|
487
|
+
Gi as sectionVariants,
|
|
488
|
+
Yi as tagVariants,
|
|
489
|
+
m as toast,
|
|
490
|
+
Va as toggleVariants,
|
|
491
|
+
Dr as useFormField,
|
|
492
|
+
Bt as useIsMobile,
|
|
493
|
+
ur as validateFileSize
|
|
474
494
|
};
|
|
475
495
|
|
|
476
496
|
|
|
@@ -2365,7 +2385,8 @@ export {
|
|
|
2365
2385
|
// <div
|
|
2366
2386
|
// data-slot="order-summary"
|
|
2367
2387
|
// className={cn(
|
|
2368
|
-
//
|
|
2388
|
+
// // fixed 表示はスクロール内容の上に重なるため地は Surface-Elevated(disableFixed 側はページ内フローなので Surface-Primary のまま)
|
|
2389
|
+
// "fixed inset-x-0 bottom-[52px] z-[var(--Z-Sticky)] mx-auto max-w-[430px] border-t border-[var(--Border-Low-Emphasis)] bg-[var(--Surface-Elevated)]",
|
|
2369
2390
|
// className
|
|
2370
2391
|
// )}
|
|
2371
2392
|
// {...props}
|
|
@@ -5928,7 +5949,7 @@ export {
|
|
|
5928
5949
|
// // 画面端との余白は上下左右 40px(calc(100%-5rem))。
|
|
5929
5950
|
// // 幅上限は端末幅に応じて: SP は端末幅-80px に追従 / sm 以上は
|
|
5930
5951
|
// // default=480px(テキスト確認が間延びしない幅)・sm=320px
|
|
5931
|
-
// "group/alert-dialog-content fixed top-[50%] left-[50%] z-[var(--Z-Modal)] grid w-full max-w-[calc(100%-5rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border border-[var(--Border-Medium-Emphasis)] bg-
|
|
5952
|
+
// "group/alert-dialog-content fixed top-[50%] left-[50%] z-[var(--Z-Modal)] grid w-full max-w-[calc(100%-5rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border border-[var(--Border-Medium-Emphasis)] bg-[var(--Surface-Elevated)] p-6 shadow-lg duration-[var(--Motion-Duration-Base)] data-[size=sm]:max-w-xs data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[size=default]:sm:max-w-[480px]",
|
|
5932
5953
|
// className
|
|
5933
5954
|
// )}
|
|
5934
5955
|
// {...props}
|
|
@@ -8487,6 +8508,9 @@ export {
|
|
|
8487
8508
|
// <Checkbox
|
|
8488
8509
|
// checked={indeterminate ? "indeterminate" : checked}
|
|
8489
8510
|
// onCheckedChange={(v) => onCheckedChange?.(v === true)}
|
|
8511
|
+
// // Space で生成される click は pointer-events-none でも td へ伝播する。
|
|
8512
|
+
// // Checkbox が処理した選択をセル側で再度トグルしない。
|
|
8513
|
+
// onClick={(event) => event.stopPropagation()}
|
|
8490
8514
|
// aria-label={ariaLabel || "行を選択"}
|
|
8491
8515
|
// className="pointer-events-none"
|
|
8492
8516
|
// />
|
|
@@ -8993,7 +9017,7 @@ export {
|
|
|
8993
9017
|
// data-slot="dialog-content"
|
|
8994
9018
|
// onOpenAutoFocus={(e) => e.preventDefault()}
|
|
8995
9019
|
// className={cn(
|
|
8996
|
-
// "fixed top-[50%] left-[50%] z-[var(--Z-Modal)] grid w-[calc(100%_-_32px)] max-w-[calc(100%_-_32px)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-2xl bg-
|
|
9020
|
+
// "fixed top-[50%] left-[50%] z-[var(--Z-Modal)] grid w-[calc(100%_-_32px)] max-w-[calc(100%_-_32px)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-2xl bg-[var(--Surface-Elevated)] p-6 shadow-lg duration-[var(--Motion-Duration-Base)] outline-none focus-visible:ring-2 focus-visible:ring-[var(--Focus-High-Emphasis)] data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 sm:max-w-lg",
|
|
8997
9021
|
// className
|
|
8998
9022
|
// )}
|
|
8999
9023
|
// {...props}
|
|
@@ -9148,7 +9172,7 @@ export {
|
|
|
9148
9172
|
// <DrawerPrimitive.Content
|
|
9149
9173
|
// data-slot="drawer-content"
|
|
9150
9174
|
// className={cn(
|
|
9151
|
-
// "group/drawer-content fixed z-[var(--Z-Modal)] flex h-auto flex-col border-[var(--Border-Medium-Emphasis)] bg-
|
|
9175
|
+
// "group/drawer-content fixed z-[var(--Z-Modal)] flex h-auto flex-col border-[var(--Border-Medium-Emphasis)] bg-[var(--Surface-Elevated)]",
|
|
9152
9176
|
// "data-[vaul-drawer-direction=top]:inset-x-0 data-[vaul-drawer-direction=top]:top-0 data-[vaul-drawer-direction=top]:mb-24 data-[vaul-drawer-direction=top]:max-h-[80vh] data-[vaul-drawer-direction=top]:rounded-b-lg data-[vaul-drawer-direction=top]:border-b",
|
|
9153
9177
|
// "data-[vaul-drawer-direction=bottom]:inset-x-0 data-[vaul-drawer-direction=bottom]:bottom-0 data-[vaul-drawer-direction=bottom]:mt-24 data-[vaul-drawer-direction=bottom]:max-h-[80vh] data-[vaul-drawer-direction=bottom]:rounded-t-lg data-[vaul-drawer-direction=bottom]:border-t",
|
|
9154
9178
|
// "data-[vaul-drawer-direction=right]:inset-y-0 data-[vaul-drawer-direction=right]:right-0 data-[vaul-drawer-direction=right]:w-3/4 data-[vaul-drawer-direction=right]:border-l data-[vaul-drawer-direction=right]:sm:max-w-sm",
|
|
@@ -11801,7 +11825,7 @@ export {
|
|
|
11801
11825
|
// onCloseAutoFocus?.(e)
|
|
11802
11826
|
// }}
|
|
11803
11827
|
// className={cn(
|
|
11804
|
-
// "fixed z-[var(--Z-Modal)] flex flex-col gap-4 border-[var(--Border-Medium-Emphasis)] bg-
|
|
11828
|
+
// "fixed z-[var(--Z-Modal)] flex flex-col gap-4 border-[var(--Border-Medium-Emphasis)] bg-[var(--Surface-Elevated)] shadow-lg transition ease-in-out data-[state=closed]:animate-out data-[state=closed]:duration-[var(--Motion-Duration-Slow)] data-[state=open]:animate-in data-[state=open]:duration-[var(--Motion-Duration-Slower)]",
|
|
11805
11829
|
// side === "right" &&
|
|
11806
11830
|
// "inset-y-0 right-0 h-full w-3/4 border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right sm:max-w-sm",
|
|
11807
11831
|
// side === "left" &&
|
|
@@ -13014,7 +13038,7 @@ export {
|
|
|
13014
13038
|
// return (
|
|
13015
13039
|
// <header
|
|
13016
13040
|
// data-slot="admin-header"
|
|
13017
|
-
// className="fixed top-0 left-0 right-0 z-[var(--Z-Nav)] flex h-14 @md:h-16 items-center justify-between bg-[var(--Surface-
|
|
13041
|
+
// className="fixed top-0 left-0 right-0 z-[var(--Z-Nav)] flex h-14 @md:h-16 items-center justify-between bg-[var(--Surface-Elevated)] border-b border-[var(--Border-Low-Emphasis)] px-4 @md:px-6"
|
|
13018
13042
|
// >
|
|
13019
13043
|
// <div className="flex items-center gap-2 @md:gap-3">
|
|
13020
13044
|
// {onMenuClick && (
|
|
@@ -13051,6 +13075,13 @@ export {
|
|
|
13051
13075
|
// import ArrowDown2 from "iconsax-reactjs/dist/esm/ArrowDown2.js"
|
|
13052
13076
|
// import { XIcon } from "lucide-react"
|
|
13053
13077
|
//
|
|
13078
|
+
// import {
|
|
13079
|
+
// DropdownMenu,
|
|
13080
|
+
// DropdownMenuContent,
|
|
13081
|
+
// DropdownMenuItem,
|
|
13082
|
+
// DropdownMenuTrigger,
|
|
13083
|
+
// } from "@/components/foundations/dropdown-menu"
|
|
13084
|
+
// import { FOCUS_RING } from "@/lib/focus-ring"
|
|
13054
13085
|
// import { cn } from "@/lib/utils"
|
|
13055
13086
|
//
|
|
13056
13087
|
// // ============================================================
|
|
@@ -13139,6 +13170,9 @@ export {
|
|
|
13139
13170
|
// *
|
|
13140
13171
|
// * メイン項目・サブメニュー項目とも 44px(WCAG 2.5.5 の最小ターゲット)以上にする。
|
|
13141
13172
|
// * 行高が小さいテキストで縦 padding だけに頼ると割り込むため、`min-h-11` で下限を固定する。
|
|
13173
|
+
// * PC のサブメニューは `DropdownMenu` の Portal / collision handling を利用し、
|
|
13174
|
+
// * viewport 端では位置と最大高を自動調整する。hover ではフォーカスを奪わず、
|
|
13175
|
+
// * Enter / Space / ArrowDown / Escape では標準のメニュー操作に従う。
|
|
13142
13176
|
// *
|
|
13143
13177
|
// * ### インポート
|
|
13144
13178
|
// * ```tsx
|
|
@@ -13164,6 +13198,113 @@ export {
|
|
|
13164
13198
|
// ariaLabel = "管理メニュー",
|
|
13165
13199
|
// }: AdminSideNavProps) {
|
|
13166
13200
|
// const [openMenu, setOpenMenu] = React.useState<string | null>(null)
|
|
13201
|
+
// const hoverOpenedMenuRef = React.useRef<string | null>(null)
|
|
13202
|
+
// const hoverOpenedMenusRef = React.useRef(new Set<string>())
|
|
13203
|
+
// const focusedMenuTriggerRef = React.useRef<string | null>(null)
|
|
13204
|
+
// const pointerOpenedMenuRef = React.useRef<string | null>(null)
|
|
13205
|
+
// const pointerHoverBlockedMenuRef = React.useRef<string | null>(null)
|
|
13206
|
+
// const outsideDismissedMenuRef = React.useRef<string | null>(null)
|
|
13207
|
+
// const menuTriggerRefs = React.useRef(new Map<string, HTMLButtonElement>())
|
|
13208
|
+
// const firstMenuItemRefs = React.useRef(new Map<string, HTMLAnchorElement>())
|
|
13209
|
+
// const openTimerRef = React.useRef<ReturnType<typeof setTimeout> | null>(null)
|
|
13210
|
+
// const closeTimerRef = React.useRef<ReturnType<typeof setTimeout> | null>(null)
|
|
13211
|
+
// const desktopNavRef = React.useRef<HTMLElement | null>(null)
|
|
13212
|
+
//
|
|
13213
|
+
// const cancelScheduledClose = React.useCallback(() => {
|
|
13214
|
+
// if (closeTimerRef.current !== null) {
|
|
13215
|
+
// clearTimeout(closeTimerRef.current)
|
|
13216
|
+
// closeTimerRef.current = null
|
|
13217
|
+
// }
|
|
13218
|
+
// }, [])
|
|
13219
|
+
//
|
|
13220
|
+
// const cancelScheduledOpen = React.useCallback(() => {
|
|
13221
|
+
// if (openTimerRef.current !== null) {
|
|
13222
|
+
// clearTimeout(openTimerRef.current)
|
|
13223
|
+
// openTimerRef.current = null
|
|
13224
|
+
// }
|
|
13225
|
+
// }, [])
|
|
13226
|
+
//
|
|
13227
|
+
// const openMenuFromPointer = React.useCallback(
|
|
13228
|
+
// (key: string, pointerType: string) => {
|
|
13229
|
+
// if (pointerType === "touch") return
|
|
13230
|
+
// cancelScheduledOpen()
|
|
13231
|
+
// cancelScheduledClose()
|
|
13232
|
+
// openTimerRef.current = setTimeout(() => {
|
|
13233
|
+
// if (
|
|
13234
|
+
// pointerOpenedMenuRef.current !== null &&
|
|
13235
|
+
// pointerOpenedMenuRef.current !== key
|
|
13236
|
+
// ) {
|
|
13237
|
+
// pointerOpenedMenuRef.current = null
|
|
13238
|
+
// menuTriggerRefs.current.get(key)?.focus({ preventScroll: true })
|
|
13239
|
+
// }
|
|
13240
|
+
// hoverOpenedMenuRef.current = key
|
|
13241
|
+
// hoverOpenedMenusRef.current.add(key)
|
|
13242
|
+
// setOpenMenu(key)
|
|
13243
|
+
// openTimerRef.current = null
|
|
13244
|
+
// }, 80)
|
|
13245
|
+
// },
|
|
13246
|
+
// [cancelScheduledClose, cancelScheduledOpen],
|
|
13247
|
+
// )
|
|
13248
|
+
//
|
|
13249
|
+
// const schedulePointerClose = React.useCallback(
|
|
13250
|
+
// (key: string) => {
|
|
13251
|
+
// cancelScheduledOpen()
|
|
13252
|
+
// cancelScheduledClose()
|
|
13253
|
+
// closeTimerRef.current = setTimeout(() => {
|
|
13254
|
+
// setOpenMenu((current) => (current === key ? null : current))
|
|
13255
|
+
// closeTimerRef.current = null
|
|
13256
|
+
// }, 120)
|
|
13257
|
+
// },
|
|
13258
|
+
// [cancelScheduledClose, cancelScheduledOpen],
|
|
13259
|
+
// )
|
|
13260
|
+
//
|
|
13261
|
+
// const closeDesktopMenus = React.useCallback(() => {
|
|
13262
|
+
// cancelScheduledOpen()
|
|
13263
|
+
// cancelScheduledClose()
|
|
13264
|
+
// hoverOpenedMenuRef.current = null
|
|
13265
|
+
// hoverOpenedMenusRef.current.clear()
|
|
13266
|
+
// focusedMenuTriggerRef.current = null
|
|
13267
|
+
// pointerOpenedMenuRef.current = null
|
|
13268
|
+
// pointerHoverBlockedMenuRef.current = null
|
|
13269
|
+
// outsideDismissedMenuRef.current = null
|
|
13270
|
+
// setOpenMenu(null)
|
|
13271
|
+
// }, [cancelScheduledClose, cancelScheduledOpen])
|
|
13272
|
+
//
|
|
13273
|
+
// React.useEffect(
|
|
13274
|
+
// () => () => {
|
|
13275
|
+
// if (openTimerRef.current !== null) clearTimeout(openTimerRef.current)
|
|
13276
|
+
// if (closeTimerRef.current !== null) clearTimeout(closeTimerRef.current)
|
|
13277
|
+
// focusedMenuTriggerRef.current = null
|
|
13278
|
+
// pointerOpenedMenuRef.current = null
|
|
13279
|
+
// pointerHoverBlockedMenuRef.current = null
|
|
13280
|
+
// outsideDismissedMenuRef.current = null
|
|
13281
|
+
// menuTriggerRefs.current.clear()
|
|
13282
|
+
// firstMenuItemRefs.current.clear()
|
|
13283
|
+
// },
|
|
13284
|
+
// [],
|
|
13285
|
+
// )
|
|
13286
|
+
//
|
|
13287
|
+
// React.useEffect(() => {
|
|
13288
|
+
// const nav = desktopNavRef.current
|
|
13289
|
+
// if (!nav || typeof ResizeObserver === "undefined") return
|
|
13290
|
+
//
|
|
13291
|
+
// const closeWhenHidden = () => {
|
|
13292
|
+
// const bounds = nav.getBoundingClientRect()
|
|
13293
|
+
// if (
|
|
13294
|
+
// getComputedStyle(nav).display === "none" ||
|
|
13295
|
+
// bounds.width === 0 ||
|
|
13296
|
+
// bounds.height === 0
|
|
13297
|
+
// ) {
|
|
13298
|
+
// closeDesktopMenus()
|
|
13299
|
+
// }
|
|
13300
|
+
// }
|
|
13301
|
+
//
|
|
13302
|
+
// const observer = new ResizeObserver(closeWhenHidden)
|
|
13303
|
+
// observer.observe(nav)
|
|
13304
|
+
// closeWhenHidden()
|
|
13305
|
+
//
|
|
13306
|
+
// return () => observer.disconnect()
|
|
13307
|
+
// }, [closeDesktopMenus])
|
|
13167
13308
|
//
|
|
13168
13309
|
// return (
|
|
13169
13310
|
// <>
|
|
@@ -13173,26 +13314,23 @@ export {
|
|
|
13173
13314
|
// (h-full だとヘッダー帯に重なるため使わない)。--Z-Sticky = 30 でヘッダーより背面。
|
|
13174
13315
|
// レールは @md 限定表示なので SP のヘッダー高さ h-14 は考慮しない。 */}
|
|
13175
13316
|
// <nav
|
|
13317
|
+
// ref={desktopNavRef}
|
|
13176
13318
|
// data-slot="admin-side-nav"
|
|
13177
13319
|
// aria-label={ariaLabel}
|
|
13178
|
-
// className="hidden @md:flex fixed left-0 top-16 bottom-0 z-[var(--Z-Sticky)] w-[72px] flex-col items-center bg-[var(--Surface-
|
|
13320
|
+
// className="hidden @md:flex fixed left-0 top-16 bottom-0 z-[var(--Z-Sticky)] w-[72px] flex-col items-center bg-[var(--Surface-Elevated)] border-r border-[var(--Border-Low-Emphasis)]"
|
|
13179
13321
|
// >
|
|
13180
13322
|
// {items.map((item) => {
|
|
13181
13323
|
// const isActive = activeKey === item.key
|
|
13182
13324
|
// const hasSubMenu = !!item.subMenus && item.subMenus.length > 0
|
|
13183
13325
|
// return (
|
|
13184
|
-
// <div
|
|
13185
|
-
// key={item.key}
|
|
13186
|
-
// className="relative"
|
|
13187
|
-
// onMouseEnter={() => setOpenMenu(hasSubMenu ? item.key : null)}
|
|
13188
|
-
// onMouseLeave={() => setOpenMenu(null)}
|
|
13189
|
-
// >
|
|
13326
|
+
// <div key={item.key} className="relative">
|
|
13190
13327
|
// {(() => {
|
|
13191
13328
|
// const triggerClass = cn(
|
|
13192
|
-
// "flex h-16 w-16 flex-col items-center justify-center gap-1 transition-colors",
|
|
13329
|
+
// "flex h-16 w-16 flex-col items-center justify-center gap-1 rounded-md transition-colors",
|
|
13193
13330
|
// isActive
|
|
13194
13331
|
// ? "text-[var(--Text-Accent-Primary)]"
|
|
13195
13332
|
// : "text-[var(--Text-Medium-Emphasis)] hover:text-[var(--Text-High-Emphasis)]",
|
|
13333
|
+
// FOCUS_RING,
|
|
13196
13334
|
// )
|
|
13197
13335
|
// const triggerContent = (
|
|
13198
13336
|
// <>
|
|
@@ -13202,6 +13340,175 @@ export {
|
|
|
13202
13340
|
// </span>
|
|
13203
13341
|
// </>
|
|
13204
13342
|
// )
|
|
13343
|
+
// if (hasSubMenu) {
|
|
13344
|
+
// return (
|
|
13345
|
+
// <DropdownMenu
|
|
13346
|
+
// modal={false}
|
|
13347
|
+
// open={openMenu === item.key}
|
|
13348
|
+
// onOpenChange={(nextOpen) => {
|
|
13349
|
+
// cancelScheduledClose()
|
|
13350
|
+
// if (nextOpen) {
|
|
13351
|
+
// if (outsideDismissedMenuRef.current === item.key) {
|
|
13352
|
+
// outsideDismissedMenuRef.current = null
|
|
13353
|
+
// }
|
|
13354
|
+
// hoverOpenedMenuRef.current = null
|
|
13355
|
+
// hoverOpenedMenusRef.current.delete(item.key)
|
|
13356
|
+
// setOpenMenu(item.key)
|
|
13357
|
+
// } else {
|
|
13358
|
+
// setOpenMenu((current) =>
|
|
13359
|
+
// current === item.key ? null : current,
|
|
13360
|
+
// )
|
|
13361
|
+
// }
|
|
13362
|
+
// }}
|
|
13363
|
+
// >
|
|
13364
|
+
// <DropdownMenuTrigger asChild>
|
|
13365
|
+
// <button
|
|
13366
|
+
// ref={(node) => {
|
|
13367
|
+
// if (node) {
|
|
13368
|
+
// menuTriggerRefs.current.set(item.key, node)
|
|
13369
|
+
// } else {
|
|
13370
|
+
// menuTriggerRefs.current.delete(item.key)
|
|
13371
|
+
// }
|
|
13372
|
+
// }}
|
|
13373
|
+
// type="button"
|
|
13374
|
+
// className={triggerClass}
|
|
13375
|
+
// onFocus={() => {
|
|
13376
|
+
// cancelScheduledOpen()
|
|
13377
|
+
// focusedMenuTriggerRef.current = item.key
|
|
13378
|
+
// if (hoverOpenedMenuRef.current === item.key) {
|
|
13379
|
+
// hoverOpenedMenuRef.current = null
|
|
13380
|
+
// }
|
|
13381
|
+
// hoverOpenedMenusRef.current.delete(item.key)
|
|
13382
|
+
// }}
|
|
13383
|
+
// onBlur={() => {
|
|
13384
|
+
// if (focusedMenuTriggerRef.current === item.key) {
|
|
13385
|
+
// focusedMenuTriggerRef.current = null
|
|
13386
|
+
// }
|
|
13387
|
+
// }}
|
|
13388
|
+
// onPointerEnter={(event) => {
|
|
13389
|
+
// if (
|
|
13390
|
+
// focusedMenuTriggerRef.current === item.key ||
|
|
13391
|
+
// pointerHoverBlockedMenuRef.current === item.key
|
|
13392
|
+
// ) {
|
|
13393
|
+
// return
|
|
13394
|
+
// }
|
|
13395
|
+
// openMenuFromPointer(item.key, event.pointerType)
|
|
13396
|
+
// }}
|
|
13397
|
+
// onPointerDownCapture={() => {
|
|
13398
|
+
// cancelScheduledOpen()
|
|
13399
|
+
// if (openMenu !== item.key) {
|
|
13400
|
+
// pointerOpenedMenuRef.current = item.key
|
|
13401
|
+
// }
|
|
13402
|
+
// }}
|
|
13403
|
+
// onPointerLeave={() => {
|
|
13404
|
+
// if (
|
|
13405
|
+
// pointerHoverBlockedMenuRef.current === item.key
|
|
13406
|
+
// ) {
|
|
13407
|
+
// pointerHoverBlockedMenuRef.current = null
|
|
13408
|
+
// }
|
|
13409
|
+
// schedulePointerClose(item.key)
|
|
13410
|
+
// }}
|
|
13411
|
+
// >
|
|
13412
|
+
// {triggerContent}
|
|
13413
|
+
// </button>
|
|
13414
|
+
// </DropdownMenuTrigger>
|
|
13415
|
+
// <DropdownMenuContent
|
|
13416
|
+
// side="right"
|
|
13417
|
+
// align="start"
|
|
13418
|
+
// sideOffset={0}
|
|
13419
|
+
// collisionPadding={8}
|
|
13420
|
+
// className="w-[240px] rounded-2xl p-2 shadow-menu"
|
|
13421
|
+
// onPointerEnter={cancelScheduledClose}
|
|
13422
|
+
// onPointerLeave={() => schedulePointerClose(item.key)}
|
|
13423
|
+
// onPointerMoveCapture={(event) => {
|
|
13424
|
+
// if (hoverOpenedMenuRef.current === item.key) {
|
|
13425
|
+
// event.preventDefault()
|
|
13426
|
+
// }
|
|
13427
|
+
// }}
|
|
13428
|
+
// onInteractOutside={(event) => {
|
|
13429
|
+
// const trigger = menuTriggerRefs.current.get(item.key)
|
|
13430
|
+
// if (
|
|
13431
|
+
// pointerOpenedMenuRef.current === item.key &&
|
|
13432
|
+
// event.target instanceof Node &&
|
|
13433
|
+
// !trigger?.contains(event.target)
|
|
13434
|
+
// ) {
|
|
13435
|
+
// outsideDismissedMenuRef.current = item.key
|
|
13436
|
+
// }
|
|
13437
|
+
// }}
|
|
13438
|
+
// {...{
|
|
13439
|
+
// onOpenAutoFocus: (event: Event) => {
|
|
13440
|
+
// if (hoverOpenedMenuRef.current === item.key) {
|
|
13441
|
+
// event.preventDefault()
|
|
13442
|
+
// } else if (
|
|
13443
|
+
// pointerOpenedMenuRef.current === item.key
|
|
13444
|
+
// ) {
|
|
13445
|
+
// event.preventDefault()
|
|
13446
|
+
// requestAnimationFrame(() => {
|
|
13447
|
+
// firstMenuItemRefs.current.get(item.key)?.focus()
|
|
13448
|
+
// })
|
|
13449
|
+
// }
|
|
13450
|
+
// },
|
|
13451
|
+
// }}
|
|
13452
|
+
// onCloseAutoFocus={(event) => {
|
|
13453
|
+
// if (hoverOpenedMenusRef.current.has(item.key)) {
|
|
13454
|
+
// event.preventDefault()
|
|
13455
|
+
// hoverOpenedMenusRef.current.delete(item.key)
|
|
13456
|
+
// if (hoverOpenedMenuRef.current === item.key) {
|
|
13457
|
+
// hoverOpenedMenuRef.current = null
|
|
13458
|
+
// }
|
|
13459
|
+
// }
|
|
13460
|
+
// if (pointerOpenedMenuRef.current === item.key) {
|
|
13461
|
+
// event.preventDefault()
|
|
13462
|
+
// pointerOpenedMenuRef.current = null
|
|
13463
|
+
// if (outsideDismissedMenuRef.current !== item.key) {
|
|
13464
|
+
// pointerHoverBlockedMenuRef.current = item.key
|
|
13465
|
+
// requestAnimationFrame(() => {
|
|
13466
|
+
// menuTriggerRefs.current.get(item.key)?.focus()
|
|
13467
|
+
// })
|
|
13468
|
+
// }
|
|
13469
|
+
// }
|
|
13470
|
+
// if (outsideDismissedMenuRef.current === item.key) {
|
|
13471
|
+
// outsideDismissedMenuRef.current = null
|
|
13472
|
+
// }
|
|
13473
|
+
// }}
|
|
13474
|
+
// >
|
|
13475
|
+
// {item.subMenus!.map((sub, index) => (
|
|
13476
|
+
// <DropdownMenuItem
|
|
13477
|
+
// key={sub.label}
|
|
13478
|
+
// asChild
|
|
13479
|
+
// className="min-h-11 px-4"
|
|
13480
|
+
// onPointerLeave={(event) => {
|
|
13481
|
+
// if (hoverOpenedMenuRef.current === item.key) {
|
|
13482
|
+
// event.preventDefault()
|
|
13483
|
+
// }
|
|
13484
|
+
// }}
|
|
13485
|
+
// >
|
|
13486
|
+
// <a
|
|
13487
|
+
// ref={
|
|
13488
|
+
// index === 0
|
|
13489
|
+
// ? (node) => {
|
|
13490
|
+
// if (node) {
|
|
13491
|
+
// firstMenuItemRefs.current.set(
|
|
13492
|
+
// item.key,
|
|
13493
|
+
// node,
|
|
13494
|
+
// )
|
|
13495
|
+
// } else {
|
|
13496
|
+
// firstMenuItemRefs.current.delete(item.key)
|
|
13497
|
+
// }
|
|
13498
|
+
// }
|
|
13499
|
+
// : undefined
|
|
13500
|
+
// }
|
|
13501
|
+
// href={sub.href}
|
|
13502
|
+
// >
|
|
13503
|
+
// {sub.label}
|
|
13504
|
+
// </a>
|
|
13505
|
+
// </DropdownMenuItem>
|
|
13506
|
+
// ))}
|
|
13507
|
+
// </DropdownMenuContent>
|
|
13508
|
+
// </DropdownMenu>
|
|
13509
|
+
// )
|
|
13510
|
+
// }
|
|
13511
|
+
//
|
|
13205
13512
|
// return item.href ? (
|
|
13206
13513
|
// <a
|
|
13207
13514
|
// href={item.href}
|
|
@@ -13216,23 +13523,6 @@ export {
|
|
|
13216
13523
|
// </button>
|
|
13217
13524
|
// )
|
|
13218
13525
|
// })()}
|
|
13219
|
-
// {/* Sub-menu popup */}
|
|
13220
|
-
// {hasSubMenu && openMenu === item.key && (
|
|
13221
|
-
// <div className="absolute left-full top-0 z-[var(--Z-Popover)] ml-0 w-[240px] rounded-2xl bg-[var(--Surface-Primary)] shadow-menu border border-[var(--Border-Low-Emphasis)] py-2">
|
|
13222
|
-
// {item.subMenus!.map((sub) => (
|
|
13223
|
-
// <a
|
|
13224
|
-
// key={sub.label}
|
|
13225
|
-
// href={sub.href}
|
|
13226
|
-
// // min-h-11 = 44px(WCAG 2.5.5 最小ターゲット)。
|
|
13227
|
-
// // py-2.5(10px×2) + typo-body-sm の行高 18px = 38px で 44px を割るため、
|
|
13228
|
-
// // 高さを min-h-11 で確保し flex で中央寄せする。
|
|
13229
|
-
// className="flex min-h-11 items-center px-4 py-2.5 typo-body-sm text-[var(--Text-High-Emphasis)] hover:bg-[var(--Surface-Secondary)] transition-colors"
|
|
13230
|
-
// >
|
|
13231
|
-
// {sub.label}
|
|
13232
|
-
// </a>
|
|
13233
|
-
// ))}
|
|
13234
|
-
// </div>
|
|
13235
|
-
// )}
|
|
13236
13526
|
// </div>
|
|
13237
13527
|
// )
|
|
13238
13528
|
// })}
|
|
@@ -13544,7 +13834,7 @@ export {
|
|
|
13544
13834
|
// data-slot="bottom-tab-bar"
|
|
13545
13835
|
// aria-label="メインナビゲーション"
|
|
13546
13836
|
// className={cn(
|
|
13547
|
-
// "fixed inset-x-0 bottom-0 z-[var(--Z-Floating)] border-t border-[var(--Border-Low-Emphasis)] bg-[var(--Surface-
|
|
13837
|
+
// "fixed inset-x-0 bottom-0 z-[var(--Z-Floating)] border-t border-[var(--Border-Low-Emphasis)] bg-[var(--Surface-Elevated)] pb-[env(safe-area-inset-bottom)] @md:hidden",
|
|
13548
13838
|
// className
|
|
13549
13839
|
// )}
|
|
13550
13840
|
// {...props}
|
|
@@ -17260,7 +17550,9 @@ export {
|
|
|
17260
17550
|
// : "sticky top-0 z-[var(--Z-Nav)]"
|
|
17261
17551
|
//
|
|
17262
17552
|
// const baseClass =
|
|
17263
|
-
//
|
|
17553
|
+
// // 地は Surface-Elevated: sticky バーはスクロールするコンテンツの上に重なるため
|
|
17554
|
+
// // 不透明が必須(dark の Surface-Primary は 10% 透過で下の文字が透ける)。light は同値
|
|
17555
|
+
// "border-b border-[var(--Border-Low-Emphasis)] bg-[var(--Surface-Elevated)]"
|
|
17264
17556
|
//
|
|
17265
17557
|
// const shellClass = cn(stickyClass, baseClass, className)
|
|
17266
17558
|
//
|
|
@@ -18358,6 +18650,8 @@ export {
|
|
|
18358
18650
|
// */
|
|
18359
18651
|
// import * as React from "react"
|
|
18360
18652
|
// import { cn } from "@/lib/utils"
|
|
18653
|
+
// import { FOCUS_RING_INSET } from "@/lib/focus-ring"
|
|
18654
|
+
// import { Button } from "@/components/foundations/button"
|
|
18361
18655
|
// import Add from "iconsax-reactjs/dist/esm/Add.js"
|
|
18362
18656
|
// import Trash from "iconsax-reactjs/dist/esm/Trash.js"
|
|
18363
18657
|
//
|
|
@@ -18409,14 +18703,25 @@ export {
|
|
|
18409
18703
|
// alt={image.alt}
|
|
18410
18704
|
// className="absolute inset-0 size-full object-cover"
|
|
18411
18705
|
// />
|
|
18412
|
-
// <div
|
|
18413
|
-
//
|
|
18414
|
-
//
|
|
18706
|
+
// <div
|
|
18707
|
+
// data-slot="image-uploader-remove-overlay"
|
|
18708
|
+
// className={cn(
|
|
18709
|
+
// "absolute inset-0 flex items-center justify-center bg-[var(--Surface-Overlay-Dark)] opacity-0 transition-opacity",
|
|
18710
|
+
// "group-hover:opacity-100 group-focus-within:opacity-100",
|
|
18711
|
+
// // タッチでは hover を待たず、写真を覆わない右上の操作として表示する。
|
|
18712
|
+
// "[@media(hover:none)]:items-start [@media(hover:none)]:justify-end [@media(hover:none)]:bg-transparent [@media(hover:none)]:p-1 [@media(hover:none)]:opacity-100",
|
|
18713
|
+
// )}
|
|
18714
|
+
// >
|
|
18715
|
+
// <Button
|
|
18716
|
+
// type="button"
|
|
18717
|
+
// variant="overlay"
|
|
18718
|
+
// size="icon-sm"
|
|
18719
|
+
// className="rounded-full [@media(hover:none)]:size-11"
|
|
18415
18720
|
// aria-label={`${image.alt}を削除`}
|
|
18416
18721
|
// onClick={() => onRemove?.(i)}
|
|
18417
18722
|
// >
|
|
18418
|
-
// <Trash size={16}
|
|
18419
|
-
// </
|
|
18723
|
+
// <Trash size={16} />
|
|
18724
|
+
// </Button>
|
|
18420
18725
|
// </div>
|
|
18421
18726
|
// <div className="absolute top-1 left-1 size-5 rounded bg-[var(--Primitive-Black-alpha-1000)]/60 text-[var(--Primitive-White-alpha-1000)] flex items-center justify-center typo-label-xs">
|
|
18422
18727
|
// {i + 1}
|
|
@@ -18426,7 +18731,11 @@ export {
|
|
|
18426
18731
|
//
|
|
18427
18732
|
// {canAdd && (
|
|
18428
18733
|
// <button
|
|
18429
|
-
//
|
|
18734
|
+
// type="button"
|
|
18735
|
+
// className={cn(
|
|
18736
|
+
// "aspect-square rounded-xl border-2 border-dashed border-[var(--Border-Medium-Emphasis)] flex flex-col items-center justify-center gap-1 hover:border-[var(--Border-Accent-Primary)] hover:bg-[var(--Surface-Accent-Primary-Light)] transition-colors",
|
|
18737
|
+
// FOCUS_RING_INSET,
|
|
18738
|
+
// )}
|
|
18430
18739
|
// onClick={onAdd}
|
|
18431
18740
|
// aria-label="画像を追加"
|
|
18432
18741
|
// >
|
|
@@ -21862,7 +22171,8 @@ export {
|
|
|
21862
22171
|
// <div
|
|
21863
22172
|
// data-slot="sticky-action-bar"
|
|
21864
22173
|
// className={cn(
|
|
21865
|
-
//
|
|
22174
|
+
// // Surface-Elevated: スクロール内容の上に重なる固定バーは不透明が必須(dark で透けない)
|
|
22175
|
+
// "sticky bottom-0 z-[var(--Z-Nav)] bg-[var(--Surface-Elevated)] px-4 py-3 pb-[max(0.75rem,env(safe-area-inset-bottom))]",
|
|
21866
22176
|
// bordered && "border-t border-[var(--Border-Low-Emphasis)]",
|
|
21867
22177
|
// className
|
|
21868
22178
|
// )}
|
|
@@ -23153,7 +23463,29 @@ export {
|
|
|
23153
23463
|
// export { Collapsible, CollapsibleContent, CollapsibleTrigger } from "./components/foundations/collapsible"
|
|
23154
23464
|
// export { Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut } from "./components/foundations/command"
|
|
23155
23465
|
// export { ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuPortal, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger } from "./components/foundations/context-menu"
|
|
23156
|
-
// export {
|
|
23466
|
+
// export {
|
|
23467
|
+
// DataTable,
|
|
23468
|
+
// DataTableTable,
|
|
23469
|
+
// DataTableHeader,
|
|
23470
|
+
// DataTableBody,
|
|
23471
|
+
// DataTableRow,
|
|
23472
|
+
// DataTableHead,
|
|
23473
|
+
// DataTableCell,
|
|
23474
|
+
// DataTableAvatarCell,
|
|
23475
|
+
// DataTableImageCell,
|
|
23476
|
+
// DataTableLinkCell,
|
|
23477
|
+
// DataTableCheckboxCell,
|
|
23478
|
+
// DataTableActionCell,
|
|
23479
|
+
// DataTableInputCell,
|
|
23480
|
+
// DataTableSelectCell,
|
|
23481
|
+
// DataTableNumberCell,
|
|
23482
|
+
// DataTableDragHandleCell,
|
|
23483
|
+
// DataTableBulkActions,
|
|
23484
|
+
// DataTableSectionRow,
|
|
23485
|
+
// DataTableAddRow,
|
|
23486
|
+
// DataTableEmptyState,
|
|
23487
|
+
// } from "./components/foundations/data-table"
|
|
23488
|
+
// export type { SortDirection } from "./components/foundations/data-table"
|
|
23157
23489
|
// export { Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger } from "./components/foundations/dialog"
|
|
23158
23490
|
// export { Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger } from "./components/foundations/drawer"
|
|
23159
23491
|
// export { DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger } from "./components/foundations/dropdown-menu"
|
|
@@ -23358,7 +23690,7 @@ export {
|
|
|
23358
23690
|
// export type { OrderSummaryProps, OrderSummaryLineItem } from "./components/ec/order-summary"
|
|
23359
23691
|
// export { PaymentMethodDisplay, CreditCardIcon } from "./components/ec/payment-method"
|
|
23360
23692
|
// export type { PaymentMethodDisplayProps, CreditCardIconProps, CreditCardBrand } from "./components/ec/payment-method"
|
|
23361
|
-
// export { ProductCard } from "./components/ec/product-card"
|
|
23693
|
+
// export { ProductCard, BookmarkRibbonIcon } from "./components/ec/product-card"
|
|
23362
23694
|
// export type { ProductCardProps } from "./components/ec/product-card"
|
|
23363
23695
|
// export { ProductCarousel } from "./components/ec/product-carousel"
|
|
23364
23696
|
// export type { ProductCarouselProps } from "./components/ec/product-carousel"
|
|
@@ -23552,6 +23884,15 @@ export {
|
|
|
23552
23884
|
// * 「リンク実装そのもの」を差し替える prop を共通の型で用意する。
|
|
23553
23885
|
// *
|
|
23554
23886
|
// * 例: `<Footer linkComponent={Link} … />`(next/link をそのまま渡せる)
|
|
23887
|
+
// *
|
|
23888
|
+
// * ⚠️ `Footer` / `MenuDrawer` は Client Component。React Server Components では
|
|
23889
|
+
// * Server Component からこの prop を渡すと client 境界を越えて関数を渡すことに
|
|
23890
|
+
// * なり、`Functions cannot be passed directly to Client Components` で落ちる。
|
|
23891
|
+
// * Next.js App Router では、この prop を使う呼び出し側を `"use client"` にする
|
|
23892
|
+
// * (エラーメッセージは `"use server"` を示唆するが、正解は逆)。
|
|
23893
|
+
// *
|
|
23894
|
+
// * `Pagination` / `SubNav` / `ContentCard` は Server Component のまま使えるため、
|
|
23895
|
+
// * この prop を使うだけで呼び出し側を `"use client"` にする必要はない。
|
|
23555
23896
|
// */
|
|
23556
23897
|
// export type LinkComponent = React.ComponentType<
|
|
23557
23898
|
// React.AnchorHTMLAttributes<HTMLAnchorElement> & { href: string }
|