@open-mercato/core 0.7.1-develop.7203.1.9396450b78 → 0.8.1-develop.7204.1.83330e271e

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 (416) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/build.mjs +11 -0
  3. package/dist/modules/catalog/backend/catalog/products/[id]/page.js +23 -0
  4. package/dist/modules/catalog/backend/catalog/products/[id]/page.js.map +2 -2
  5. package/dist/modules/customers/backend/customers/companies/[id]/page.js +2 -1
  6. package/dist/modules/customers/backend/customers/companies/[id]/page.js.map +2 -2
  7. package/dist/modules/customers/backend/customers/companies-v2/[id]/page.js +2 -1
  8. package/dist/modules/customers/backend/customers/companies-v2/[id]/page.js.map +2 -2
  9. package/dist/modules/customers/backend/customers/people/[id]/page.js +2 -2
  10. package/dist/modules/customers/backend/customers/people/[id]/page.js.map +2 -2
  11. package/dist/modules/customers/backend/customers/people-v2/[id]/page.js +2 -1
  12. package/dist/modules/customers/backend/customers/people-v2/[id]/page.js.map +2 -2
  13. package/dist/modules/customers/lib/detailHelpers.js +4 -0
  14. package/dist/modules/customers/lib/detailHelpers.js.map +2 -2
  15. package/dist/modules/customers/lib/todoCompatibility.js +5 -0
  16. package/dist/modules/customers/lib/todoCompatibility.js.map +2 -2
  17. package/dist/modules/design_system/backend/design-system/page.meta.js +3 -2
  18. package/dist/modules/design_system/backend/design-system/page.meta.js.map +2 -2
  19. package/dist/modules/design_system/gallery/assets/ai-prompt-image.png +0 -0
  20. package/dist/modules/design_system/gallery/assets/avatar-illustration.png +0 -0
  21. package/dist/modules/design_system/gallery/assets/avatar-memoji.png +0 -0
  22. package/dist/modules/design_system/gallery/assets/avatar-photo.png +0 -0
  23. package/dist/modules/design_system/gallery/assets/blog-photo-0.png +0 -0
  24. package/dist/modules/design_system/gallery/assets/contact-support-portrait.png +0 -0
  25. package/dist/modules/design_system/gallery/assets/crypto-ada.png +0 -0
  26. package/dist/modules/design_system/gallery/assets/crypto-avax.png +0 -0
  27. package/dist/modules/design_system/gallery/assets/crypto-bnb.png +0 -0
  28. package/dist/modules/design_system/gallery/assets/crypto-brand.png +0 -0
  29. package/dist/modules/design_system/gallery/assets/crypto-btc.png +0 -0
  30. package/dist/modules/design_system/gallery/assets/crypto-clock.svg +3 -0
  31. package/dist/modules/design_system/gallery/assets/crypto-crown.svg +3 -0
  32. package/dist/modules/design_system/gallery/assets/crypto-dot.png +0 -0
  33. package/dist/modules/design_system/gallery/assets/crypto-eth.png +0 -0
  34. package/dist/modules/design_system/gallery/assets/crypto-hbar.png +0 -0
  35. package/dist/modules/design_system/gallery/assets/crypto-history.svg +3 -0
  36. package/dist/modules/design_system/gallery/assets/crypto-link.svg +3 -0
  37. package/dist/modules/design_system/gallery/assets/crypto-menu.svg +3 -0
  38. package/dist/modules/design_system/gallery/assets/crypto-metamask.png +0 -0
  39. package/dist/modules/design_system/gallery/assets/crypto-more.svg +3 -0
  40. package/dist/modules/design_system/gallery/assets/crypto-phantom.png +0 -0
  41. package/dist/modules/design_system/gallery/assets/crypto-rewards.svg +3 -0
  42. package/dist/modules/design_system/gallery/assets/crypto-sad-face.png +0 -0
  43. package/dist/modules/design_system/gallery/assets/crypto-sol.png +0 -0
  44. package/dist/modules/design_system/gallery/assets/crypto-star.svg +3 -0
  45. package/dist/modules/design_system/gallery/assets/crypto-status-cancelled.svg +3 -0
  46. package/dist/modules/design_system/gallery/assets/crypto-status-pending.svg +3 -0
  47. package/dist/modules/design_system/gallery/assets/crypto-status-success.svg +3 -0
  48. package/dist/modules/design_system/gallery/assets/crypto-status-warning.svg +3 -0
  49. package/dist/modules/design_system/gallery/assets/crypto-trx.png +0 -0
  50. package/dist/modules/design_system/gallery/assets/crypto-usdc.png +0 -0
  51. package/dist/modules/design_system/gallery/assets/crypto-usdt.png +0 -0
  52. package/dist/modules/design_system/gallery/assets/crypto-walletconnect.png +0 -0
  53. package/dist/modules/design_system/gallery/assets/crypto-wei.png +0 -0
  54. package/dist/modules/design_system/gallery/assets/crypto-xrp.png +0 -0
  55. package/dist/modules/design_system/gallery/assets/cryptocurrency-artwork.js +67 -0
  56. package/dist/modules/design_system/gallery/assets/cryptocurrency-artwork.js.map +7 -0
  57. package/dist/modules/design_system/gallery/assets/github-logo.png +0 -0
  58. package/dist/modules/design_system/gallery/assets/images.d.js +1 -0
  59. package/dist/modules/design_system/gallery/assets/images.d.js.map +7 -0
  60. package/dist/modules/design_system/gallery/assets/input-european-union.svg +18 -0
  61. package/dist/modules/design_system/gallery/assets/landing-teams-01.png +0 -0
  62. package/dist/modules/design_system/gallery/assets/marketing-artwork.js +83 -0
  63. package/dist/modules/design_system/gallery/assets/marketing-artwork.js.map +7 -0
  64. package/dist/modules/design_system/gallery/assets/menu-apex.svg +18 -0
  65. package/dist/modules/design_system/gallery/assets/menu-mastercard.svg +7 -0
  66. package/dist/modules/design_system/gallery/assets/menu-spotify.svg +4 -0
  67. package/dist/modules/design_system/gallery/assets/menu-united-states.svg +16 -0
  68. package/dist/modules/design_system/gallery/assets/select-google.png +0 -0
  69. package/dist/modules/design_system/gallery/assets/select-poland.png +0 -0
  70. package/dist/modules/design_system/gallery/assets/selection-artwork.js +5 -0
  71. package/dist/modules/design_system/gallery/assets/selection-artwork.js.map +7 -0
  72. package/dist/modules/design_system/gallery/assets/social-apple-filled.svg +4 -0
  73. package/dist/modules/design_system/gallery/assets/social-apple-stroke.svg +4 -0
  74. package/dist/modules/design_system/gallery/assets/social-dropbox-filled.svg +5 -0
  75. package/dist/modules/design_system/gallery/assets/social-dropbox-stroke.svg +5 -0
  76. package/dist/modules/design_system/gallery/assets/social-facebook-filled.svg +4 -0
  77. package/dist/modules/design_system/gallery/assets/social-facebook-stroke.svg +10 -0
  78. package/dist/modules/design_system/gallery/assets/social-github-filled.svg +4 -0
  79. package/dist/modules/design_system/gallery/assets/social-github-stroke.svg +4 -0
  80. package/dist/modules/design_system/gallery/assets/social-google-filled.svg +7 -0
  81. package/dist/modules/design_system/gallery/assets/social-google-stroke.svg +7 -0
  82. package/dist/modules/design_system/gallery/assets/social-linkedin-filled.svg +4 -0
  83. package/dist/modules/design_system/gallery/assets/social-linkedin-stroke.svg +4 -0
  84. package/dist/modules/design_system/gallery/assets/social-x-filled.svg +4 -0
  85. package/dist/modules/design_system/gallery/assets/social-x-stroke.svg +4 -0
  86. package/dist/modules/design_system/gallery/assets/style-studio-product.png +0 -0
  87. package/dist/modules/design_system/gallery/assets/upload-images.js +8 -0
  88. package/dist/modules/design_system/gallery/assets/upload-images.js.map +7 -0
  89. package/dist/modules/design_system/gallery/components/BrandStylePreview.js +74 -0
  90. package/dist/modules/design_system/gallery/components/BrandStylePreview.js.map +7 -0
  91. package/dist/modules/design_system/gallery/components/CodeSnippet.js +31 -31
  92. package/dist/modules/design_system/gallery/components/CodeSnippet.js.map +2 -2
  93. package/dist/modules/design_system/gallery/components/ColorPlayground.js +408 -0
  94. package/dist/modules/design_system/gallery/components/ColorPlayground.js.map +7 -0
  95. package/dist/modules/design_system/gallery/components/ColorStudioCompositions.js +166 -0
  96. package/dist/modules/design_system/gallery/components/ColorStudioCompositions.js.map +7 -0
  97. package/dist/modules/design_system/gallery/components/ColorStudioSpecimen.js +182 -0
  98. package/dist/modules/design_system/gallery/components/ColorStudioSpecimen.js.map +7 -0
  99. package/dist/modules/design_system/gallery/components/CompactEntrySpecimen.js +80 -0
  100. package/dist/modules/design_system/gallery/components/CompactEntrySpecimen.js.map +7 -0
  101. package/dist/modules/design_system/gallery/components/ComponentIndex.js +42 -0
  102. package/dist/modules/design_system/gallery/components/ComponentIndex.js.map +7 -0
  103. package/dist/modules/design_system/gallery/components/DesignSystemHome.js +69 -0
  104. package/dist/modules/design_system/gallery/components/DesignSystemHome.js.map +7 -0
  105. package/dist/modules/design_system/gallery/components/EntryCard.js +47 -41
  106. package/dist/modules/design_system/gallery/components/EntryCard.js.map +2 -2
  107. package/dist/modules/design_system/gallery/components/EntryHeader.js +68 -0
  108. package/dist/modules/design_system/gallery/components/EntryHeader.js.map +7 -0
  109. package/dist/modules/design_system/gallery/components/FamilyEntryPreview.js +19 -0
  110. package/dist/modules/design_system/gallery/components/FamilyEntryPreview.js.map +7 -0
  111. package/dist/modules/design_system/gallery/components/FoundationGuide.js +46 -0
  112. package/dist/modules/design_system/gallery/components/FoundationGuide.js.map +7 -0
  113. package/dist/modules/design_system/gallery/components/GalleryLink.js +21 -0
  114. package/dist/modules/design_system/gallery/components/GalleryLink.js.map +7 -0
  115. package/dist/modules/design_system/gallery/components/GalleryNavigation.js +82 -0
  116. package/dist/modules/design_system/gallery/components/GalleryNavigation.js.map +7 -0
  117. package/dist/modules/design_system/gallery/components/GalleryShell.js +147 -67
  118. package/dist/modules/design_system/gallery/components/GalleryShell.js.map +3 -3
  119. package/dist/modules/design_system/gallery/components/IconsBrowser.js +33 -0
  120. package/dist/modules/design_system/gallery/components/IconsBrowser.js.map +7 -0
  121. package/dist/modules/design_system/gallery/components/SourceLibrary.js +93 -0
  122. package/dist/modules/design_system/gallery/components/SourceLibrary.js.map +7 -0
  123. package/dist/modules/design_system/gallery/components/StyleAgents.js +139 -0
  124. package/dist/modules/design_system/gallery/components/StyleAgents.js.map +7 -0
  125. package/dist/modules/design_system/gallery/components/ThemeTokenReference.js +101 -0
  126. package/dist/modules/design_system/gallery/components/ThemeTokenReference.js.map +7 -0
  127. package/dist/modules/design_system/gallery/components/VariantPreview.js +2 -2
  128. package/dist/modules/design_system/gallery/components/VariantPreview.js.map +2 -2
  129. package/dist/modules/design_system/gallery/components/colorPreview.js +58 -0
  130. package/dist/modules/design_system/gallery/components/colorPreview.js.map +7 -0
  131. package/dist/modules/design_system/gallery/components/colorStudio.js +218 -0
  132. package/dist/modules/design_system/gallery/components/colorStudio.js.map +7 -0
  133. package/dist/modules/design_system/gallery/components/styleAgentBranding.js +46 -0
  134. package/dist/modules/design_system/gallery/components/styleAgentBranding.js.map +7 -0
  135. package/dist/modules/design_system/gallery/components/themeTokens.js +32 -0
  136. package/dist/modules/design_system/gallery/components/themeTokens.js.map +7 -0
  137. package/dist/modules/design_system/gallery/demos/ai-product-code.generated.js +194 -0
  138. package/dist/modules/design_system/gallery/demos/ai-product-code.generated.js.map +7 -0
  139. package/dist/modules/design_system/gallery/demos/ai-product.js +423 -0
  140. package/dist/modules/design_system/gallery/demos/ai-product.js.map +7 -0
  141. package/dist/modules/design_system/gallery/demos/buttons.js +289 -0
  142. package/dist/modules/design_system/gallery/demos/buttons.js.map +7 -0
  143. package/dist/modules/design_system/gallery/demos/cryptocurrency.js +1708 -0
  144. package/dist/modules/design_system/gallery/demos/cryptocurrency.js.map +7 -0
  145. package/dist/modules/design_system/gallery/demos/feeds-code.generated.js +92 -0
  146. package/dist/modules/design_system/gallery/demos/feeds-code.generated.js.map +7 -0
  147. package/dist/modules/design_system/gallery/demos/feeds.js +148 -0
  148. package/dist/modules/design_system/gallery/demos/feeds.js.map +7 -0
  149. package/dist/modules/design_system/gallery/demos/file-upload.js +72 -0
  150. package/dist/modules/design_system/gallery/demos/file-upload.js.map +7 -0
  151. package/dist/modules/design_system/gallery/demos/foundation-reference-data.js +4875 -0
  152. package/dist/modules/design_system/gallery/demos/foundation-reference-data.js.map +7 -0
  153. package/dist/modules/design_system/gallery/demos/foundation-references.js +188 -0
  154. package/dist/modules/design_system/gallery/demos/foundation-references.js.map +7 -0
  155. package/dist/modules/design_system/gallery/demos/key-components-code.generated.js +6 -0
  156. package/dist/modules/design_system/gallery/demos/key-components-code.generated.js.map +7 -0
  157. package/dist/modules/design_system/gallery/demos/key-components.js +127 -0
  158. package/dist/modules/design_system/gallery/demos/key-components.js.map +7 -0
  159. package/dist/modules/design_system/gallery/demos/marketing-controls-code.generated.js +98 -0
  160. package/dist/modules/design_system/gallery/demos/marketing-controls-code.generated.js.map +7 -0
  161. package/dist/modules/design_system/gallery/demos/marketing-controls.js +134 -0
  162. package/dist/modules/design_system/gallery/demos/marketing-controls.js.map +7 -0
  163. package/dist/modules/design_system/gallery/demos/marketing-widgets-code.generated.js +195 -0
  164. package/dist/modules/design_system/gallery/demos/marketing-widgets-code.generated.js.map +7 -0
  165. package/dist/modules/design_system/gallery/demos/marketing-widgets.js +586 -0
  166. package/dist/modules/design_system/gallery/demos/marketing-widgets.js.map +7 -0
  167. package/dist/modules/design_system/gallery/demos/menu-fixtures.js +40 -0
  168. package/dist/modules/design_system/gallery/demos/menu-fixtures.js.map +7 -0
  169. package/dist/modules/design_system/gallery/demos/menu-sources.js +295 -0
  170. package/dist/modules/design_system/gallery/demos/menu-sources.js.map +7 -0
  171. package/dist/modules/design_system/gallery/demos/menus.js +150 -0
  172. package/dist/modules/design_system/gallery/demos/menus.js.map +7 -0
  173. package/dist/modules/design_system/gallery/demos/rating-reviews.js +53 -0
  174. package/dist/modules/design_system/gallery/demos/rating-reviews.js.map +7 -0
  175. package/dist/modules/design_system/gallery/demos/registered-icons.js +104 -0
  176. package/dist/modules/design_system/gallery/demos/registered-icons.js.map +7 -0
  177. package/dist/modules/design_system/gallery/demos/selection-cards.js +99 -0
  178. package/dist/modules/design_system/gallery/demos/selection-cards.js.map +7 -0
  179. package/dist/modules/design_system/gallery/demos/shell-code.generated.js +189 -0
  180. package/dist/modules/design_system/gallery/demos/shell-code.generated.js.map +7 -0
  181. package/dist/modules/design_system/gallery/demos/shell.js +330 -0
  182. package/dist/modules/design_system/gallery/demos/shell.js.map +7 -0
  183. package/dist/modules/design_system/gallery/demos/source-artwork.js +120 -0
  184. package/dist/modules/design_system/gallery/demos/source-artwork.js.map +7 -0
  185. package/dist/modules/design_system/gallery/demos/source-filters-code.generated.js +125 -0
  186. package/dist/modules/design_system/gallery/demos/source-filters-code.generated.js.map +7 -0
  187. package/dist/modules/design_system/gallery/demos/source-filters.js +185 -0
  188. package/dist/modules/design_system/gallery/demos/source-filters.js.map +7 -0
  189. package/dist/modules/design_system/gallery/demos/source-icons.js +69 -0
  190. package/dist/modules/design_system/gallery/demos/source-icons.js.map +7 -0
  191. package/dist/modules/design_system/gallery/demos/table-cells-code.generated.js +150 -0
  192. package/dist/modules/design_system/gallery/demos/table-cells-code.generated.js.map +7 -0
  193. package/dist/modules/design_system/gallery/demos/table-cells.js +181 -0
  194. package/dist/modules/design_system/gallery/demos/table-cells.js.map +7 -0
  195. package/dist/modules/design_system/gallery/demos/text-inputs.js +113 -0
  196. package/dist/modules/design_system/gallery/demos/text-inputs.js.map +7 -0
  197. package/dist/modules/design_system/gallery/demos/time-picker-code.generated.js +41 -0
  198. package/dist/modules/design_system/gallery/demos/time-picker-code.generated.js.map +7 -0
  199. package/dist/modules/design_system/gallery/demos/time-picker.js +41 -0
  200. package/dist/modules/design_system/gallery/demos/time-picker.js.map +7 -0
  201. package/dist/modules/design_system/gallery/entries/banners.js +123 -60
  202. package/dist/modules/design_system/gallery/entries/banners.js.map +2 -2
  203. package/dist/modules/design_system/gallery/entries/buttons-snippets.js +433 -0
  204. package/dist/modules/design_system/gallery/entries/buttons-snippets.js.map +7 -0
  205. package/dist/modules/design_system/gallery/entries/buttons.js +127 -148
  206. package/dist/modules/design_system/gallery/entries/buttons.js.map +2 -2
  207. package/dist/modules/design_system/gallery/entries/charts.js +532 -186
  208. package/dist/modules/design_system/gallery/entries/charts.js.map +2 -2
  209. package/dist/modules/design_system/gallery/entries/dates.js +191 -3
  210. package/dist/modules/design_system/gallery/entries/dates.js.map +2 -2
  211. package/dist/modules/design_system/gallery/entries/detail.js +118 -77
  212. package/dist/modules/design_system/gallery/entries/detail.js.map +2 -2
  213. package/dist/modules/design_system/gallery/entries/display.js +1449 -240
  214. package/dist/modules/design_system/gallery/entries/display.js.map +2 -2
  215. package/dist/modules/design_system/gallery/entries/feedback.js +1058 -132
  216. package/dist/modules/design_system/gallery/entries/feedback.js.map +2 -2
  217. package/dist/modules/design_system/gallery/entries/filters.js +231 -103
  218. package/dist/modules/design_system/gallery/entries/filters.js.map +2 -2
  219. package/dist/modules/design_system/gallery/entries/foundations.js +368 -57
  220. package/dist/modules/design_system/gallery/entries/foundations.js.map +2 -2
  221. package/dist/modules/design_system/gallery/entries/icons.js +29 -91
  222. package/dist/modules/design_system/gallery/entries/icons.js.map +2 -2
  223. package/dist/modules/design_system/gallery/entries/inputs-snippets.js +154 -0
  224. package/dist/modules/design_system/gallery/entries/inputs-snippets.js.map +7 -0
  225. package/dist/modules/design_system/gallery/entries/inputs.js +2043 -306
  226. package/dist/modules/design_system/gallery/entries/inputs.js.map +2 -2
  227. package/dist/modules/design_system/gallery/entries/library.js +20 -0
  228. package/dist/modules/design_system/gallery/entries/library.js.map +7 -0
  229. package/dist/modules/design_system/gallery/entries/messages.js +121 -103
  230. package/dist/modules/design_system/gallery/entries/messages.js.map +2 -2
  231. package/dist/modules/design_system/gallery/entries/navigation.js +676 -103
  232. package/dist/modules/design_system/gallery/entries/navigation.js.map +2 -2
  233. package/dist/modules/design_system/gallery/entries/notifications.js +131 -78
  234. package/dist/modules/design_system/gallery/entries/notifications.js.map +2 -2
  235. package/dist/modules/design_system/gallery/entries/overlays.js +611 -203
  236. package/dist/modules/design_system/gallery/entries/overlays.js.map +2 -2
  237. package/dist/modules/design_system/gallery/entries/scaffolding.js +1175 -120
  238. package/dist/modules/design_system/gallery/entries/scaffolding.js.map +2 -2
  239. package/dist/modules/design_system/gallery/entries/schedule.js +79 -54
  240. package/dist/modules/design_system/gallery/entries/schedule.js.map +2 -2
  241. package/dist/modules/design_system/gallery/presentation.js +108 -0
  242. package/dist/modules/design_system/gallery/presentation.js.map +7 -0
  243. package/dist/modules/design_system/gallery/registry.js +8 -5
  244. package/dist/modules/design_system/gallery/registry.js.map +2 -2
  245. package/dist/modules/design_system/gallery/source-library.generated.js +5 -0
  246. package/dist/modules/design_system/gallery/source-library.generated.js.map +7 -0
  247. package/dist/modules/design_system/i18n/de.json +7167 -0
  248. package/dist/modules/design_system/i18n/en.json +7167 -0
  249. package/dist/modules/design_system/i18n/es.json +7167 -0
  250. package/dist/modules/design_system/i18n/ko.json +7167 -0
  251. package/dist/modules/design_system/i18n/pl.json +7167 -0
  252. package/dist/modules/push_notifications/lib/queue.js +1 -31
  253. package/dist/modules/push_notifications/lib/queue.js.map +2 -2
  254. package/jest.config.cjs +1 -0
  255. package/jest.mocks/image.js +1 -0
  256. package/package.json +8 -8
  257. package/src/modules/catalog/backend/catalog/products/[id]/page.tsx +50 -0
  258. package/src/modules/customers/backend/customers/companies/[id]/page.tsx +2 -1
  259. package/src/modules/customers/backend/customers/companies-v2/[id]/page.tsx +2 -1
  260. package/src/modules/customers/backend/customers/people/[id]/page.tsx +2 -2
  261. package/src/modules/customers/backend/customers/people-v2/[id]/page.tsx +2 -1
  262. package/src/modules/customers/lib/detailHelpers.ts +4 -0
  263. package/src/modules/customers/lib/todoCompatibility.ts +10 -0
  264. package/src/modules/design_system/backend/design-system/page.meta.ts +3 -2
  265. package/src/modules/design_system/gallery/assets/README.md +30 -0
  266. package/src/modules/design_system/gallery/assets/ai-prompt-image.png +0 -0
  267. package/src/modules/design_system/gallery/assets/avatar-illustration.png +0 -0
  268. package/src/modules/design_system/gallery/assets/avatar-memoji.png +0 -0
  269. package/src/modules/design_system/gallery/assets/avatar-photo.png +0 -0
  270. package/src/modules/design_system/gallery/assets/blog-photo-0.png +0 -0
  271. package/src/modules/design_system/gallery/assets/contact-support-portrait.png +0 -0
  272. package/src/modules/design_system/gallery/assets/crypto-ada.png +0 -0
  273. package/src/modules/design_system/gallery/assets/crypto-avax.png +0 -0
  274. package/src/modules/design_system/gallery/assets/crypto-bnb.png +0 -0
  275. package/src/modules/design_system/gallery/assets/crypto-brand.png +0 -0
  276. package/src/modules/design_system/gallery/assets/crypto-btc.png +0 -0
  277. package/src/modules/design_system/gallery/assets/crypto-clock.svg +3 -0
  278. package/src/modules/design_system/gallery/assets/crypto-crown.svg +3 -0
  279. package/src/modules/design_system/gallery/assets/crypto-dot.png +0 -0
  280. package/src/modules/design_system/gallery/assets/crypto-eth.png +0 -0
  281. package/src/modules/design_system/gallery/assets/crypto-hbar.png +0 -0
  282. package/src/modules/design_system/gallery/assets/crypto-history.svg +3 -0
  283. package/src/modules/design_system/gallery/assets/crypto-link.svg +3 -0
  284. package/src/modules/design_system/gallery/assets/crypto-menu.svg +3 -0
  285. package/src/modules/design_system/gallery/assets/crypto-metamask.png +0 -0
  286. package/src/modules/design_system/gallery/assets/crypto-more.svg +3 -0
  287. package/src/modules/design_system/gallery/assets/crypto-phantom.png +0 -0
  288. package/src/modules/design_system/gallery/assets/crypto-rewards.svg +3 -0
  289. package/src/modules/design_system/gallery/assets/crypto-sad-face.png +0 -0
  290. package/src/modules/design_system/gallery/assets/crypto-sol.png +0 -0
  291. package/src/modules/design_system/gallery/assets/crypto-star.svg +3 -0
  292. package/src/modules/design_system/gallery/assets/crypto-status-cancelled.svg +3 -0
  293. package/src/modules/design_system/gallery/assets/crypto-status-pending.svg +3 -0
  294. package/src/modules/design_system/gallery/assets/crypto-status-success.svg +3 -0
  295. package/src/modules/design_system/gallery/assets/crypto-status-warning.svg +3 -0
  296. package/src/modules/design_system/gallery/assets/crypto-trx.png +0 -0
  297. package/src/modules/design_system/gallery/assets/crypto-usdc.png +0 -0
  298. package/src/modules/design_system/gallery/assets/crypto-usdt.png +0 -0
  299. package/src/modules/design_system/gallery/assets/crypto-walletconnect.png +0 -0
  300. package/src/modules/design_system/gallery/assets/crypto-wei.png +0 -0
  301. package/src/modules/design_system/gallery/assets/crypto-xrp.png +0 -0
  302. package/src/modules/design_system/gallery/assets/cryptocurrency-artwork.ts +63 -0
  303. package/src/modules/design_system/gallery/assets/github-logo.png +0 -0
  304. package/src/modules/design_system/gallery/assets/images.d.ts +9 -0
  305. package/src/modules/design_system/gallery/assets/input-european-union.svg +18 -0
  306. package/src/modules/design_system/gallery/assets/landing-teams-01.png +0 -0
  307. package/src/modules/design_system/gallery/assets/marketing-artwork.ts +79 -0
  308. package/src/modules/design_system/gallery/assets/menu-apex.svg +18 -0
  309. package/src/modules/design_system/gallery/assets/menu-mastercard.svg +7 -0
  310. package/src/modules/design_system/gallery/assets/menu-spotify.svg +4 -0
  311. package/src/modules/design_system/gallery/assets/menu-united-states.svg +16 -0
  312. package/src/modules/design_system/gallery/assets/select-google.png +0 -0
  313. package/src/modules/design_system/gallery/assets/select-poland.png +0 -0
  314. package/src/modules/design_system/gallery/assets/selection-artwork.ts +1 -0
  315. package/src/modules/design_system/gallery/assets/social-apple-filled.svg +4 -0
  316. package/src/modules/design_system/gallery/assets/social-apple-stroke.svg +4 -0
  317. package/src/modules/design_system/gallery/assets/social-dropbox-filled.svg +5 -0
  318. package/src/modules/design_system/gallery/assets/social-dropbox-stroke.svg +5 -0
  319. package/src/modules/design_system/gallery/assets/social-facebook-filled.svg +4 -0
  320. package/src/modules/design_system/gallery/assets/social-facebook-stroke.svg +10 -0
  321. package/src/modules/design_system/gallery/assets/social-github-filled.svg +4 -0
  322. package/src/modules/design_system/gallery/assets/social-github-stroke.svg +4 -0
  323. package/src/modules/design_system/gallery/assets/social-google-filled.svg +7 -0
  324. package/src/modules/design_system/gallery/assets/social-google-stroke.svg +7 -0
  325. package/src/modules/design_system/gallery/assets/social-linkedin-filled.svg +4 -0
  326. package/src/modules/design_system/gallery/assets/social-linkedin-stroke.svg +4 -0
  327. package/src/modules/design_system/gallery/assets/social-x-filled.svg +4 -0
  328. package/src/modules/design_system/gallery/assets/social-x-stroke.svg +4 -0
  329. package/src/modules/design_system/gallery/assets/style-studio-product.png +0 -0
  330. package/src/modules/design_system/gallery/assets/upload-images.ts +5 -0
  331. package/src/modules/design_system/gallery/components/BrandStylePreview.tsx +94 -0
  332. package/src/modules/design_system/gallery/components/CodeSnippet.tsx +34 -34
  333. package/src/modules/design_system/gallery/components/ColorPlayground.tsx +324 -0
  334. package/src/modules/design_system/gallery/components/ColorStudioCompositions.tsx +96 -0
  335. package/src/modules/design_system/gallery/components/ColorStudioSpecimen.tsx +164 -0
  336. package/src/modules/design_system/gallery/components/CompactEntrySpecimen.tsx +65 -0
  337. package/src/modules/design_system/gallery/components/ComponentIndex.tsx +47 -0
  338. package/src/modules/design_system/gallery/components/DesignSystemHome.tsx +66 -0
  339. package/src/modules/design_system/gallery/components/EntryCard.tsx +52 -37
  340. package/src/modules/design_system/gallery/components/EntryHeader.tsx +80 -0
  341. package/src/modules/design_system/gallery/components/FamilyEntryPreview.tsx +22 -0
  342. package/src/modules/design_system/gallery/components/FoundationGuide.tsx +43 -0
  343. package/src/modules/design_system/gallery/components/GalleryLink.tsx +19 -0
  344. package/src/modules/design_system/gallery/components/GalleryNavigation.tsx +86 -0
  345. package/src/modules/design_system/gallery/components/GalleryShell.tsx +149 -63
  346. package/src/modules/design_system/gallery/components/IconsBrowser.tsx +40 -0
  347. package/src/modules/design_system/gallery/components/SourceLibrary.tsx +90 -0
  348. package/src/modules/design_system/gallery/components/StyleAgents.tsx +115 -0
  349. package/src/modules/design_system/gallery/components/ThemeTokenReference.tsx +76 -0
  350. package/src/modules/design_system/gallery/components/VariantPreview.tsx +2 -2
  351. package/src/modules/design_system/gallery/components/colorPreview.ts +63 -0
  352. package/src/modules/design_system/gallery/components/colorStudio.ts +260 -0
  353. package/src/modules/design_system/gallery/components/styleAgentBranding.ts +42 -0
  354. package/src/modules/design_system/gallery/components/themeTokens.ts +26 -0
  355. package/src/modules/design_system/gallery/demos/ai-product-code.generated.ts +3 -0
  356. package/src/modules/design_system/gallery/demos/ai-product.tsx +188 -0
  357. package/src/modules/design_system/gallery/demos/buttons.tsx +331 -0
  358. package/src/modules/design_system/gallery/demos/cryptocurrency.tsx +1943 -0
  359. package/src/modules/design_system/gallery/demos/feeds-code.generated.ts +4 -0
  360. package/src/modules/design_system/gallery/demos/feeds.tsx +82 -0
  361. package/src/modules/design_system/gallery/demos/file-upload.tsx +61 -0
  362. package/src/modules/design_system/gallery/demos/foundation-reference-data.ts +4872 -0
  363. package/src/modules/design_system/gallery/demos/foundation-references.tsx +140 -0
  364. package/src/modules/design_system/gallery/demos/key-components-code.generated.ts +3 -0
  365. package/src/modules/design_system/gallery/demos/key-components.tsx +106 -0
  366. package/src/modules/design_system/gallery/demos/marketing-controls-code.generated.ts +3 -0
  367. package/src/modules/design_system/gallery/demos/marketing-controls.tsx +92 -0
  368. package/src/modules/design_system/gallery/demos/marketing-widgets-code.generated.ts +3 -0
  369. package/src/modules/design_system/gallery/demos/marketing-widgets.tsx +189 -0
  370. package/src/modules/design_system/gallery/demos/menu-fixtures.tsx +48 -0
  371. package/src/modules/design_system/gallery/demos/menu-sources.ts +5 -0
  372. package/src/modules/design_system/gallery/demos/menus.tsx +122 -0
  373. package/src/modules/design_system/gallery/demos/rating-reviews.tsx +44 -0
  374. package/src/modules/design_system/gallery/demos/registered-icons.tsx +117 -0
  375. package/src/modules/design_system/gallery/demos/selection-cards.tsx +97 -0
  376. package/src/modules/design_system/gallery/demos/shell-code.generated.ts +3 -0
  377. package/src/modules/design_system/gallery/demos/shell.tsx +183 -0
  378. package/src/modules/design_system/gallery/demos/source-artwork.tsx +88 -0
  379. package/src/modules/design_system/gallery/demos/source-filters-code.generated.ts +3 -0
  380. package/src/modules/design_system/gallery/demos/source-filters.tsx +119 -0
  381. package/src/modules/design_system/gallery/demos/source-icons.tsx +62 -0
  382. package/src/modules/design_system/gallery/demos/table-cells-code.generated.ts +3 -0
  383. package/src/modules/design_system/gallery/demos/table-cells.tsx +144 -0
  384. package/src/modules/design_system/gallery/demos/text-inputs.tsx +90 -0
  385. package/src/modules/design_system/gallery/demos/time-picker-code.generated.ts +5 -0
  386. package/src/modules/design_system/gallery/demos/time-picker.tsx +31 -0
  387. package/src/modules/design_system/gallery/entries/banners.tsx +143 -94
  388. package/src/modules/design_system/gallery/entries/buttons-snippets.ts +432 -0
  389. package/src/modules/design_system/gallery/entries/buttons.tsx +125 -196
  390. package/src/modules/design_system/gallery/entries/charts.tsx +545 -233
  391. package/src/modules/design_system/gallery/entries/dates.tsx +171 -3
  392. package/src/modules/design_system/gallery/entries/detail.tsx +142 -115
  393. package/src/modules/design_system/gallery/entries/display.tsx +1691 -319
  394. package/src/modules/design_system/gallery/entries/feedback.tsx +1082 -169
  395. package/src/modules/design_system/gallery/entries/filters.tsx +238 -143
  396. package/src/modules/design_system/gallery/entries/foundations.tsx +404 -61
  397. package/src/modules/design_system/gallery/entries/icons.tsx +31 -117
  398. package/src/modules/design_system/gallery/entries/inputs-snippets.ts +156 -0
  399. package/src/modules/design_system/gallery/entries/inputs.tsx +2146 -503
  400. package/src/modules/design_system/gallery/entries/library.tsx +16 -0
  401. package/src/modules/design_system/gallery/entries/messages.tsx +114 -106
  402. package/src/modules/design_system/gallery/entries/navigation.tsx +782 -192
  403. package/src/modules/design_system/gallery/entries/notifications.tsx +145 -120
  404. package/src/modules/design_system/gallery/entries/overlays.tsx +696 -280
  405. package/src/modules/design_system/gallery/entries/scaffolding.tsx +1192 -158
  406. package/src/modules/design_system/gallery/entries/schedule.tsx +72 -58
  407. package/src/modules/design_system/gallery/presentation.ts +106 -0
  408. package/src/modules/design_system/gallery/registry.ts +8 -6
  409. package/src/modules/design_system/gallery/source-library.generated.ts +2 -0
  410. package/src/modules/design_system/i18n/de.json +7112 -3
  411. package/src/modules/design_system/i18n/en.json +7112 -3
  412. package/src/modules/design_system/i18n/es.json +7112 -3
  413. package/src/modules/design_system/i18n/ko.json +7112 -3
  414. package/src/modules/design_system/i18n/pl.json +7112 -3
  415. package/src/modules/push_notifications/AGENTS.md +9 -5
  416. package/src/modules/push_notifications/lib/queue.ts +15 -44
@@ -1,10 +1,11 @@
1
1
  import { jsx, jsxs } from "react/jsx-runtime";
2
+ import { useT } from "@open-mercato/shared/lib/i18n/context";
2
3
  import * as React from "react";
4
+ import { SourceFilterParts, SourceFilterPanel, SourceFilterToolbar } from "../demos/source-filters.js";
5
+ import { sourceFilterExampleCode } from "../demos/source-filters-code.generated.js";
3
6
  import { Download } from "lucide-react";
4
7
  import { Button } from "@open-mercato/ui/primitives/button";
5
- import {
6
- FilterBar
7
- } from "@open-mercato/ui/backend/FilterBar";
8
+ import { FilterBar } from "@open-mercato/ui/backend/FilterBar";
8
9
  import { QuickFilters } from "@open-mercato/ui/backend/filters/QuickFilters";
9
10
  import { ActiveFilterChips } from "@open-mercato/ui/backend/filters/ActiveFilterChips";
10
11
  import { AdvancedFilterBuilder } from "@open-mercato/ui/backend/filters/AdvancedFilterBuilder";
@@ -12,40 +13,185 @@ import { FilterEmptyState } from "@open-mercato/ui/backend/filters/FilterEmptySt
12
13
  import { ListEmptyState } from "@open-mercato/ui/backend/filters/ListEmptyState";
13
14
  import { FilteredEmptyResults } from "@open-mercato/ui/backend/filters/FilteredEmptyResults";
14
15
  import { SearchEmptyResults } from "@open-mercato/ui/backend/filters/SearchEmptyResults";
15
- const demoFilterDefs = [
16
- { id: "city", label: "City", type: "text", placeholder: "e.g. Berlin" },
16
+ function FilterBarEntryTrailingItemsPreview() {
17
+ const t = useT();
18
+ return /* @__PURE__ */ jsx(
19
+ DemoFilterBar,
20
+ {
21
+ trailingItems: /* @__PURE__ */ jsxs(Button, { variant: "outline", size: "sm", children: [
22
+ /* @__PURE__ */ jsx(Download, {}),
23
+ t("design_system.gallery.samples.content.export")
24
+ ] })
25
+ }
26
+ );
27
+ }
28
+ function ListEmptyStateEntryWithCreateActionPreview() {
29
+ const t = useT();
30
+ return /* @__PURE__ */ jsx("div", { className: "w-full max-w-xl", children: /* @__PURE__ */ jsx(
31
+ ListEmptyState,
32
+ {
33
+ entityName: t("design_system.gallery.samples.content.companies"),
34
+ onCreate: () => {
35
+ },
36
+ createLabel: t("design_system.gallery.samples.content.addCompany")
37
+ }
38
+ ) });
39
+ }
40
+ function ListEmptyStateEntryCustomCopyPreview() {
41
+ const t = useT();
42
+ return /* @__PURE__ */ jsx("div", { className: "w-full max-w-xl", children: /* @__PURE__ */ jsx(
43
+ ListEmptyState,
44
+ {
45
+ title: t("design_system.gallery.samples.content.noImportsYet"),
46
+ description: t("design_system.gallery.samples.content.connectASourceOrUploadACsvFileToBringRecordsIn")
47
+ }
48
+ ) });
49
+ }
50
+ function FilteredEmptyResultsEntryFiltersOnlyPreview() {
51
+ const t = useT();
52
+ return /* @__PURE__ */ jsx("div", { className: "w-full max-w-xl", children: /* @__PURE__ */ jsx(
53
+ FilteredEmptyResults,
54
+ {
55
+ entityNamePlural: t("design_system.gallery.samples.content.companies"),
56
+ canRemoveLast: true,
57
+ onClearAll: () => {
58
+ },
59
+ onRemoveLast: () => {
60
+ }
61
+ }
62
+ ) });
63
+ }
64
+ function FilteredEmptyResultsEntryWithSearchPreview() {
65
+ const t = useT();
66
+ return /* @__PURE__ */ jsx("div", { className: "w-full max-w-xl", children: /* @__PURE__ */ jsx(
67
+ FilteredEmptyResults,
68
+ {
69
+ entityNamePlural: t("design_system.gallery.samples.content.companies"),
70
+ canRemoveLast: true,
71
+ onClearAll: () => {
72
+ },
73
+ onRemoveLast: () => {
74
+ },
75
+ onClearSearch: () => {
76
+ }
77
+ }
78
+ ) });
79
+ }
80
+ function SearchEmptyResultsEntryWithEntityPreview() {
81
+ const t = useT();
82
+ return /* @__PURE__ */ jsx("div", { className: "flex w-full max-w-xl justify-center", children: /* @__PURE__ */ jsx(
83
+ SearchEmptyResults,
84
+ {
85
+ query: "northwind",
86
+ entityNamePlural: t("design_system.gallery.samples.content.companies"),
87
+ onClearSearch: () => {
88
+ }
89
+ }
90
+ ) });
91
+ }
92
+ function QuickFiltersEntryPresetsPreview() {
93
+ const t = useT();
94
+ return /* @__PURE__ */ jsx("div", { className: "w-full max-w-xl", children: /* @__PURE__ */ jsx(QuickFilters, { presets: demoPresets(t), userId: "user-1", onApply: () => {
95
+ } }) });
96
+ }
97
+ function QuickFiltersEntryUserScopedPreview() {
98
+ const t = useT();
99
+ return /* @__PURE__ */ jsxs("div", { className: "flex w-full max-w-xl flex-col gap-6", children: [
100
+ /* @__PURE__ */ jsx(QuickFilters, { presets: userScopedPresets(t), userId: "user-1", onApply: () => {
101
+ } }),
102
+ /* @__PURE__ */ jsx(QuickFilters, { presets: userScopedPresets(t), userId: "", onApply: () => {
103
+ } })
104
+ ] });
105
+ }
106
+ const demoFilterDefs = (t) => [
107
+ {
108
+ id: "city",
109
+ label: t("design_system.gallery.samples.content.city"),
110
+ type: "text",
111
+ placeholder: t("design_system.gallery.samples.content.eGBerlin")
112
+ },
17
113
  {
18
114
  id: "status",
19
- label: "Status",
115
+ label: t("design_system.gallery.samples.content.status"),
20
116
  type: "select",
21
117
  options: [
22
- { value: "active", label: "Active" },
23
- { value: "prospect", label: "Prospect" },
24
- { value: "churned", label: "Churned" }
118
+ {
119
+ value: "active",
120
+ label: t("design_system.gallery.samples.content.active")
121
+ },
122
+ {
123
+ value: "prospect",
124
+ label: t("design_system.gallery.samples.content.prospect")
125
+ },
126
+ {
127
+ value: "churned",
128
+ label: t("design_system.gallery.samples.content.churned")
129
+ }
25
130
  ]
26
131
  },
27
- { id: "hasOpenDeals", label: "Has open deals", type: "checkbox" }
132
+ {
133
+ id: "hasOpenDeals",
134
+ label: t("design_system.gallery.samples.content.hasOpenDeals"),
135
+ type: "checkbox"
136
+ }
28
137
  ];
29
- const demoFields = [
30
- { key: "name", label: "Name", type: "text" },
31
- { key: "email", label: "Email", type: "text" },
138
+ const demoFields = (t) => [
139
+ {
140
+ key: "name",
141
+ label: t("design_system.gallery.samples.content.name"),
142
+ type: "text"
143
+ },
144
+ {
145
+ key: "email",
146
+ label: t("design_system.gallery.samples.content.email"),
147
+ type: "text"
148
+ },
32
149
  {
33
150
  key: "status",
34
- label: "Status",
151
+ label: t("design_system.gallery.samples.content.status"),
35
152
  type: "select",
36
153
  options: [
37
- { value: "active", label: "Active", tone: "success" },
38
- { value: "prospect", label: "Prospect", tone: "info" },
39
- { value: "churned", label: "Churned", tone: "error" }
154
+ {
155
+ value: "active",
156
+ label: t("design_system.gallery.samples.content.active"),
157
+ tone: "success"
158
+ },
159
+ {
160
+ value: "prospect",
161
+ label: t("design_system.gallery.samples.content.prospect"),
162
+ tone: "info"
163
+ },
164
+ {
165
+ value: "churned",
166
+ label: t("design_system.gallery.samples.content.churned"),
167
+ tone: "error"
168
+ }
40
169
  ]
41
170
  },
42
- { key: "employees", label: "Employees", type: "number" }
171
+ {
172
+ key: "employees",
173
+ label: t("design_system.gallery.samples.content.employees"),
174
+ type: "number"
175
+ }
43
176
  ];
44
177
  function rule(id, field, operator, value) {
45
- return { id, type: "rule", field, operator, value };
178
+ return {
179
+ id,
180
+ type: "rule",
181
+ field,
182
+ operator,
183
+ value
184
+ };
46
185
  }
47
186
  function tree(children) {
48
- return { root: { id: "root", type: "group", combinator: "and", children } };
187
+ return {
188
+ root: {
189
+ id: "root",
190
+ type: "group",
191
+ combinator: "and",
192
+ children
193
+ }
194
+ };
49
195
  }
50
196
  const ruleChipsTree = tree([
51
197
  rule("r1", "name", "contains", "north"),
@@ -57,10 +203,7 @@ const groupChipTree = tree([
57
203
  id: "g1",
58
204
  type: "group",
59
205
  combinator: "or",
60
- children: [
61
- rule("g1r1", "status", "is", "prospect"),
62
- rule("g1r2", "status", "is", "churned")
63
- ]
206
+ children: [rule("g1r1", "status", "is", "prospect"), rule("g1r2", "status", "is", "churned")]
64
207
  }
65
208
  ]);
66
209
  const valuelessChipTree = tree([rule("r4", "email", "is_empty", null)]);
@@ -71,47 +214,44 @@ const builderNestedTree = tree([
71
214
  id: "bg1",
72
215
  type: "group",
73
216
  combinator: "or",
74
- children: [
75
- rule("bg1r1", "status", "is", "prospect"),
76
- rule("bg1r2", "employees", "greater_than", 100)
77
- ]
217
+ children: [rule("bg1r1", "status", "is", "prospect"), rule("bg1r2", "employees", "greater_than", 100)]
78
218
  }
79
219
  ]);
80
- const demoPresets = [
220
+ const demoPresets = (t) => [
81
221
  {
82
222
  id: "active-accounts",
83
- labelKey: "Active accounts",
223
+ labelKey: t("design_system.gallery.samples.content.activeAccounts"),
84
224
  iconName: "filter",
85
225
  build: () => tree([rule("p1", "status", "is", "active")])
86
226
  },
87
227
  {
88
228
  id: "added-this-week",
89
- labelKey: "Added this week",
229
+ labelKey: t("design_system.gallery.samples.content.addedThisWeek"),
90
230
  iconName: "clock",
91
231
  build: () => tree([rule("p2", "name", "is_not_empty", null)])
92
232
  }
93
233
  ];
94
- const userScopedPresets = [
95
- ...demoPresets,
234
+ const userScopedPresets = (t) => [
235
+ ...demoPresets(t),
96
236
  {
97
237
  id: "my-accounts",
98
- labelKey: "My accounts",
238
+ labelKey: t("design_system.gallery.samples.content.myAccounts"),
99
239
  requiresUser: true,
100
240
  build: ({ userId }) => tree([rule("p3", "name", "contains", userId)])
101
241
  }
102
242
  ];
103
- function DemoFilterBar({
104
- layout,
105
- trailingItems
106
- }) {
243
+ function DemoFilterBar({ layout, trailingItems }) {
244
+ const t = useT();
107
245
  const [search, setSearch] = React.useState("");
108
- const [values, setValues] = React.useState({ status: "active" });
246
+ const [values, setValues] = React.useState({
247
+ status: "active"
248
+ });
109
249
  return /* @__PURE__ */ jsx("div", { className: "w-full max-w-2xl", children: /* @__PURE__ */ jsx(
110
250
  FilterBar,
111
251
  {
112
252
  searchValue: search,
113
253
  onSearchChange: setSearch,
114
- filters: demoFilterDefs,
254
+ filters: demoFilterDefs(t),
115
255
  values,
116
256
  onApply: setValues,
117
257
  onClear: () => setValues({}),
@@ -121,15 +261,19 @@ function DemoFilterBar({
121
261
  ) });
122
262
  }
123
263
  function DemoActiveFilterChips({ initialTree }) {
264
+ const t = useT();
124
265
  const [value, setValue] = React.useState(initialTree);
125
266
  const removeNode = (id) => setValue((prev) => ({
126
- root: { ...prev.root, children: prev.root.children.filter((child) => child.id !== id) }
267
+ root: {
268
+ ...prev.root,
269
+ children: prev.root.children.filter((child) => child.id !== id)
270
+ }
127
271
  }));
128
272
  return /* @__PURE__ */ jsx("div", { className: "w-full max-w-2xl", children: /* @__PURE__ */ jsx(
129
273
  ActiveFilterChips,
130
274
  {
131
275
  tree: value,
132
- fields: demoFields,
276
+ fields: demoFields(t),
133
277
  popoverOpen: false,
134
278
  onRemoveNode: removeNode,
135
279
  onOpen: () => {
@@ -138,11 +282,12 @@ function DemoActiveFilterChips({ initialTree }) {
138
282
  ) });
139
283
  }
140
284
  function DemoAdvancedFilterBuilder({ initialTree }) {
285
+ const t = useT();
141
286
  const [value, setValue] = React.useState(initialTree);
142
287
  return /* @__PURE__ */ jsx("div", { className: "w-full max-w-2xl rounded-lg border bg-popover p-3", children: /* @__PURE__ */ jsx(
143
288
  AdvancedFilterBuilder,
144
289
  {
145
- fields: demoFields,
290
+ fields: demoFields(t),
146
291
  value,
147
292
  onChange: setValue,
148
293
  onApply: () => {
@@ -152,6 +297,7 @@ function DemoAdvancedFilterBuilder({ initialTree }) {
152
297
  ) });
153
298
  }
154
299
  function DemoFilterEmptyState({ withQuickFilters }) {
300
+ const t = useT();
155
301
  const addConditionRef = React.useRef(null);
156
302
  return /* @__PURE__ */ jsx("div", { className: "w-full max-w-xl rounded-lg border bg-popover", children: /* @__PURE__ */ jsx(
157
303
  FilterEmptyState,
@@ -159,7 +305,7 @@ function DemoFilterEmptyState({ withQuickFilters }) {
159
305
  onAddCondition: () => {
160
306
  },
161
307
  addConditionRef,
162
- quickFilters: withQuickFilters ? /* @__PURE__ */ jsx(QuickFilters, { presets: demoPresets, userId: "user-1", onApply: () => {
308
+ quickFilters: withQuickFilters ? /* @__PURE__ */ jsx(QuickFilters, { presets: demoPresets(t), userId: "user-1", onApply: () => {
163
309
  } }) : void 0
164
310
  }
165
311
  ) });
@@ -208,15 +354,7 @@ const filters: FilterDef[] = [
208
354
  {
209
355
  id: "trailing-items",
210
356
  title: "With trailing items",
211
- render: () => /* @__PURE__ */ jsx(
212
- DemoFilterBar,
213
- {
214
- trailingItems: /* @__PURE__ */ jsxs(Button, { variant: "outline", size: "sm", children: [
215
- /* @__PURE__ */ jsx(Download, {}),
216
- "Export"
217
- ] })
218
- }
219
- ),
357
+ render: () => /* @__PURE__ */ jsx(FilterBarEntryTrailingItemsPreview, {}),
220
358
  code: `import { Download } from 'lucide-react'
221
359
  import { FilterBar } from '@open-mercato/ui/backend/FilterBar'
222
360
  import { Button } from '@open-mercato/ui/primitives/button'
@@ -240,8 +378,7 @@ const quickFiltersEntry = {
240
378
  {
241
379
  id: "presets",
242
380
  title: "Presets (used inside AdvancedFilterPanel)",
243
- render: () => /* @__PURE__ */ jsx("div", { className: "w-full max-w-xl", children: /* @__PURE__ */ jsx(QuickFilters, { presets: demoPresets, userId: "user-1", onApply: () => {
244
- } }) }),
381
+ render: () => /* @__PURE__ */ jsx(QuickFiltersEntryPresetsPreview, {}),
245
382
  code: `import { QuickFilters, type FilterPreset } from '@open-mercato/ui/backend/filters/QuickFilters'
246
383
 
247
384
  const presets: FilterPreset[] = [
@@ -254,12 +391,7 @@ const presets: FilterPreset[] = [
254
391
  {
255
392
  id: "user-scoped",
256
393
  title: "User-scoped preset (hidden without userId)",
257
- render: () => /* @__PURE__ */ jsxs("div", { className: "flex w-full max-w-xl flex-col gap-6", children: [
258
- /* @__PURE__ */ jsx(QuickFilters, { presets: userScopedPresets, userId: "user-1", onApply: () => {
259
- } }),
260
- /* @__PURE__ */ jsx(QuickFilters, { presets: userScopedPresets, userId: "", onApply: () => {
261
- } })
262
- ] }),
394
+ render: () => /* @__PURE__ */ jsx(QuickFiltersEntryUserScopedPreview, {}),
263
395
  code: `import { QuickFilters } from '@open-mercato/ui/backend/filters/QuickFilters'
264
396
 
265
397
  // Presets with requiresUser: true are hidden when userId is empty.
@@ -372,8 +504,7 @@ const listEmptyStateEntry = {
372
504
  {
373
505
  id: "with-create-action",
374
506
  title: "With create action",
375
- render: () => /* @__PURE__ */ jsx("div", { className: "w-full max-w-xl", children: /* @__PURE__ */ jsx(ListEmptyState, { entityName: "companies", onCreate: () => {
376
- }, createLabel: "Add company" }) }),
507
+ render: () => /* @__PURE__ */ jsx(ListEmptyStateEntryWithCreateActionPreview, {}),
377
508
  code: `import { ListEmptyState } from '@open-mercato/ui/backend/filters/ListEmptyState'
378
509
 
379
510
  // Pass to DataTable's emptyState for the zero-records case.
@@ -382,13 +513,7 @@ const listEmptyStateEntry = {
382
513
  {
383
514
  id: "custom-copy",
384
515
  title: "Custom title and description",
385
- render: () => /* @__PURE__ */ jsx("div", { className: "w-full max-w-xl", children: /* @__PURE__ */ jsx(
386
- ListEmptyState,
387
- {
388
- title: "No imports yet",
389
- description: "Connect a source or upload a CSV file to bring records in."
390
- }
391
- ) }),
516
+ render: () => /* @__PURE__ */ jsx(ListEmptyStateEntryCustomCopyPreview, {}),
392
517
  code: `import { ListEmptyState } from '@open-mercato/ui/backend/filters/ListEmptyState'
393
518
 
394
519
  <ListEmptyState
@@ -406,17 +531,7 @@ const filteredEmptyResultsEntry = {
406
531
  {
407
532
  id: "filters-only",
408
533
  title: "Filters active",
409
- render: () => /* @__PURE__ */ jsx("div", { className: "w-full max-w-xl", children: /* @__PURE__ */ jsx(
410
- FilteredEmptyResults,
411
- {
412
- entityNamePlural: "companies",
413
- canRemoveLast: true,
414
- onClearAll: () => {
415
- },
416
- onRemoveLast: () => {
417
- }
418
- }
419
- ) }),
534
+ render: () => /* @__PURE__ */ jsx(FilteredEmptyResultsEntryFiltersOnlyPreview, {}),
420
535
  code: `import { FilteredEmptyResults } from '@open-mercato/ui/backend/filters/FilteredEmptyResults'
421
536
 
422
537
  // DataTable renders this automatically when filters match nothing.
@@ -430,19 +545,7 @@ const filteredEmptyResultsEntry = {
430
545
  {
431
546
  id: "with-search",
432
547
  title: "Search and filters active",
433
- render: () => /* @__PURE__ */ jsx("div", { className: "w-full max-w-xl", children: /* @__PURE__ */ jsx(
434
- FilteredEmptyResults,
435
- {
436
- entityNamePlural: "companies",
437
- canRemoveLast: true,
438
- onClearAll: () => {
439
- },
440
- onRemoveLast: () => {
441
- },
442
- onClearSearch: () => {
443
- }
444
- }
445
- ) }),
548
+ render: () => /* @__PURE__ */ jsx(FilteredEmptyResultsEntryWithSearchPreview, {}),
446
549
  code: `import { FilteredEmptyResults } from '@open-mercato/ui/backend/filters/FilteredEmptyResults'
447
550
 
448
551
  // Passing onClearSearch switches to combined copy and clears both at once.
@@ -474,15 +577,7 @@ const searchEmptyResultsEntry = {
474
577
  {
475
578
  id: "with-entity",
476
579
  title: "With entity label",
477
- render: () => /* @__PURE__ */ jsx("div", { className: "flex w-full max-w-xl justify-center", children: /* @__PURE__ */ jsx(
478
- SearchEmptyResults,
479
- {
480
- query: "northwind",
481
- entityNamePlural: "companies",
482
- onClearSearch: () => {
483
- }
484
- }
485
- ) }),
580
+ render: () => /* @__PURE__ */ jsx(SearchEmptyResultsEntryWithEntityPreview, {}),
486
581
  code: `import { SearchEmptyResults } from '@open-mercato/ui/backend/filters/SearchEmptyResults'
487
582
 
488
583
  <SearchEmptyResults query={search} entityNamePlural="companies" onClearSearch={() => setSearch('')} />`
@@ -490,6 +585,39 @@ const searchEmptyResultsEntry = {
490
585
  ]
491
586
  };
492
587
  const entries = [
588
+ {
589
+ id: "filter-toolbar",
590
+ title: "Filter Compositions",
591
+ importPath: "@open-mercato/ui/primitives/filter-toolbar",
592
+ figmaNodeId: "4370:6018",
593
+ descriptionKey: "design_system.entries.filterToolbar.description",
594
+ variants: [
595
+ {
596
+ id: "table",
597
+ title: "Horizontal / table",
598
+ render: () => /* @__PURE__ */ jsx(SourceFilterToolbar, { type: "table" }),
599
+ code: sourceFilterExampleCode('<SourceFilterToolbar type="table" />')
600
+ },
601
+ {
602
+ id: "calendar",
603
+ title: "Horizontal / calendar",
604
+ render: () => /* @__PURE__ */ jsx(SourceFilterToolbar, { type: "calendar" }),
605
+ code: sourceFilterExampleCode('<SourceFilterToolbar type="calendar" />')
606
+ },
607
+ {
608
+ id: "vertical-parts",
609
+ title: "Vertical / items, header and footer",
610
+ render: () => /* @__PURE__ */ jsx(SourceFilterParts, {}),
611
+ code: sourceFilterExampleCode("<SourceFilterParts />")
612
+ },
613
+ {
614
+ id: "vertical-panel",
615
+ title: "Vertical / apply draft filters",
616
+ render: () => /* @__PURE__ */ jsx("div", { className: "w-[640px] max-w-full rounded-lg border border-border", children: /* @__PURE__ */ jsx(SourceFilterPanel, {}) }),
617
+ code: sourceFilterExampleCode("<SourceFilterPanel />")
618
+ }
619
+ ]
620
+ },
493
621
  filterBarEntry,
494
622
  quickFiltersEntry,
495
623
  activeFilterChipsEntry,