@open-mercato/core 0.6.7-develop.6785.1.1dd7cfac55 → 0.6.7-develop.6795.1.8a3f27921c

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 (196) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/dist/generated/entities.ids.generated.js +1 -0
  3. package/dist/generated/entities.ids.generated.js.map +2 -2
  4. package/dist/modules/auth/backend/settings/page.js +14 -9
  5. package/dist/modules/auth/backend/settings/page.js.map +2 -2
  6. package/dist/modules/customers/cli.js +17 -7
  7. package/dist/modules/customers/cli.js.map +2 -2
  8. package/dist/modules/customers/components/detail/ScheduleActivityDialog.js +229 -216
  9. package/dist/modules/customers/components/detail/ScheduleActivityDialog.js.map +2 -2
  10. package/dist/modules/customers/search.js +50 -29
  11. package/dist/modules/customers/search.js.map +2 -2
  12. package/dist/modules/data_sync/api/mappings/[id]/route.js +22 -9
  13. package/dist/modules/data_sync/api/mappings/[id]/route.js.map +2 -2
  14. package/dist/modules/data_sync/api/mappings/route.js +13 -4
  15. package/dist/modules/data_sync/api/mappings/route.js.map +2 -2
  16. package/dist/modules/data_sync/api/options.js +7 -2
  17. package/dist/modules/data_sync/api/options.js.map +2 -2
  18. package/dist/modules/data_sync/api/run.js +7 -2
  19. package/dist/modules/data_sync/api/run.js.map +2 -2
  20. package/dist/modules/data_sync/api/runs/[id]/cancel.js +8 -3
  21. package/dist/modules/data_sync/api/runs/[id]/cancel.js.map +2 -2
  22. package/dist/modules/data_sync/api/runs/[id]/retry.js +7 -2
  23. package/dist/modules/data_sync/api/runs/[id]/retry.js.map +2 -2
  24. package/dist/modules/data_sync/api/runs/[id]/route.js +8 -3
  25. package/dist/modules/data_sync/api/runs/[id]/route.js.map +2 -2
  26. package/dist/modules/data_sync/api/runs.js +7 -2
  27. package/dist/modules/data_sync/api/runs.js.map +2 -2
  28. package/dist/modules/data_sync/api/schedules/[id]/route.js +19 -6
  29. package/dist/modules/data_sync/api/schedules/[id]/route.js.map +2 -2
  30. package/dist/modules/data_sync/api/schedules/route.js +13 -4
  31. package/dist/modules/data_sync/api/schedules/route.js.map +2 -2
  32. package/dist/modules/data_sync/api/validate.js +9 -4
  33. package/dist/modules/data_sync/api/validate.js.map +2 -2
  34. package/dist/modules/design_system/acl.js +9 -0
  35. package/dist/modules/design_system/acl.js.map +7 -0
  36. package/dist/modules/design_system/backend/design-system/page.js +11 -0
  37. package/dist/modules/design_system/backend/design-system/page.js.map +7 -0
  38. package/dist/modules/design_system/backend/design-system/page.meta.js +15 -0
  39. package/dist/modules/design_system/backend/design-system/page.meta.js.map +7 -0
  40. package/dist/modules/design_system/gallery/components/CodeSnippet.js +52 -0
  41. package/dist/modules/design_system/gallery/components/CodeSnippet.js.map +7 -0
  42. package/dist/modules/design_system/gallery/components/EntryCard.js +63 -0
  43. package/dist/modules/design_system/gallery/components/EntryCard.js.map +7 -0
  44. package/dist/modules/design_system/gallery/components/GalleryShell.js +163 -0
  45. package/dist/modules/design_system/gallery/components/GalleryShell.js.map +7 -0
  46. package/dist/modules/design_system/gallery/components/VariantPreview.js +9 -0
  47. package/dist/modules/design_system/gallery/components/VariantPreview.js.map +7 -0
  48. package/dist/modules/design_system/gallery/entries/banners.js +186 -0
  49. package/dist/modules/design_system/gallery/entries/banners.js.map +7 -0
  50. package/dist/modules/design_system/gallery/entries/buttons.js +361 -0
  51. package/dist/modules/design_system/gallery/entries/buttons.js.map +7 -0
  52. package/dist/modules/design_system/gallery/entries/charts.js +457 -0
  53. package/dist/modules/design_system/gallery/entries/charts.js.map +7 -0
  54. package/dist/modules/design_system/gallery/entries/dates.js +306 -0
  55. package/dist/modules/design_system/gallery/entries/dates.js.map +7 -0
  56. package/dist/modules/design_system/gallery/entries/detail.js +358 -0
  57. package/dist/modules/design_system/gallery/entries/detail.js.map +7 -0
  58. package/dist/modules/design_system/gallery/entries/display.js +785 -0
  59. package/dist/modules/design_system/gallery/entries/display.js.map +7 -0
  60. package/dist/modules/design_system/gallery/entries/feedback.js +658 -0
  61. package/dist/modules/design_system/gallery/entries/feedback.js.map +7 -0
  62. package/dist/modules/design_system/gallery/entries/filters.js +505 -0
  63. package/dist/modules/design_system/gallery/entries/filters.js.map +7 -0
  64. package/dist/modules/design_system/gallery/entries/foundations.js +453 -0
  65. package/dist/modules/design_system/gallery/entries/foundations.js.map +7 -0
  66. package/dist/modules/design_system/gallery/entries/icons.js +140 -0
  67. package/dist/modules/design_system/gallery/entries/icons.js.map +7 -0
  68. package/dist/modules/design_system/gallery/entries/inputs.js +1217 -0
  69. package/dist/modules/design_system/gallery/entries/inputs.js.map +7 -0
  70. package/dist/modules/design_system/gallery/entries/messages.js +334 -0
  71. package/dist/modules/design_system/gallery/entries/messages.js.map +7 -0
  72. package/dist/modules/design_system/gallery/entries/navigation.js +475 -0
  73. package/dist/modules/design_system/gallery/entries/navigation.js.map +7 -0
  74. package/dist/modules/design_system/gallery/entries/notifications.js +257 -0
  75. package/dist/modules/design_system/gallery/entries/notifications.js.map +7 -0
  76. package/dist/modules/design_system/gallery/entries/overlays.js +576 -0
  77. package/dist/modules/design_system/gallery/entries/overlays.js.map +7 -0
  78. package/dist/modules/design_system/gallery/entries/scaffolding.js +378 -0
  79. package/dist/modules/design_system/gallery/entries/scaffolding.js.map +7 -0
  80. package/dist/modules/design_system/gallery/entries/schedule.js +297 -0
  81. package/dist/modules/design_system/gallery/entries/schedule.js.map +7 -0
  82. package/dist/modules/design_system/gallery/registry.js +139 -0
  83. package/dist/modules/design_system/gallery/registry.js.map +7 -0
  84. package/dist/modules/design_system/gallery/types.js +1 -0
  85. package/dist/modules/design_system/gallery/types.js.map +7 -0
  86. package/dist/modules/design_system/index.js +9 -0
  87. package/dist/modules/design_system/index.js.map +7 -0
  88. package/dist/modules/design_system/setup.js +14 -0
  89. package/dist/modules/design_system/setup.js.map +7 -0
  90. package/dist/modules/inbox_ops/search.js +15 -4
  91. package/dist/modules/inbox_ops/search.js.map +2 -2
  92. package/dist/modules/integrations/api/[id]/credentials/route.js +11 -5
  93. package/dist/modules/integrations/api/[id]/credentials/route.js.map +2 -2
  94. package/dist/modules/integrations/api/[id]/health/route.js +6 -3
  95. package/dist/modules/integrations/api/[id]/health/route.js.map +2 -2
  96. package/dist/modules/integrations/api/[id]/route.js +6 -3
  97. package/dist/modules/integrations/api/[id]/route.js.map +2 -2
  98. package/dist/modules/integrations/api/[id]/state/route.js +6 -3
  99. package/dist/modules/integrations/api/[id]/state/route.js.map +2 -2
  100. package/dist/modules/integrations/api/[id]/version/route.js +6 -3
  101. package/dist/modules/integrations/api/[id]/version/route.js.map +2 -2
  102. package/dist/modules/integrations/api/logs/route.js +6 -3
  103. package/dist/modules/integrations/api/logs/route.js.map +2 -2
  104. package/dist/modules/integrations/api/route.js +6 -3
  105. package/dist/modules/integrations/api/route.js.map +2 -2
  106. package/dist/modules/integrations/api/umes-read.js +2 -2
  107. package/dist/modules/integrations/api/umes-read.js.map +2 -2
  108. package/dist/modules/integrations/lib/organization-scope.js +2 -9
  109. package/dist/modules/integrations/lib/organization-scope.js.map +2 -2
  110. package/dist/modules/messages/search.js +10 -5
  111. package/dist/modules/messages/search.js.map +2 -2
  112. package/dist/modules/query_index/data/entities.js +2 -1
  113. package/dist/modules/query_index/data/entities.js.map +2 -2
  114. package/dist/modules/query_index/lib/engine.js +32 -50
  115. package/dist/modules/query_index/lib/engine.js.map +2 -2
  116. package/dist/modules/query_index/migrations/Migration20260731105052_query_index.js +17 -0
  117. package/dist/modules/query_index/migrations/Migration20260731105052_query_index.js.map +7 -0
  118. package/generated/entities.ids.generated.ts +1 -0
  119. package/package.json +16 -16
  120. package/src/modules/auth/backend/settings/page.tsx +17 -8
  121. package/src/modules/customers/cli.ts +17 -7
  122. package/src/modules/customers/components/detail/ScheduleActivityDialog.tsx +24 -13
  123. package/src/modules/customers/i18n/de.json +17 -0
  124. package/src/modules/customers/i18n/en.json +17 -0
  125. package/src/modules/customers/i18n/es.json +17 -0
  126. package/src/modules/customers/i18n/pl.json +17 -0
  127. package/src/modules/customers/search.ts +59 -27
  128. package/src/modules/data_sync/AGENTS.md +1 -0
  129. package/src/modules/data_sync/api/mappings/[id]/route.ts +22 -9
  130. package/src/modules/data_sync/api/mappings/route.ts +13 -4
  131. package/src/modules/data_sync/api/options.ts +7 -2
  132. package/src/modules/data_sync/api/run.ts +7 -2
  133. package/src/modules/data_sync/api/runs/[id]/cancel.ts +8 -3
  134. package/src/modules/data_sync/api/runs/[id]/retry.ts +7 -2
  135. package/src/modules/data_sync/api/runs/[id]/route.ts +8 -3
  136. package/src/modules/data_sync/api/runs.ts +7 -2
  137. package/src/modules/data_sync/api/schedules/[id]/route.ts +19 -6
  138. package/src/modules/data_sync/api/schedules/route.ts +13 -4
  139. package/src/modules/data_sync/api/validate.ts +9 -4
  140. package/src/modules/design_system/AGENTS.md +34 -0
  141. package/src/modules/design_system/acl.ts +5 -0
  142. package/src/modules/design_system/backend/design-system/page.meta.ts +11 -0
  143. package/src/modules/design_system/backend/design-system/page.tsx +14 -0
  144. package/src/modules/design_system/gallery/components/CodeSnippet.tsx +55 -0
  145. package/src/modules/design_system/gallery/components/EntryCard.tsx +95 -0
  146. package/src/modules/design_system/gallery/components/GalleryShell.tsx +206 -0
  147. package/src/modules/design_system/gallery/components/VariantPreview.tsx +15 -0
  148. package/src/modules/design_system/gallery/entries/banners.tsx +226 -0
  149. package/src/modules/design_system/gallery/entries/buttons.tsx +422 -0
  150. package/src/modules/design_system/gallery/entries/charts.tsx +518 -0
  151. package/src/modules/design_system/gallery/entries/dates.tsx +325 -0
  152. package/src/modules/design_system/gallery/entries/detail.tsx +403 -0
  153. package/src/modules/design_system/gallery/entries/display.tsx +893 -0
  154. package/src/modules/design_system/gallery/entries/feedback.tsx +746 -0
  155. package/src/modules/design_system/gallery/entries/filters.tsx +570 -0
  156. package/src/modules/design_system/gallery/entries/foundations.tsx +529 -0
  157. package/src/modules/design_system/gallery/entries/icons.tsx +168 -0
  158. package/src/modules/design_system/gallery/entries/inputs.tsx +1516 -0
  159. package/src/modules/design_system/gallery/entries/messages.tsx +339 -0
  160. package/src/modules/design_system/gallery/entries/navigation.tsx +573 -0
  161. package/src/modules/design_system/gallery/entries/notifications.tsx +285 -0
  162. package/src/modules/design_system/gallery/entries/overlays.tsx +677 -0
  163. package/src/modules/design_system/gallery/entries/scaffolding.tsx +430 -0
  164. package/src/modules/design_system/gallery/entries/schedule.tsx +307 -0
  165. package/src/modules/design_system/gallery/registry.ts +152 -0
  166. package/src/modules/design_system/gallery/types.ts +32 -0
  167. package/src/modules/design_system/i18n/.hardcoded-allowlist.json +71 -0
  168. package/src/modules/design_system/i18n/de.json +46 -0
  169. package/src/modules/design_system/i18n/en.json +46 -0
  170. package/src/modules/design_system/i18n/es.json +46 -0
  171. package/src/modules/design_system/i18n/pl.json +46 -0
  172. package/src/modules/design_system/index.ts +7 -0
  173. package/src/modules/design_system/setup.ts +12 -0
  174. package/src/modules/inbox_ops/i18n/de.json +3 -0
  175. package/src/modules/inbox_ops/i18n/en.json +3 -0
  176. package/src/modules/inbox_ops/i18n/es.json +3 -0
  177. package/src/modules/inbox_ops/i18n/pl.json +3 -0
  178. package/src/modules/inbox_ops/search.ts +20 -4
  179. package/src/modules/integrations/api/[id]/credentials/route.ts +11 -5
  180. package/src/modules/integrations/api/[id]/health/route.ts +6 -3
  181. package/src/modules/integrations/api/[id]/route.ts +6 -3
  182. package/src/modules/integrations/api/[id]/state/route.ts +6 -3
  183. package/src/modules/integrations/api/[id]/version/route.ts +6 -3
  184. package/src/modules/integrations/api/logs/route.ts +6 -3
  185. package/src/modules/integrations/api/route.ts +6 -3
  186. package/src/modules/integrations/api/umes-read.ts +2 -2
  187. package/src/modules/integrations/lib/organization-scope.ts +5 -25
  188. package/src/modules/messages/i18n/de.json +2 -0
  189. package/src/modules/messages/i18n/en.json +2 -0
  190. package/src/modules/messages/i18n/es.json +2 -0
  191. package/src/modules/messages/i18n/pl.json +2 -0
  192. package/src/modules/messages/search.ts +11 -5
  193. package/src/modules/query_index/data/entities.ts +7 -0
  194. package/src/modules/query_index/lib/engine.ts +40 -63
  195. package/src/modules/query_index/migrations/.snapshot-open-mercato.json +12 -0
  196. package/src/modules/query_index/migrations/Migration20260731105052_query_index.ts +35 -0
@@ -0,0 +1,475 @@
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import * as React from "react";
3
+ import { CreditCard, LayoutGrid, Settings, ShoppingCart, Truck } from "lucide-react";
4
+ import { Tabs, TabsContent, TabsList, TabsTrigger } from "@open-mercato/ui/primitives/tabs";
5
+ import {
6
+ Breadcrumb,
7
+ BreadcrumbEllipsis,
8
+ BreadcrumbItem,
9
+ BreadcrumbLink,
10
+ BreadcrumbList,
11
+ BreadcrumbPage,
12
+ BreadcrumbSeparator
13
+ } from "@open-mercato/ui/primitives/breadcrumb";
14
+ import { Pagination } from "@open-mercato/ui/primitives/pagination";
15
+ import {
16
+ SegmentedControl,
17
+ SegmentedControlItem
18
+ } from "@open-mercato/ui/primitives/segmented-control";
19
+ import {
20
+ Accordion,
21
+ AccordionContent,
22
+ AccordionItem,
23
+ AccordionTrigger
24
+ } from "@open-mercato/ui/primitives/accordion";
25
+ function PaginationBasicDemo() {
26
+ const [page, setPage] = React.useState(2);
27
+ const [pageSize, setPageSize] = React.useState(25);
28
+ return /* @__PURE__ */ jsx(
29
+ Pagination,
30
+ {
31
+ page,
32
+ pageSize,
33
+ total: 400,
34
+ onPageChange: setPage,
35
+ onPageSizeChange: setPageSize
36
+ }
37
+ );
38
+ }
39
+ function PaginationCompactDemo() {
40
+ const [page, setPage] = React.useState(1);
41
+ return /* @__PURE__ */ jsx(
42
+ Pagination,
43
+ {
44
+ page,
45
+ pageSize: 20,
46
+ total: 120,
47
+ onPageChange: setPage,
48
+ showFirstLast: false,
49
+ showPageSize: false
50
+ }
51
+ );
52
+ }
53
+ const tabsEntry = {
54
+ id: "tabs",
55
+ title: "Tabs",
56
+ importPath: "@open-mercato/ui/primitives/tabs",
57
+ usage: {
58
+ do: [
59
+ 'variant="underline" is the canon for page-level tab strips; pill only for small embedded switchers.',
60
+ "TabsList always carries an aria-label; use count and leading to add context to triggers."
61
+ ],
62
+ dont: ["No hand-rolled tab strips from buttons and border classes \u2014 lint flags raw tab lists."]
63
+ },
64
+ docsAnchor: "#tabs",
65
+ figmaNodeId: "553:734",
66
+ variants: [
67
+ {
68
+ id: "underline",
69
+ title: "underline",
70
+ // Underline is the DS canon for page-level tab strips — flat rail
71
+ // with an accent underline, per-tab `leading` icon and `count` badge.
72
+ render: () => /* @__PURE__ */ jsxs(Tabs, { defaultValue: "orders", variant: "underline", className: "w-full", children: [
73
+ /* @__PURE__ */ jsxs(TabsList, { "aria-label": "Customer sections", children: [
74
+ /* @__PURE__ */ jsx(TabsTrigger, { value: "overview", leading: /* @__PURE__ */ jsx(LayoutGrid, { className: "size-4" }), children: "Overview" }),
75
+ /* @__PURE__ */ jsx(TabsTrigger, { value: "orders", leading: /* @__PURE__ */ jsx(ShoppingCart, { className: "size-4" }), count: 12, children: "Orders" }),
76
+ /* @__PURE__ */ jsx(TabsTrigger, { value: "settings", leading: /* @__PURE__ */ jsx(Settings, { className: "size-4" }), children: "Settings" })
77
+ ] }),
78
+ /* @__PURE__ */ jsx(TabsContent, { value: "overview", children: /* @__PURE__ */ jsx("p", { className: "text-sm text-muted-foreground", children: "Customer overview panel." }) }),
79
+ /* @__PURE__ */ jsx(TabsContent, { value: "orders", children: /* @__PURE__ */ jsx("p", { className: "text-sm text-muted-foreground", children: "12 orders in the last 30 days." }) }),
80
+ /* @__PURE__ */ jsx(TabsContent, { value: "settings", children: /* @__PURE__ */ jsx("p", { className: "text-sm text-muted-foreground", children: "Notification and access settings." }) })
81
+ ] }),
82
+ code: `import { LayoutGrid, Settings, ShoppingCart } from 'lucide-react'
83
+ import { Tabs, TabsContent, TabsList, TabsTrigger } from '@open-mercato/ui/primitives/tabs'
84
+
85
+ <Tabs defaultValue="orders" variant="underline">
86
+ <TabsList aria-label="Customer sections">
87
+ <TabsTrigger value="overview" leading={<LayoutGrid className="size-4" />}>Overview</TabsTrigger>
88
+ <TabsTrigger value="orders" leading={<ShoppingCart className="size-4" />} count={12}>Orders</TabsTrigger>
89
+ <TabsTrigger value="settings" leading={<Settings className="size-4" />}>Settings</TabsTrigger>
90
+ </TabsList>
91
+ <TabsContent value="overview">\u2026</TabsContent>
92
+ <TabsContent value="orders">\u2026</TabsContent>
93
+ <TabsContent value="settings">\u2026</TabsContent>
94
+ </Tabs>`
95
+ },
96
+ {
97
+ id: "pill",
98
+ title: "pill (default)",
99
+ render: () => /* @__PURE__ */ jsxs(Tabs, { defaultValue: "preview", children: [
100
+ /* @__PURE__ */ jsxs(TabsList, { "aria-label": "Editor view", children: [
101
+ /* @__PURE__ */ jsx(TabsTrigger, { value: "preview", children: "Preview" }),
102
+ /* @__PURE__ */ jsx(TabsTrigger, { value: "code", children: "Code" }),
103
+ /* @__PURE__ */ jsx(TabsTrigger, { value: "logs", children: "Logs" })
104
+ ] }),
105
+ /* @__PURE__ */ jsx(TabsContent, { value: "preview", children: /* @__PURE__ */ jsx("p", { className: "text-sm text-muted-foreground", children: "Rendered preview." }) }),
106
+ /* @__PURE__ */ jsx(TabsContent, { value: "code", children: /* @__PURE__ */ jsx("p", { className: "text-sm text-muted-foreground", children: "Source code panel." }) }),
107
+ /* @__PURE__ */ jsx(TabsContent, { value: "logs", children: /* @__PURE__ */ jsx("p", { className: "text-sm text-muted-foreground", children: "Runtime logs panel." }) })
108
+ ] }),
109
+ code: `import { Tabs, TabsContent, TabsList, TabsTrigger } from '@open-mercato/ui/primitives/tabs'
110
+
111
+ <Tabs defaultValue="preview">
112
+ <TabsList aria-label="Editor view">
113
+ <TabsTrigger value="preview">Preview</TabsTrigger>
114
+ <TabsTrigger value="code">Code</TabsTrigger>
115
+ <TabsTrigger value="logs">Logs</TabsTrigger>
116
+ </TabsList>
117
+ <TabsContent value="preview">\u2026</TabsContent>
118
+ <TabsContent value="code">\u2026</TabsContent>
119
+ <TabsContent value="logs">\u2026</TabsContent>
120
+ </Tabs>`
121
+ },
122
+ {
123
+ id: "pill-vertical",
124
+ title: "pill, vertical",
125
+ render: () => /* @__PURE__ */ jsxs(Tabs, { defaultValue: "profile", orientation: "vertical", className: "w-full", children: [
126
+ /* @__PURE__ */ jsxs(TabsList, { "aria-label": "Account settings", children: [
127
+ /* @__PURE__ */ jsx(TabsTrigger, { value: "profile", children: "Profile" }),
128
+ /* @__PURE__ */ jsx(TabsTrigger, { value: "billing", children: "Billing" }),
129
+ /* @__PURE__ */ jsx(TabsTrigger, { value: "security", children: "Security" })
130
+ ] }),
131
+ /* @__PURE__ */ jsx(TabsContent, { value: "profile", children: /* @__PURE__ */ jsx("p", { className: "text-sm text-muted-foreground", children: "Profile settings panel." }) }),
132
+ /* @__PURE__ */ jsx(TabsContent, { value: "billing", children: /* @__PURE__ */ jsx("p", { className: "text-sm text-muted-foreground", children: "Billing settings panel." }) }),
133
+ /* @__PURE__ */ jsx(TabsContent, { value: "security", children: /* @__PURE__ */ jsx("p", { className: "text-sm text-muted-foreground", children: "Security settings panel." }) })
134
+ ] }),
135
+ code: `import { Tabs, TabsContent, TabsList, TabsTrigger } from '@open-mercato/ui/primitives/tabs'
136
+
137
+ <Tabs defaultValue="profile" orientation="vertical">
138
+ <TabsList aria-label="Account settings">
139
+ <TabsTrigger value="profile">Profile</TabsTrigger>
140
+ <TabsTrigger value="billing">Billing</TabsTrigger>
141
+ <TabsTrigger value="security">Security</TabsTrigger>
142
+ </TabsList>
143
+ <TabsContent value="profile">\u2026</TabsContent>
144
+ <TabsContent value="billing">\u2026</TabsContent>
145
+ <TabsContent value="security">\u2026</TabsContent>
146
+ </Tabs>`
147
+ }
148
+ ]
149
+ };
150
+ const breadcrumbEntry = {
151
+ id: "breadcrumb",
152
+ title: "Breadcrumb",
153
+ importPath: "@open-mercato/ui/primitives/breadcrumb",
154
+ docsAnchor: "#breadcrumb",
155
+ variants: [
156
+ {
157
+ id: "slash",
158
+ title: "slash (default)",
159
+ render: () => /* @__PURE__ */ jsx(Breadcrumb, { children: /* @__PURE__ */ jsxs(BreadcrumbList, { children: [
160
+ /* @__PURE__ */ jsx(BreadcrumbItem, { children: /* @__PURE__ */ jsx(BreadcrumbLink, { href: "#gallery-entry-breadcrumb", children: "Dashboard" }) }),
161
+ /* @__PURE__ */ jsx(BreadcrumbSeparator, {}),
162
+ /* @__PURE__ */ jsx(BreadcrumbItem, { children: /* @__PURE__ */ jsx(BreadcrumbLink, { href: "#gallery-entry-breadcrumb", children: "Products" }) }),
163
+ /* @__PURE__ */ jsx(BreadcrumbSeparator, {}),
164
+ /* @__PURE__ */ jsx(BreadcrumbItem, { children: /* @__PURE__ */ jsx(BreadcrumbPage, { children: "Winter catalog" }) })
165
+ ] }) }),
166
+ code: `import {
167
+ Breadcrumb,
168
+ BreadcrumbItem,
169
+ BreadcrumbLink,
170
+ BreadcrumbList,
171
+ BreadcrumbPage,
172
+ BreadcrumbSeparator,
173
+ } from '@open-mercato/ui/primitives/breadcrumb'
174
+
175
+ <Breadcrumb>
176
+ <BreadcrumbList>
177
+ <BreadcrumbItem>
178
+ <BreadcrumbLink href="/backend">Dashboard</BreadcrumbLink>
179
+ </BreadcrumbItem>
180
+ <BreadcrumbSeparator />
181
+ <BreadcrumbItem>
182
+ <BreadcrumbLink href="/backend/products">Products</BreadcrumbLink>
183
+ </BreadcrumbItem>
184
+ <BreadcrumbSeparator />
185
+ <BreadcrumbItem>
186
+ <BreadcrumbPage>Winter catalog</BreadcrumbPage>
187
+ </BreadcrumbItem>
188
+ </BreadcrumbList>
189
+ </Breadcrumb>`
190
+ },
191
+ {
192
+ id: "arrow",
193
+ title: "arrow divider",
194
+ render: () => /* @__PURE__ */ jsx(Breadcrumb, { divider: "arrow", children: /* @__PURE__ */ jsxs(BreadcrumbList, { children: [
195
+ /* @__PURE__ */ jsx(BreadcrumbItem, { children: /* @__PURE__ */ jsx(BreadcrumbLink, { href: "#gallery-entry-breadcrumb", children: "Orders" }) }),
196
+ /* @__PURE__ */ jsx(BreadcrumbSeparator, {}),
197
+ /* @__PURE__ */ jsx(BreadcrumbItem, { children: /* @__PURE__ */ jsx(BreadcrumbLink, { href: "#gallery-entry-breadcrumb", children: "#20418" }) }),
198
+ /* @__PURE__ */ jsx(BreadcrumbSeparator, {}),
199
+ /* @__PURE__ */ jsx(BreadcrumbItem, { children: /* @__PURE__ */ jsx(BreadcrumbPage, { children: "Shipment" }) })
200
+ ] }) }),
201
+ code: `import {
202
+ Breadcrumb,
203
+ BreadcrumbItem,
204
+ BreadcrumbLink,
205
+ BreadcrumbList,
206
+ BreadcrumbPage,
207
+ BreadcrumbSeparator,
208
+ } from '@open-mercato/ui/primitives/breadcrumb'
209
+
210
+ <Breadcrumb divider="arrow">
211
+ <BreadcrumbList>
212
+ <BreadcrumbItem>
213
+ <BreadcrumbLink href="/backend/orders">Orders</BreadcrumbLink>
214
+ </BreadcrumbItem>
215
+ <BreadcrumbSeparator />
216
+ <BreadcrumbItem>
217
+ <BreadcrumbLink href="/backend/orders/20418">#20418</BreadcrumbLink>
218
+ </BreadcrumbItem>
219
+ <BreadcrumbSeparator />
220
+ <BreadcrumbItem>
221
+ <BreadcrumbPage>Shipment</BreadcrumbPage>
222
+ </BreadcrumbItem>
223
+ </BreadcrumbList>
224
+ </Breadcrumb>`
225
+ },
226
+ {
227
+ id: "ellipsis",
228
+ title: "collapsed (ellipsis)",
229
+ render: () => /* @__PURE__ */ jsx(Breadcrumb, { children: /* @__PURE__ */ jsxs(BreadcrumbList, { children: [
230
+ /* @__PURE__ */ jsx(BreadcrumbItem, { children: /* @__PURE__ */ jsx(BreadcrumbLink, { href: "#gallery-entry-breadcrumb", children: "Dashboard" }) }),
231
+ /* @__PURE__ */ jsx(BreadcrumbSeparator, {}),
232
+ /* @__PURE__ */ jsx(BreadcrumbItem, { children: /* @__PURE__ */ jsx(BreadcrumbEllipsis, {}) }),
233
+ /* @__PURE__ */ jsx(BreadcrumbSeparator, {}),
234
+ /* @__PURE__ */ jsx(BreadcrumbItem, { children: /* @__PURE__ */ jsx(BreadcrumbLink, { href: "#gallery-entry-breadcrumb", children: "Attributes" }) }),
235
+ /* @__PURE__ */ jsx(BreadcrumbSeparator, {}),
236
+ /* @__PURE__ */ jsx(BreadcrumbItem, { children: /* @__PURE__ */ jsx(BreadcrumbPage, { children: "Color" }) })
237
+ ] }) }),
238
+ code: `import {
239
+ Breadcrumb,
240
+ BreadcrumbEllipsis,
241
+ BreadcrumbItem,
242
+ BreadcrumbLink,
243
+ BreadcrumbList,
244
+ BreadcrumbPage,
245
+ BreadcrumbSeparator,
246
+ } from '@open-mercato/ui/primitives/breadcrumb'
247
+
248
+ <Breadcrumb>
249
+ <BreadcrumbList>
250
+ <BreadcrumbItem>
251
+ <BreadcrumbLink href="/backend">Dashboard</BreadcrumbLink>
252
+ </BreadcrumbItem>
253
+ <BreadcrumbSeparator />
254
+ <BreadcrumbItem>
255
+ <BreadcrumbEllipsis />
256
+ </BreadcrumbItem>
257
+ <BreadcrumbSeparator />
258
+ <BreadcrumbItem>
259
+ <BreadcrumbLink href="/backend/products/attributes">Attributes</BreadcrumbLink>
260
+ </BreadcrumbItem>
261
+ <BreadcrumbSeparator />
262
+ <BreadcrumbItem>
263
+ <BreadcrumbPage>Color</BreadcrumbPage>
264
+ </BreadcrumbItem>
265
+ </BreadcrumbList>
266
+ </Breadcrumb>`
267
+ }
268
+ ]
269
+ };
270
+ const paginationEntry = {
271
+ id: "pagination",
272
+ title: "Pagination",
273
+ importPath: "@open-mercato/ui/primitives/pagination",
274
+ docsAnchor: "#pagination",
275
+ variants: [
276
+ {
277
+ id: "basic",
278
+ title: "Basic",
279
+ render: () => /* @__PURE__ */ jsx(PaginationBasicDemo, {}),
280
+ code: `import * as React from 'react'
281
+ import { Pagination } from '@open-mercato/ui/primitives/pagination'
282
+
283
+ const [page, setPage] = React.useState(2)
284
+ const [pageSize, setPageSize] = React.useState(25)
285
+
286
+ <Pagination
287
+ page={page}
288
+ pageSize={pageSize}
289
+ total={400}
290
+ onPageChange={setPage}
291
+ onPageSizeChange={setPageSize}
292
+ />`
293
+ },
294
+ {
295
+ id: "compact",
296
+ title: "Compact",
297
+ render: () => /* @__PURE__ */ jsx(PaginationCompactDemo, {}),
298
+ code: `import * as React from 'react'
299
+ import { Pagination } from '@open-mercato/ui/primitives/pagination'
300
+
301
+ const [page, setPage] = React.useState(1)
302
+
303
+ <Pagination
304
+ page={page}
305
+ pageSize={20}
306
+ total={120}
307
+ onPageChange={setPage}
308
+ showFirstLast={false}
309
+ showPageSize={false}
310
+ />`
311
+ }
312
+ ]
313
+ };
314
+ const segmentedControlEntry = {
315
+ id: "segmented-control",
316
+ title: "SegmentedControl",
317
+ importPath: "@open-mercato/ui/primitives/segmented-control",
318
+ docsAnchor: "#segmentedcontrol",
319
+ variants: [
320
+ {
321
+ id: "default",
322
+ title: "default",
323
+ render: () => /* @__PURE__ */ jsxs(SegmentedControl, { defaultValue: "all", "aria-label": "View filter", children: [
324
+ /* @__PURE__ */ jsx(SegmentedControlItem, { value: "all", children: "All" }),
325
+ /* @__PURE__ */ jsx(SegmentedControlItem, { value: "active", children: "Active" }),
326
+ /* @__PURE__ */ jsx(SegmentedControlItem, { value: "archived", children: "Archived" })
327
+ ] }),
328
+ code: `import { SegmentedControl, SegmentedControlItem } from '@open-mercato/ui/primitives/segmented-control'
329
+
330
+ <SegmentedControl defaultValue="all" aria-label="View filter">
331
+ <SegmentedControlItem value="all">All</SegmentedControlItem>
332
+ <SegmentedControlItem value="active">Active</SegmentedControlItem>
333
+ <SegmentedControlItem value="archived">Archived</SegmentedControlItem>
334
+ </SegmentedControl>`
335
+ },
336
+ {
337
+ id: "small",
338
+ title: "Small",
339
+ render: () => /* @__PURE__ */ jsxs(SegmentedControl, { size: "sm", defaultValue: "30d", "aria-label": "Chart period", children: [
340
+ /* @__PURE__ */ jsx(SegmentedControlItem, { value: "7d", children: "7d" }),
341
+ /* @__PURE__ */ jsx(SegmentedControlItem, { value: "30d", children: "30d" }),
342
+ /* @__PURE__ */ jsx(SegmentedControlItem, { value: "90d", children: "90d" }),
343
+ /* @__PURE__ */ jsx(SegmentedControlItem, { value: "1y", children: "1y" })
344
+ ] }),
345
+ code: `import { SegmentedControl, SegmentedControlItem } from '@open-mercato/ui/primitives/segmented-control'
346
+
347
+ <SegmentedControl size="sm" defaultValue="30d" aria-label="Chart period">
348
+ <SegmentedControlItem value="7d">7d</SegmentedControlItem>
349
+ <SegmentedControlItem value="30d">30d</SegmentedControlItem>
350
+ <SegmentedControlItem value="90d">90d</SegmentedControlItem>
351
+ <SegmentedControlItem value="1y">1y</SegmentedControlItem>
352
+ </SegmentedControl>`
353
+ },
354
+ {
355
+ id: "disabled",
356
+ title: "Disabled",
357
+ render: () => /* @__PURE__ */ jsxs(SegmentedControl, { defaultValue: "list", disabled: true, "aria-label": "Layout", children: [
358
+ /* @__PURE__ */ jsx(SegmentedControlItem, { value: "list", children: "List" }),
359
+ /* @__PURE__ */ jsx(SegmentedControlItem, { value: "grid", children: "Grid" })
360
+ ] }),
361
+ code: `import { SegmentedControl, SegmentedControlItem } from '@open-mercato/ui/primitives/segmented-control'
362
+
363
+ <SegmentedControl defaultValue="list" disabled aria-label="Layout">
364
+ <SegmentedControlItem value="list">List</SegmentedControlItem>
365
+ <SegmentedControlItem value="grid">Grid</SegmentedControlItem>
366
+ </SegmentedControl>`
367
+ }
368
+ ]
369
+ };
370
+ const accordionEntry = {
371
+ id: "accordion",
372
+ title: "Accordion",
373
+ importPath: "@open-mercato/ui/primitives/accordion",
374
+ docsAnchor: "#accordion",
375
+ variants: [
376
+ {
377
+ id: "card",
378
+ title: "card (default)",
379
+ render: () => /* @__PURE__ */ jsxs(Accordion, { type: "single", collapsible: true, defaultValue: "shipping", className: "w-full space-y-2", children: [
380
+ /* @__PURE__ */ jsxs(AccordionItem, { value: "shipping", children: [
381
+ /* @__PURE__ */ jsx(AccordionTrigger, { children: "Shipping and delivery" }),
382
+ /* @__PURE__ */ jsx(AccordionContent, { children: "Orders placed before 2 PM ship the same business day from the nearest warehouse." })
383
+ ] }),
384
+ /* @__PURE__ */ jsxs(AccordionItem, { value: "returns", children: [
385
+ /* @__PURE__ */ jsx(AccordionTrigger, { children: "Returns" }),
386
+ /* @__PURE__ */ jsx(AccordionContent, { children: "Items can be returned within 30 days of delivery in their original packaging." })
387
+ ] }),
388
+ /* @__PURE__ */ jsxs(AccordionItem, { value: "payments", children: [
389
+ /* @__PURE__ */ jsx(AccordionTrigger, { children: "Payment methods" }),
390
+ /* @__PURE__ */ jsx(AccordionContent, { children: "We accept cards, bank transfer, and deferred payment for verified B2B accounts." })
391
+ ] })
392
+ ] }),
393
+ code: `import { Accordion, AccordionContent, AccordionItem, AccordionTrigger } from '@open-mercato/ui/primitives/accordion'
394
+
395
+ <Accordion type="single" collapsible defaultValue="shipping" className="w-full space-y-2">
396
+ <AccordionItem value="shipping">
397
+ <AccordionTrigger>Shipping and delivery</AccordionTrigger>
398
+ <AccordionContent>Orders placed before 2 PM ship the same business day.</AccordionContent>
399
+ </AccordionItem>
400
+ <AccordionItem value="returns">
401
+ <AccordionTrigger>Returns</AccordionTrigger>
402
+ <AccordionContent>Items can be returned within 30 days of delivery.</AccordionContent>
403
+ </AccordionItem>
404
+ <AccordionItem value="payments">
405
+ <AccordionTrigger>Payment methods</AccordionTrigger>
406
+ <AccordionContent>We accept cards, bank transfer, and deferred payment.</AccordionContent>
407
+ </AccordionItem>
408
+ </Accordion>`
409
+ },
410
+ {
411
+ id: "left-icon",
412
+ title: "With leftIcon",
413
+ render: () => /* @__PURE__ */ jsxs(Accordion, { type: "single", collapsible: true, className: "w-full space-y-2", children: [
414
+ /* @__PURE__ */ jsxs(AccordionItem, { value: "shipping", children: [
415
+ /* @__PURE__ */ jsx(AccordionTrigger, { leftIcon: /* @__PURE__ */ jsx(Truck, {}), children: "How fast is shipping?" }),
416
+ /* @__PURE__ */ jsx(AccordionContent, { children: "Same-day dispatch on weekdays; delivery typically takes 1\u20133 business days." })
417
+ ] }),
418
+ /* @__PURE__ */ jsxs(AccordionItem, { value: "billing", children: [
419
+ /* @__PURE__ */ jsx(AccordionTrigger, { leftIcon: /* @__PURE__ */ jsx(CreditCard, {}), children: "When am I charged?" }),
420
+ /* @__PURE__ */ jsx(AccordionContent, { children: "Your card is charged when the order ships, never at checkout." })
421
+ ] })
422
+ ] }),
423
+ code: `import { CreditCard, Truck } from 'lucide-react'
424
+ import { Accordion, AccordionContent, AccordionItem, AccordionTrigger } from '@open-mercato/ui/primitives/accordion'
425
+
426
+ <Accordion type="single" collapsible className="w-full space-y-2">
427
+ <AccordionItem value="shipping">
428
+ <AccordionTrigger leftIcon={<Truck />}>How fast is shipping?</AccordionTrigger>
429
+ <AccordionContent>Same-day dispatch on weekdays.</AccordionContent>
430
+ </AccordionItem>
431
+ <AccordionItem value="billing">
432
+ <AccordionTrigger leftIcon={<CreditCard />}>When am I charged?</AccordionTrigger>
433
+ <AccordionContent>Your card is charged when the order ships.</AccordionContent>
434
+ </AccordionItem>
435
+ </Accordion>`
436
+ },
437
+ {
438
+ id: "chevron",
439
+ title: "Chevron indicator",
440
+ render: () => /* @__PURE__ */ jsxs(Accordion, { type: "multiple", className: "w-full space-y-2", children: [
441
+ /* @__PURE__ */ jsxs(AccordionItem, { value: "general", children: [
442
+ /* @__PURE__ */ jsx(AccordionTrigger, { triggerIcon: "chevron", children: "General" }),
443
+ /* @__PURE__ */ jsx(AccordionContent, { children: "Store name, contact details, and default locale for the storefront." })
444
+ ] }),
445
+ /* @__PURE__ */ jsxs(AccordionItem, { value: "advanced", children: [
446
+ /* @__PURE__ */ jsx(AccordionTrigger, { triggerIcon: "chevron", children: "Advanced" }),
447
+ /* @__PURE__ */ jsx(AccordionContent, { children: "Webhooks, API keys, and other developer-facing configuration." })
448
+ ] })
449
+ ] }),
450
+ code: `import { Accordion, AccordionContent, AccordionItem, AccordionTrigger } from '@open-mercato/ui/primitives/accordion'
451
+
452
+ <Accordion type="multiple" className="w-full space-y-2">
453
+ <AccordionItem value="general">
454
+ <AccordionTrigger triggerIcon="chevron">General</AccordionTrigger>
455
+ <AccordionContent>Store name, contact details, and default locale.</AccordionContent>
456
+ </AccordionItem>
457
+ <AccordionItem value="advanced">
458
+ <AccordionTrigger triggerIcon="chevron">Advanced</AccordionTrigger>
459
+ <AccordionContent>Webhooks, API keys, and developer configuration.</AccordionContent>
460
+ </AccordionItem>
461
+ </Accordion>`
462
+ }
463
+ ]
464
+ };
465
+ const entries = [
466
+ tabsEntry,
467
+ breadcrumbEntry,
468
+ paginationEntry,
469
+ segmentedControlEntry,
470
+ accordionEntry
471
+ ];
472
+ export {
473
+ entries
474
+ };
475
+ //# sourceMappingURL=navigation.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/modules/design_system/gallery/entries/navigation.tsx"],
4
+ "sourcesContent": ["import * as React from 'react'\nimport { CreditCard, LayoutGrid, Settings, ShoppingCart, Truck } from 'lucide-react'\nimport { Tabs, TabsContent, TabsList, TabsTrigger } from '@open-mercato/ui/primitives/tabs'\nimport {\n Breadcrumb,\n BreadcrumbEllipsis,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n} from '@open-mercato/ui/primitives/breadcrumb'\nimport { Pagination } from '@open-mercato/ui/primitives/pagination'\nimport {\n SegmentedControl,\n SegmentedControlItem,\n} from '@open-mercato/ui/primitives/segmented-control'\nimport {\n Accordion,\n AccordionContent,\n AccordionItem,\n AccordionTrigger,\n} from '@open-mercato/ui/primitives/accordion'\nimport type { GalleryEntry } from '../types'\n\n// Component titles and variant names are proper nouns from the codebase and\n// are deliberately not translated. `code` MUST contain the entry's importPath\n// (enforced by the registry-integrity test) and is always reviewed alongside\n// its sibling `render`.\n\n// Pagination is a controlled component \u2014 these small wrappers own the page\n// state so the preview stays interactive without polluting the entry shape.\n\nfunction PaginationBasicDemo() {\n const [page, setPage] = React.useState(2)\n const [pageSize, setPageSize] = React.useState(25)\n return (\n <Pagination\n page={page}\n pageSize={pageSize}\n total={400}\n onPageChange={setPage}\n onPageSizeChange={setPageSize}\n />\n )\n}\n\nfunction PaginationCompactDemo() {\n const [page, setPage] = React.useState(1)\n return (\n <Pagination\n page={page}\n pageSize={20}\n total={120}\n onPageChange={setPage}\n showFirstLast={false}\n showPageSize={false}\n />\n )\n}\n\nconst tabsEntry: GalleryEntry = {\n id: 'tabs',\n title: 'Tabs',\n importPath: '@open-mercato/ui/primitives/tabs',\n usage: {\n do: [\n 'variant=\"underline\" is the canon for page-level tab strips; pill only for small embedded switchers.',\n 'TabsList always carries an aria-label; use count and leading to add context to triggers.',\n ],\n dont: ['No hand-rolled tab strips from buttons and border classes \u2014 lint flags raw tab lists.'],\n },\n docsAnchor: '#tabs',\n figmaNodeId: '553:734',\n variants: [\n {\n id: 'underline',\n title: 'underline',\n // Underline is the DS canon for page-level tab strips \u2014 flat rail\n // with an accent underline, per-tab `leading` icon and `count` badge.\n render: () => (\n <Tabs defaultValue=\"orders\" variant=\"underline\" className=\"w-full\">\n <TabsList aria-label=\"Customer sections\">\n <TabsTrigger value=\"overview\" leading={<LayoutGrid className=\"size-4\" />}>\n Overview\n </TabsTrigger>\n <TabsTrigger value=\"orders\" leading={<ShoppingCart className=\"size-4\" />} count={12}>\n Orders\n </TabsTrigger>\n <TabsTrigger value=\"settings\" leading={<Settings className=\"size-4\" />}>\n Settings\n </TabsTrigger>\n </TabsList>\n <TabsContent value=\"overview\">\n <p className=\"text-sm text-muted-foreground\">Customer overview panel.</p>\n </TabsContent>\n <TabsContent value=\"orders\">\n <p className=\"text-sm text-muted-foreground\">12 orders in the last 30 days.</p>\n </TabsContent>\n <TabsContent value=\"settings\">\n <p className=\"text-sm text-muted-foreground\">Notification and access settings.</p>\n </TabsContent>\n </Tabs>\n ),\n code: `import { LayoutGrid, Settings, ShoppingCart } from 'lucide-react'\nimport { Tabs, TabsContent, TabsList, TabsTrigger } from '@open-mercato/ui/primitives/tabs'\n\n<Tabs defaultValue=\"orders\" variant=\"underline\">\n <TabsList aria-label=\"Customer sections\">\n <TabsTrigger value=\"overview\" leading={<LayoutGrid className=\"size-4\" />}>Overview</TabsTrigger>\n <TabsTrigger value=\"orders\" leading={<ShoppingCart className=\"size-4\" />} count={12}>Orders</TabsTrigger>\n <TabsTrigger value=\"settings\" leading={<Settings className=\"size-4\" />}>Settings</TabsTrigger>\n </TabsList>\n <TabsContent value=\"overview\">\u2026</TabsContent>\n <TabsContent value=\"orders\">\u2026</TabsContent>\n <TabsContent value=\"settings\">\u2026</TabsContent>\n</Tabs>`,\n },\n {\n id: 'pill',\n title: 'pill (default)',\n render: () => (\n <Tabs defaultValue=\"preview\">\n <TabsList aria-label=\"Editor view\">\n <TabsTrigger value=\"preview\">Preview</TabsTrigger>\n <TabsTrigger value=\"code\">Code</TabsTrigger>\n <TabsTrigger value=\"logs\">Logs</TabsTrigger>\n </TabsList>\n <TabsContent value=\"preview\">\n <p className=\"text-sm text-muted-foreground\">Rendered preview.</p>\n </TabsContent>\n <TabsContent value=\"code\">\n <p className=\"text-sm text-muted-foreground\">Source code panel.</p>\n </TabsContent>\n <TabsContent value=\"logs\">\n <p className=\"text-sm text-muted-foreground\">Runtime logs panel.</p>\n </TabsContent>\n </Tabs>\n ),\n code: `import { Tabs, TabsContent, TabsList, TabsTrigger } from '@open-mercato/ui/primitives/tabs'\n\n<Tabs defaultValue=\"preview\">\n <TabsList aria-label=\"Editor view\">\n <TabsTrigger value=\"preview\">Preview</TabsTrigger>\n <TabsTrigger value=\"code\">Code</TabsTrigger>\n <TabsTrigger value=\"logs\">Logs</TabsTrigger>\n </TabsList>\n <TabsContent value=\"preview\">\u2026</TabsContent>\n <TabsContent value=\"code\">\u2026</TabsContent>\n <TabsContent value=\"logs\">\u2026</TabsContent>\n</Tabs>`,\n },\n {\n id: 'pill-vertical',\n title: 'pill, vertical',\n render: () => (\n <Tabs defaultValue=\"profile\" orientation=\"vertical\" className=\"w-full\">\n <TabsList aria-label=\"Account settings\">\n <TabsTrigger value=\"profile\">Profile</TabsTrigger>\n <TabsTrigger value=\"billing\">Billing</TabsTrigger>\n <TabsTrigger value=\"security\">Security</TabsTrigger>\n </TabsList>\n <TabsContent value=\"profile\">\n <p className=\"text-sm text-muted-foreground\">Profile settings panel.</p>\n </TabsContent>\n <TabsContent value=\"billing\">\n <p className=\"text-sm text-muted-foreground\">Billing settings panel.</p>\n </TabsContent>\n <TabsContent value=\"security\">\n <p className=\"text-sm text-muted-foreground\">Security settings panel.</p>\n </TabsContent>\n </Tabs>\n ),\n code: `import { Tabs, TabsContent, TabsList, TabsTrigger } from '@open-mercato/ui/primitives/tabs'\n\n<Tabs defaultValue=\"profile\" orientation=\"vertical\">\n <TabsList aria-label=\"Account settings\">\n <TabsTrigger value=\"profile\">Profile</TabsTrigger>\n <TabsTrigger value=\"billing\">Billing</TabsTrigger>\n <TabsTrigger value=\"security\">Security</TabsTrigger>\n </TabsList>\n <TabsContent value=\"profile\">\u2026</TabsContent>\n <TabsContent value=\"billing\">\u2026</TabsContent>\n <TabsContent value=\"security\">\u2026</TabsContent>\n</Tabs>`,\n },\n ],\n}\n\nconst breadcrumbEntry: GalleryEntry = {\n id: 'breadcrumb',\n title: 'Breadcrumb',\n importPath: '@open-mercato/ui/primitives/breadcrumb',\n docsAnchor: '#breadcrumb',\n variants: [\n {\n id: 'slash',\n title: 'slash (default)',\n render: () => (\n <Breadcrumb>\n <BreadcrumbList>\n <BreadcrumbItem>\n <BreadcrumbLink href=\"#gallery-entry-breadcrumb\">Dashboard</BreadcrumbLink>\n </BreadcrumbItem>\n <BreadcrumbSeparator />\n <BreadcrumbItem>\n <BreadcrumbLink href=\"#gallery-entry-breadcrumb\">Products</BreadcrumbLink>\n </BreadcrumbItem>\n <BreadcrumbSeparator />\n <BreadcrumbItem>\n <BreadcrumbPage>Winter catalog</BreadcrumbPage>\n </BreadcrumbItem>\n </BreadcrumbList>\n </Breadcrumb>\n ),\n code: `import {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n} from '@open-mercato/ui/primitives/breadcrumb'\n\n<Breadcrumb>\n <BreadcrumbList>\n <BreadcrumbItem>\n <BreadcrumbLink href=\"/backend\">Dashboard</BreadcrumbLink>\n </BreadcrumbItem>\n <BreadcrumbSeparator />\n <BreadcrumbItem>\n <BreadcrumbLink href=\"/backend/products\">Products</BreadcrumbLink>\n </BreadcrumbItem>\n <BreadcrumbSeparator />\n <BreadcrumbItem>\n <BreadcrumbPage>Winter catalog</BreadcrumbPage>\n </BreadcrumbItem>\n </BreadcrumbList>\n</Breadcrumb>`,\n },\n {\n id: 'arrow',\n title: 'arrow divider',\n render: () => (\n <Breadcrumb divider=\"arrow\">\n <BreadcrumbList>\n <BreadcrumbItem>\n <BreadcrumbLink href=\"#gallery-entry-breadcrumb\">Orders</BreadcrumbLink>\n </BreadcrumbItem>\n <BreadcrumbSeparator />\n <BreadcrumbItem>\n <BreadcrumbLink href=\"#gallery-entry-breadcrumb\">#20418</BreadcrumbLink>\n </BreadcrumbItem>\n <BreadcrumbSeparator />\n <BreadcrumbItem>\n <BreadcrumbPage>Shipment</BreadcrumbPage>\n </BreadcrumbItem>\n </BreadcrumbList>\n </Breadcrumb>\n ),\n code: `import {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n} from '@open-mercato/ui/primitives/breadcrumb'\n\n<Breadcrumb divider=\"arrow\">\n <BreadcrumbList>\n <BreadcrumbItem>\n <BreadcrumbLink href=\"/backend/orders\">Orders</BreadcrumbLink>\n </BreadcrumbItem>\n <BreadcrumbSeparator />\n <BreadcrumbItem>\n <BreadcrumbLink href=\"/backend/orders/20418\">#20418</BreadcrumbLink>\n </BreadcrumbItem>\n <BreadcrumbSeparator />\n <BreadcrumbItem>\n <BreadcrumbPage>Shipment</BreadcrumbPage>\n </BreadcrumbItem>\n </BreadcrumbList>\n</Breadcrumb>`,\n },\n {\n id: 'ellipsis',\n title: 'collapsed (ellipsis)',\n render: () => (\n <Breadcrumb>\n <BreadcrumbList>\n <BreadcrumbItem>\n <BreadcrumbLink href=\"#gallery-entry-breadcrumb\">Dashboard</BreadcrumbLink>\n </BreadcrumbItem>\n <BreadcrumbSeparator />\n <BreadcrumbItem>\n <BreadcrumbEllipsis />\n </BreadcrumbItem>\n <BreadcrumbSeparator />\n <BreadcrumbItem>\n <BreadcrumbLink href=\"#gallery-entry-breadcrumb\">Attributes</BreadcrumbLink>\n </BreadcrumbItem>\n <BreadcrumbSeparator />\n <BreadcrumbItem>\n <BreadcrumbPage>Color</BreadcrumbPage>\n </BreadcrumbItem>\n </BreadcrumbList>\n </Breadcrumb>\n ),\n code: `import {\n Breadcrumb,\n BreadcrumbEllipsis,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n} from '@open-mercato/ui/primitives/breadcrumb'\n\n<Breadcrumb>\n <BreadcrumbList>\n <BreadcrumbItem>\n <BreadcrumbLink href=\"/backend\">Dashboard</BreadcrumbLink>\n </BreadcrumbItem>\n <BreadcrumbSeparator />\n <BreadcrumbItem>\n <BreadcrumbEllipsis />\n </BreadcrumbItem>\n <BreadcrumbSeparator />\n <BreadcrumbItem>\n <BreadcrumbLink href=\"/backend/products/attributes\">Attributes</BreadcrumbLink>\n </BreadcrumbItem>\n <BreadcrumbSeparator />\n <BreadcrumbItem>\n <BreadcrumbPage>Color</BreadcrumbPage>\n </BreadcrumbItem>\n </BreadcrumbList>\n</Breadcrumb>`,\n },\n ],\n}\n\nconst paginationEntry: GalleryEntry = {\n id: 'pagination',\n title: 'Pagination',\n importPath: '@open-mercato/ui/primitives/pagination',\n docsAnchor: '#pagination',\n variants: [\n {\n id: 'basic',\n title: 'Basic',\n render: () => <PaginationBasicDemo />,\n code: `import * as React from 'react'\nimport { Pagination } from '@open-mercato/ui/primitives/pagination'\n\nconst [page, setPage] = React.useState(2)\nconst [pageSize, setPageSize] = React.useState(25)\n\n<Pagination\n page={page}\n pageSize={pageSize}\n total={400}\n onPageChange={setPage}\n onPageSizeChange={setPageSize}\n/>`,\n },\n {\n id: 'compact',\n title: 'Compact',\n render: () => <PaginationCompactDemo />,\n code: `import * as React from 'react'\nimport { Pagination } from '@open-mercato/ui/primitives/pagination'\n\nconst [page, setPage] = React.useState(1)\n\n<Pagination\n page={page}\n pageSize={20}\n total={120}\n onPageChange={setPage}\n showFirstLast={false}\n showPageSize={false}\n/>`,\n },\n ],\n}\n\nconst segmentedControlEntry: GalleryEntry = {\n id: 'segmented-control',\n title: 'SegmentedControl',\n importPath: '@open-mercato/ui/primitives/segmented-control',\n docsAnchor: '#segmentedcontrol',\n variants: [\n {\n id: 'default',\n title: 'default',\n render: () => (\n <SegmentedControl defaultValue=\"all\" aria-label=\"View filter\">\n <SegmentedControlItem value=\"all\">All</SegmentedControlItem>\n <SegmentedControlItem value=\"active\">Active</SegmentedControlItem>\n <SegmentedControlItem value=\"archived\">Archived</SegmentedControlItem>\n </SegmentedControl>\n ),\n code: `import { SegmentedControl, SegmentedControlItem } from '@open-mercato/ui/primitives/segmented-control'\n\n<SegmentedControl defaultValue=\"all\" aria-label=\"View filter\">\n <SegmentedControlItem value=\"all\">All</SegmentedControlItem>\n <SegmentedControlItem value=\"active\">Active</SegmentedControlItem>\n <SegmentedControlItem value=\"archived\">Archived</SegmentedControlItem>\n</SegmentedControl>`,\n },\n {\n id: 'small',\n title: 'Small',\n render: () => (\n <SegmentedControl size=\"sm\" defaultValue=\"30d\" aria-label=\"Chart period\">\n <SegmentedControlItem value=\"7d\">7d</SegmentedControlItem>\n <SegmentedControlItem value=\"30d\">30d</SegmentedControlItem>\n <SegmentedControlItem value=\"90d\">90d</SegmentedControlItem>\n <SegmentedControlItem value=\"1y\">1y</SegmentedControlItem>\n </SegmentedControl>\n ),\n code: `import { SegmentedControl, SegmentedControlItem } from '@open-mercato/ui/primitives/segmented-control'\n\n<SegmentedControl size=\"sm\" defaultValue=\"30d\" aria-label=\"Chart period\">\n <SegmentedControlItem value=\"7d\">7d</SegmentedControlItem>\n <SegmentedControlItem value=\"30d\">30d</SegmentedControlItem>\n <SegmentedControlItem value=\"90d\">90d</SegmentedControlItem>\n <SegmentedControlItem value=\"1y\">1y</SegmentedControlItem>\n</SegmentedControl>`,\n },\n {\n id: 'disabled',\n title: 'Disabled',\n render: () => (\n <SegmentedControl defaultValue=\"list\" disabled aria-label=\"Layout\">\n <SegmentedControlItem value=\"list\">List</SegmentedControlItem>\n <SegmentedControlItem value=\"grid\">Grid</SegmentedControlItem>\n </SegmentedControl>\n ),\n code: `import { SegmentedControl, SegmentedControlItem } from '@open-mercato/ui/primitives/segmented-control'\n\n<SegmentedControl defaultValue=\"list\" disabled aria-label=\"Layout\">\n <SegmentedControlItem value=\"list\">List</SegmentedControlItem>\n <SegmentedControlItem value=\"grid\">Grid</SegmentedControlItem>\n</SegmentedControl>`,\n },\n ],\n}\n\nconst accordionEntry: GalleryEntry = {\n id: 'accordion',\n title: 'Accordion',\n importPath: '@open-mercato/ui/primitives/accordion',\n docsAnchor: '#accordion',\n variants: [\n {\n id: 'card',\n title: 'card (default)',\n render: () => (\n <Accordion type=\"single\" collapsible defaultValue=\"shipping\" className=\"w-full space-y-2\">\n <AccordionItem value=\"shipping\">\n <AccordionTrigger>Shipping and delivery</AccordionTrigger>\n <AccordionContent>\n Orders placed before 2 PM ship the same business day from the nearest warehouse.\n </AccordionContent>\n </AccordionItem>\n <AccordionItem value=\"returns\">\n <AccordionTrigger>Returns</AccordionTrigger>\n <AccordionContent>\n Items can be returned within 30 days of delivery in their original packaging.\n </AccordionContent>\n </AccordionItem>\n <AccordionItem value=\"payments\">\n <AccordionTrigger>Payment methods</AccordionTrigger>\n <AccordionContent>\n We accept cards, bank transfer, and deferred payment for verified B2B accounts.\n </AccordionContent>\n </AccordionItem>\n </Accordion>\n ),\n code: `import { Accordion, AccordionContent, AccordionItem, AccordionTrigger } from '@open-mercato/ui/primitives/accordion'\n\n<Accordion type=\"single\" collapsible defaultValue=\"shipping\" className=\"w-full space-y-2\">\n <AccordionItem value=\"shipping\">\n <AccordionTrigger>Shipping and delivery</AccordionTrigger>\n <AccordionContent>Orders placed before 2 PM ship the same business day.</AccordionContent>\n </AccordionItem>\n <AccordionItem value=\"returns\">\n <AccordionTrigger>Returns</AccordionTrigger>\n <AccordionContent>Items can be returned within 30 days of delivery.</AccordionContent>\n </AccordionItem>\n <AccordionItem value=\"payments\">\n <AccordionTrigger>Payment methods</AccordionTrigger>\n <AccordionContent>We accept cards, bank transfer, and deferred payment.</AccordionContent>\n </AccordionItem>\n</Accordion>`,\n },\n {\n id: 'left-icon',\n title: 'With leftIcon',\n render: () => (\n <Accordion type=\"single\" collapsible className=\"w-full space-y-2\">\n <AccordionItem value=\"shipping\">\n <AccordionTrigger leftIcon={<Truck />}>How fast is shipping?</AccordionTrigger>\n <AccordionContent>\n Same-day dispatch on weekdays; delivery typically takes 1\u20133 business days.\n </AccordionContent>\n </AccordionItem>\n <AccordionItem value=\"billing\">\n <AccordionTrigger leftIcon={<CreditCard />}>When am I charged?</AccordionTrigger>\n <AccordionContent>\n Your card is charged when the order ships, never at checkout.\n </AccordionContent>\n </AccordionItem>\n </Accordion>\n ),\n code: `import { CreditCard, Truck } from 'lucide-react'\nimport { Accordion, AccordionContent, AccordionItem, AccordionTrigger } from '@open-mercato/ui/primitives/accordion'\n\n<Accordion type=\"single\" collapsible className=\"w-full space-y-2\">\n <AccordionItem value=\"shipping\">\n <AccordionTrigger leftIcon={<Truck />}>How fast is shipping?</AccordionTrigger>\n <AccordionContent>Same-day dispatch on weekdays.</AccordionContent>\n </AccordionItem>\n <AccordionItem value=\"billing\">\n <AccordionTrigger leftIcon={<CreditCard />}>When am I charged?</AccordionTrigger>\n <AccordionContent>Your card is charged when the order ships.</AccordionContent>\n </AccordionItem>\n</Accordion>`,\n },\n {\n id: 'chevron',\n title: 'Chevron indicator',\n render: () => (\n <Accordion type=\"multiple\" className=\"w-full space-y-2\">\n <AccordionItem value=\"general\">\n <AccordionTrigger triggerIcon=\"chevron\">General</AccordionTrigger>\n <AccordionContent>\n Store name, contact details, and default locale for the storefront.\n </AccordionContent>\n </AccordionItem>\n <AccordionItem value=\"advanced\">\n <AccordionTrigger triggerIcon=\"chevron\">Advanced</AccordionTrigger>\n <AccordionContent>\n Webhooks, API keys, and other developer-facing configuration.\n </AccordionContent>\n </AccordionItem>\n </Accordion>\n ),\n code: `import { Accordion, AccordionContent, AccordionItem, AccordionTrigger } from '@open-mercato/ui/primitives/accordion'\n\n<Accordion type=\"multiple\" className=\"w-full space-y-2\">\n <AccordionItem value=\"general\">\n <AccordionTrigger triggerIcon=\"chevron\">General</AccordionTrigger>\n <AccordionContent>Store name, contact details, and default locale.</AccordionContent>\n </AccordionItem>\n <AccordionItem value=\"advanced\">\n <AccordionTrigger triggerIcon=\"chevron\">Advanced</AccordionTrigger>\n <AccordionContent>Webhooks, API keys, and developer configuration.</AccordionContent>\n </AccordionItem>\n</Accordion>`,\n },\n ],\n}\n\nexport const entries: GalleryEntry[] = [\n tabsEntry,\n breadcrumbEntry,\n paginationEntry,\n segmentedControlEntry,\n accordionEntry,\n]\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }