@salesmind-ai/design-system 0.5.0 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (257) hide show
  1. package/README.md +2 -0
  2. package/dist/Anton-Regular-MLEXVTB2.woff2 +0 -0
  3. package/dist/admin/index.cjs +5 -61
  4. package/dist/admin/index.css +0 -3918
  5. package/dist/admin/index.css.map +1 -1
  6. package/dist/admin/index.d.cts +1 -422
  7. package/dist/admin/index.d.ts +1 -422
  8. package/dist/admin/index.js +1 -5
  9. package/dist/blog/index.cjs +13 -34
  10. package/dist/blog/index.css +0 -579
  11. package/dist/blog/index.css.map +1 -1
  12. package/dist/blog/index.d.cts +1 -54
  13. package/dist/blog/index.d.ts +1 -54
  14. package/dist/blog/index.js +5 -6
  15. package/dist/charts/index.cjs +0 -46
  16. package/dist/charts/index.d.cts +1 -452
  17. package/dist/charts/index.d.ts +1 -452
  18. package/dist/charts/index.js +1 -3
  19. package/dist/{chunk-HDVAMYSG.js → chunk-27Y5ESMM.js} +7 -2
  20. package/dist/chunk-27Y5ESMM.js.map +1 -0
  21. package/dist/{chunk-YTYDQBVY.cjs → chunk-2VVRZBUR.cjs} +4 -4
  22. package/dist/{chunk-GQELL2MF.cjs → chunk-3NS6X2R4.cjs} +20 -203
  23. package/dist/chunk-3NS6X2R4.cjs.map +1 -0
  24. package/dist/{chunk-XEX2AEZK.cjs → chunk-65DTHLVX.cjs} +66 -186
  25. package/dist/chunk-65DTHLVX.cjs.map +1 -0
  26. package/dist/{chunk-QALDZ7WQ.js → chunk-6BUS7RMS.js} +21 -198
  27. package/dist/chunk-6BUS7RMS.js.map +1 -0
  28. package/dist/{chunk-BJZ2DKS5.cjs → chunk-6QIQCUYC.cjs} +11 -10
  29. package/dist/chunk-6QIQCUYC.cjs.map +1 -0
  30. package/dist/{chunk-H2Y6BSTL.cjs → chunk-7EUR3AKV.cjs} +1 -1
  31. package/dist/chunk-7EUR3AKV.cjs.map +1 -0
  32. package/dist/{chunk-VFJZQQZU.js → chunk-AMNY5TS3.js} +11 -10
  33. package/dist/chunk-AMNY5TS3.js.map +1 -0
  34. package/dist/{chunk-YJ6C3EKW.js → chunk-CLXLQCNQ.js} +52 -168
  35. package/dist/chunk-CLXLQCNQ.js.map +1 -0
  36. package/dist/{chunk-H2KQ3WSH.cjs → chunk-CVLD5RQK.cjs} +12 -14
  37. package/dist/chunk-CVLD5RQK.cjs.map +1 -0
  38. package/dist/chunk-EPD4ZEPY.cjs +344 -0
  39. package/dist/chunk-EPD4ZEPY.cjs.map +1 -0
  40. package/dist/chunk-FXYOSA4E.cjs +118 -0
  41. package/dist/chunk-FXYOSA4E.cjs.map +1 -0
  42. package/dist/{chunk-ECXBTUH6.cjs → chunk-GPHQGLR5.cjs} +27 -204
  43. package/dist/chunk-GPHQGLR5.cjs.map +1 -0
  44. package/dist/{chunk-Y26OHHMX.js → chunk-HHQ6J7B6.js} +513 -888
  45. package/dist/chunk-HHQ6J7B6.js.map +1 -0
  46. package/dist/chunk-JPUJWI7F.cjs +73 -0
  47. package/dist/chunk-JPUJWI7F.cjs.map +1 -0
  48. package/dist/{chunk-6UNG76Y2.js → chunk-K526GN7P.js} +2 -2
  49. package/dist/{chunk-SICKWUWB.js → chunk-KJHPOB3J.js} +1 -1
  50. package/dist/chunk-KJHPOB3J.js.map +1 -0
  51. package/dist/chunk-KXVFFEGD.js +60 -0
  52. package/dist/chunk-KXVFFEGD.js.map +1 -0
  53. package/dist/chunk-LQB7QLD3.js +288 -0
  54. package/dist/chunk-LQB7QLD3.js.map +1 -0
  55. package/dist/chunk-LUD52ZJF.cjs +726 -0
  56. package/dist/chunk-LUD52ZJF.cjs.map +1 -0
  57. package/dist/{chunk-7UZ5DETZ.js → chunk-MBAG654R.js} +4 -216
  58. package/dist/chunk-MBAG654R.js.map +1 -0
  59. package/dist/chunk-OMP6FAZ6.cjs +183 -0
  60. package/dist/chunk-OMP6FAZ6.cjs.map +1 -0
  61. package/dist/{chunk-WYH4TKS5.js → chunk-PBYRTNQ5.js} +6 -8
  62. package/dist/chunk-PBYRTNQ5.js.map +1 -0
  63. package/dist/chunk-PYREXCZK.js +679 -0
  64. package/dist/chunk-PYREXCZK.js.map +1 -0
  65. package/dist/{chunk-6D22TFLA.cjs → chunk-R3ZECV5P.cjs} +9 -4
  66. package/dist/chunk-R3ZECV5P.cjs.map +1 -0
  67. package/dist/{chunk-P5BOFE5A.js → chunk-RSLA2FJN.js} +28 -183
  68. package/dist/chunk-RSLA2FJN.js.map +1 -0
  69. package/dist/chunk-S46SKHMD.js +173 -0
  70. package/dist/chunk-S46SKHMD.js.map +1 -0
  71. package/dist/chunk-SFXTB7JL.js +190 -0
  72. package/dist/chunk-SFXTB7JL.js.map +1 -0
  73. package/dist/chunk-SGYXYMKZ.cjs +214 -0
  74. package/dist/chunk-SGYXYMKZ.cjs.map +1 -0
  75. package/dist/chunk-UGKYP6F3.cjs +296 -0
  76. package/dist/chunk-UGKYP6F3.cjs.map +1 -0
  77. package/dist/chunk-WB6XDNU7.js +115 -0
  78. package/dist/chunk-WB6XDNU7.js.map +1 -0
  79. package/dist/{chunk-LTPTW2US.cjs → chunk-WE4QIIVN.cjs} +592 -974
  80. package/dist/chunk-WE4QIIVN.cjs.map +1 -0
  81. package/dist/core/index.cjs +144 -626
  82. package/dist/core/index.css +178 -3567
  83. package/dist/core/index.css.map +1 -1
  84. package/dist/core/index.d.cts +940 -902
  85. package/dist/core/index.d.ts +940 -902
  86. package/dist/core/index.js +6 -12
  87. package/dist/i18n/index.cjs +54 -49
  88. package/dist/i18n/index.d.cts +46 -11
  89. package/dist/i18n/index.d.ts +46 -11
  90. package/dist/i18n/index.js +2 -1
  91. package/dist/index-BJ8rBqrO.d.cts +1100 -0
  92. package/dist/index-BxMqCbqE.d.ts +1100 -0
  93. package/dist/index.cjs +507 -1001
  94. package/dist/index.cjs.map +1 -1
  95. package/dist/index.css +6057 -16713
  96. package/dist/index.css.map +1 -1
  97. package/dist/index.d.cts +306 -21
  98. package/dist/index.d.ts +306 -21
  99. package/dist/index.js +274 -39
  100. package/dist/index.js.map +1 -1
  101. package/dist/marketing/index.cjs +33 -76
  102. package/dist/marketing/index.css +1896 -3234
  103. package/dist/marketing/index.css.map +1 -1
  104. package/dist/marketing/index.d.cts +3 -1351
  105. package/dist/marketing/index.d.ts +3 -1351
  106. package/dist/marketing/index.js +5 -8
  107. package/dist/motion/index.cjs +3 -20
  108. package/dist/motion/index.css +0 -580
  109. package/dist/motion/index.css.map +1 -1
  110. package/dist/motion/index.d.cts +1 -37
  111. package/dist/motion/index.d.ts +1 -37
  112. package/dist/motion/index.js +1 -2
  113. package/dist/nav/index.cjs +10 -35
  114. package/dist/nav/index.css +28 -580
  115. package/dist/nav/index.css.map +1 -1
  116. package/dist/nav/index.d.cts +2 -60
  117. package/dist/nav/index.d.ts +2 -60
  118. package/dist/nav/index.js +1 -2
  119. package/dist/report/index.cjs +1166 -175
  120. package/dist/report/index.cjs.map +1 -1
  121. package/dist/report/index.d.cts +208 -5
  122. package/dist/report/index.d.ts +208 -5
  123. package/dist/report/index.js +1141 -3
  124. package/dist/report/index.js.map +1 -1
  125. package/dist/sections/index.cjs +8 -10
  126. package/dist/sections/index.cjs.map +1 -1
  127. package/dist/sections/index.css +0 -206
  128. package/dist/sections/index.css.map +1 -1
  129. package/dist/sections/index.js +2 -4
  130. package/dist/sections/index.js.map +1 -1
  131. package/dist/social-media/index.cjs +4 -0
  132. package/dist/social-media/index.cjs.map +1 -0
  133. package/dist/social-media/index.d.cts +2 -0
  134. package/dist/social-media/index.d.ts +2 -0
  135. package/dist/social-media/index.js +3 -0
  136. package/dist/social-media/index.js.map +1 -0
  137. package/dist/social-proof/index.cjs +4 -36
  138. package/dist/social-proof/index.css +3 -1106
  139. package/dist/social-proof/index.css.map +1 -1
  140. package/dist/social-proof/index.d.cts +26 -171
  141. package/dist/social-proof/index.d.ts +26 -171
  142. package/dist/social-proof/index.js +1 -5
  143. package/dist/styles/styles.css +657 -2990
  144. package/dist/theme/index.cjs +12 -16
  145. package/dist/theme/index.css +1 -245
  146. package/dist/theme/index.css.map +1 -1
  147. package/dist/theme/index.d.cts +4 -1
  148. package/dist/theme/index.d.ts +4 -1
  149. package/dist/theme/index.js +2 -2
  150. package/dist/web/client/index.cjs +10 -10
  151. package/dist/web/client/index.css +118 -0
  152. package/dist/web/client/index.css.map +1 -1
  153. package/dist/web/client/index.js +2 -2
  154. package/dist/web/index.cjs +10 -10
  155. package/dist/web/index.css +118 -0
  156. package/dist/web/index.css.map +1 -1
  157. package/dist/web/index.js +2 -2
  158. package/package.json +10 -4
  159. package/dist/AppearancePanel-UT57J69V.d.cts +0 -51
  160. package/dist/AppearancePanel-UT57J69V.d.ts +0 -51
  161. package/dist/ExportMenu-A2TLFiVv.d.cts +0 -311
  162. package/dist/ExportMenu-C8qck5AT.d.ts +0 -311
  163. package/dist/Select-BdZmK0Lt.d.cts +0 -66
  164. package/dist/Select-BdZmK0Lt.d.ts +0 -66
  165. package/dist/chart-types-BGVVO-zl.d.cts +0 -208
  166. package/dist/chart-types-BGVVO-zl.d.ts +0 -208
  167. package/dist/charts/index.css +0 -1167
  168. package/dist/charts/index.css.map +0 -1
  169. package/dist/chunk-3BAQDW3V.cjs +0 -1207
  170. package/dist/chunk-3BAQDW3V.cjs.map +0 -1
  171. package/dist/chunk-3NKRFUAR.js +0 -37
  172. package/dist/chunk-3NKRFUAR.js.map +0 -1
  173. package/dist/chunk-3TGSIILM.cjs +0 -201
  174. package/dist/chunk-3TGSIILM.cjs.map +0 -1
  175. package/dist/chunk-4GM5BGBN.cjs +0 -801
  176. package/dist/chunk-4GM5BGBN.cjs.map +0 -1
  177. package/dist/chunk-5LA3T22E.cjs +0 -562
  178. package/dist/chunk-5LA3T22E.cjs.map +0 -1
  179. package/dist/chunk-5SN66B2X.js +0 -2542
  180. package/dist/chunk-5SN66B2X.js.map +0 -1
  181. package/dist/chunk-6D22TFLA.cjs.map +0 -1
  182. package/dist/chunk-6H4DSTXR.js +0 -786
  183. package/dist/chunk-6H4DSTXR.js.map +0 -1
  184. package/dist/chunk-6HKQ5ILL.cjs +0 -1624
  185. package/dist/chunk-6HKQ5ILL.cjs.map +0 -1
  186. package/dist/chunk-7PX2AZ6Y.js +0 -39
  187. package/dist/chunk-7PX2AZ6Y.js.map +0 -1
  188. package/dist/chunk-7UZ5DETZ.js.map +0 -1
  189. package/dist/chunk-B6AVAX4F.js +0 -1415
  190. package/dist/chunk-B6AVAX4F.js.map +0 -1
  191. package/dist/chunk-BJZ2DKS5.cjs.map +0 -1
  192. package/dist/chunk-BUTQSDQH.js +0 -200
  193. package/dist/chunk-BUTQSDQH.js.map +0 -1
  194. package/dist/chunk-C2BCDNAV.js +0 -24
  195. package/dist/chunk-C2BCDNAV.js.map +0 -1
  196. package/dist/chunk-CJ2MKVAF.cjs +0 -46
  197. package/dist/chunk-CJ2MKVAF.cjs.map +0 -1
  198. package/dist/chunk-E7D6EKJ4.cjs +0 -44
  199. package/dist/chunk-E7D6EKJ4.cjs.map +0 -1
  200. package/dist/chunk-ECXBTUH6.cjs.map +0 -1
  201. package/dist/chunk-FAFAP4L5.js +0 -183
  202. package/dist/chunk-FAFAP4L5.js.map +0 -1
  203. package/dist/chunk-G2XGBO5V.cjs +0 -2565
  204. package/dist/chunk-G2XGBO5V.cjs.map +0 -1
  205. package/dist/chunk-GQELL2MF.cjs.map +0 -1
  206. package/dist/chunk-H2KQ3WSH.cjs.map +0 -1
  207. package/dist/chunk-H2Y6BSTL.cjs.map +0 -1
  208. package/dist/chunk-HCZW5AJN.cjs +0 -234
  209. package/dist/chunk-HCZW5AJN.cjs.map +0 -1
  210. package/dist/chunk-HDVAMYSG.js.map +0 -1
  211. package/dist/chunk-HN4PHABT.js +0 -126
  212. package/dist/chunk-HN4PHABT.js.map +0 -1
  213. package/dist/chunk-LTPTW2US.cjs.map +0 -1
  214. package/dist/chunk-MDB2WCRQ.cjs +0 -137
  215. package/dist/chunk-MDB2WCRQ.cjs.map +0 -1
  216. package/dist/chunk-MQRB634A.cjs +0 -34
  217. package/dist/chunk-MQRB634A.cjs.map +0 -1
  218. package/dist/chunk-NN3TUHIH.js +0 -28
  219. package/dist/chunk-NN3TUHIH.js.map +0 -1
  220. package/dist/chunk-OWS2KAXZ.js +0 -701
  221. package/dist/chunk-OWS2KAXZ.js.map +0 -1
  222. package/dist/chunk-P5BOFE5A.js.map +0 -1
  223. package/dist/chunk-PUPSK3DI.cjs +0 -216
  224. package/dist/chunk-PUPSK3DI.cjs.map +0 -1
  225. package/dist/chunk-Q2MFGYTE.cjs +0 -1449
  226. package/dist/chunk-Q2MFGYTE.cjs.map +0 -1
  227. package/dist/chunk-Q75DBVDY.cjs +0 -68
  228. package/dist/chunk-Q75DBVDY.cjs.map +0 -1
  229. package/dist/chunk-QALDZ7WQ.js.map +0 -1
  230. package/dist/chunk-QWE2RNCS.js +0 -1195
  231. package/dist/chunk-QWE2RNCS.js.map +0 -1
  232. package/dist/chunk-RQUFZAZ7.js +0 -1608
  233. package/dist/chunk-RQUFZAZ7.js.map +0 -1
  234. package/dist/chunk-SICKWUWB.js.map +0 -1
  235. package/dist/chunk-TCFC7XTB.js +0 -212
  236. package/dist/chunk-TCFC7XTB.js.map +0 -1
  237. package/dist/chunk-UTVXGAQP.cjs +0 -2437
  238. package/dist/chunk-UTVXGAQP.cjs.map +0 -1
  239. package/dist/chunk-UVEMY3FQ.cjs +0 -717
  240. package/dist/chunk-UVEMY3FQ.cjs.map +0 -1
  241. package/dist/chunk-VFJZQQZU.js.map +0 -1
  242. package/dist/chunk-WH7PYHZY.cjs +0 -35
  243. package/dist/chunk-WH7PYHZY.cjs.map +0 -1
  244. package/dist/chunk-WYH4TKS5.js.map +0 -1
  245. package/dist/chunk-XEX2AEZK.cjs.map +0 -1
  246. package/dist/chunk-XPTVHPCN.js +0 -2320
  247. package/dist/chunk-XPTVHPCN.js.map +0 -1
  248. package/dist/chunk-XWPDRMZG.js +0 -62
  249. package/dist/chunk-XWPDRMZG.js.map +0 -1
  250. package/dist/chunk-Y26OHHMX.js.map +0 -1
  251. package/dist/chunk-YJ6C3EKW.js.map +0 -1
  252. package/dist/motion-C651Ry6d.d.cts +0 -832
  253. package/dist/motion-C651Ry6d.d.ts +0 -832
  254. package/dist/report/index.css +0 -1239
  255. package/dist/report/index.css.map +0 -1
  256. /package/dist/{chunk-6UNG76Y2.js.map → chunk-2VVRZBUR.cjs.map} +0 -0
  257. /package/dist/{chunk-YTYDQBVY.cjs.map → chunk-K526GN7P.js.map} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/i18n/IntlProvider.tsx","../src/i18n/useMessage.ts","../src/i18n/messages.ts","../src/i18n/index.ts"],"names":["defineMessages"],"mappings":"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","sourcesContent":["/**\n * Design System IntlProvider\n *\n * Wraps react-intl's IntlProvider with design system defaults.\n * Components receive i18n context through this provider.\n *\n * @example\n * ```tsx\n * import { DSIntlProvider } from '@salesmind-ai/design-system';\n *\n * // With default English messages\n * <DSIntlProvider>\n * <App />\n * </DSIntlProvider>\n *\n * // With custom locale and messages\n * <DSIntlProvider locale=\"fr\" messages={frenchMessages}>\n * <App />\n * </DSIntlProvider>\n * ```\n */\n\nimport React from 'react';\nimport { IntlProvider, IntlConfig } from 'react-intl';\n\n/**\n * Default English messages (extracted from component defaults)\n * These serve as fallbacks when no messages are provided.\n */\nconst defaultMessages: Record<string, string> = {\n // Common\n 'ds.common.loading': 'Loading...',\n 'ds.common.error': 'An error occurred',\n 'ds.common.retry': 'Retry',\n 'ds.common.cancel': 'Cancel',\n 'ds.common.confirm': 'Confirm',\n 'ds.common.close': 'Close',\n 'ds.common.save': 'Save',\n 'ds.common.delete': 'Delete',\n 'ds.common.edit': 'Edit',\n 'ds.common.submit': 'Submit',\n 'ds.common.required': 'Required',\n 'ds.common.optional': 'Optional',\n\n // Alert\n 'ds.alert.dismissLabel': 'Dismiss alert',\n 'ds.alert.successTitle': 'Success',\n 'ds.alert.errorTitle': 'Error',\n 'ds.alert.warningTitle': 'Warning',\n 'ds.alert.infoTitle': 'Information',\n\n // Toast\n 'ds.toast.dismissLabel': 'Dismiss notification',\n\n // Dialog\n 'ds.dialog.closeLabel': 'Close dialog',\n\n // Form\n 'ds.form.showPassword': 'Show password',\n 'ds.form.hidePassword': 'Hide password',\n 'ds.form.clearInput': 'Clear input',\n 'ds.form.invalidEmail': 'Please enter a valid email address',\n 'ds.form.passwordRequired': 'Password is required',\n\n // Auth\n 'ds.auth.loginTitle': 'Sign in to your account',\n 'ds.auth.signupTitle': 'Create your account',\n 'ds.auth.forgotPasswordTitle': 'Reset your password',\n 'ds.auth.emailLabel': 'Email address',\n 'ds.auth.passwordLabel': 'Password',\n 'ds.auth.rememberMe': 'Remember me',\n 'ds.auth.forgotPassword': 'Forgot your password?',\n 'ds.auth.signIn': 'Sign in',\n 'ds.auth.signUp': 'Sign up',\n 'ds.auth.sendResetLink': 'Send reset link',\n 'ds.auth.backToLogin': 'Back to login',\n\n // Navigation\n 'ds.nav.menuLabel': 'Navigation menu',\n 'ds.nav.toggleSidebar': 'Toggle sidebar',\n 'ds.nav.expandSubmenu': 'Expand submenu',\n 'ds.nav.collapseSubmenu': 'Collapse submenu',\n\n // Report\n 'ds.report.confidenceLabel': 'Confidence score',\n 'ds.report.dataCoverageLabel': 'Data coverage',\n 'ds.report.insufficientData': 'Insufficient data',\n 'ds.report.exportPdf': 'Export as PDF',\n 'ds.report.exportCsv': 'Export as CSV',\n 'ds.report.exportPptx': 'Export as PowerPoint',\n\n // Appearance\n 'ds.appearance.themeLabel': 'Theme',\n 'ds.appearance.darkTheme': 'Dark',\n 'ds.appearance.lightTheme': 'Light',\n 'ds.appearance.highContrastTheme': 'High contrast',\n 'ds.appearance.densityLabel': 'Density',\n 'ds.appearance.comfortableDensity': 'Comfortable',\n 'ds.appearance.compactDensity': 'Compact',\n\n // Pagination\n 'ds.pagination.previous': 'Previous',\n 'ds.pagination.next': 'Next',\n 'ds.pagination.goToPreviousPage': 'Go to previous page',\n 'ds.pagination.goToNextPage': 'Go to next page',\n\n // Calendar\n 'ds.calendar.previousMonth': 'Previous month',\n 'ds.calendar.nextMonth': 'Next month',\n\n // Carousel\n 'ds.carousel.previousSlide': 'Previous slide',\n 'ds.carousel.nextSlide': 'Next slide',\n\n // Methodology\n 'ds.methodology.title': 'Methodology',\n 'ds.methodology.sampleSize': 'Sample Size',\n 'ds.methodology.dataSources': 'Data Sources',\n 'ds.methodology.calculation': 'Calculation',\n};\n\nexport interface DSIntlProviderProps {\n /**\n * Locale identifier (e.g., 'en', 'fr', 'de')\n * @default 'en'\n */\n locale?: string;\n\n /**\n * Translated messages for the locale.\n * If not provided, defaults to English messages.\n */\n messages?: Record<string, string>;\n\n /**\n * Additional IntlProvider configuration\n */\n intlConfig?: Partial<IntlConfig>;\n\n /**\n * Child components\n */\n children: React.ReactNode;\n}\n\n/**\n * Design System IntlProvider\n *\n * Provides internationalization context to all design system components.\n * Wrap your app with this provider to enable i18n support.\n */\nexport function DSIntlProvider({\n locale = 'en',\n messages,\n intlConfig,\n children,\n}: DSIntlProviderProps) {\n // Merge provided messages with defaults (provided messages take precedence)\n const mergedMessages = {\n ...defaultMessages,\n ...messages,\n };\n\n return (\n <IntlProvider\n locale={locale}\n messages={mergedMessages}\n defaultLocale=\"en\"\n onError={(err) => {\n // Only log missing translation errors in development\n if (process.env.NODE_ENV === 'development') {\n // Filter out \"MISSING_TRANSLATION\" errors for default messages\n if (err.code !== 'MISSING_TRANSLATION') {\n console.error(err);\n }\n }\n }}\n {...intlConfig}\n >\n {children}\n </IntlProvider>\n );\n}\n\nexport default DSIntlProvider;\n","/**\n * Design System Message Hooks\n *\n * Provides hooks for accessing internationalized messages in components.\n * These hooks are optional - components can still accept string props directly.\n *\n * @example\n * ```tsx\n * import { useMessage, commonMessages } from '@salesmind-ai/design-system';\n *\n * function MyComponent() {\n * const t = useMessage();\n * return <button>{t(commonMessages.save)}</button>;\n * }\n * ```\n */\n\nimport { useIntl, MessageDescriptor, PrimitiveType } from 'react-intl';\nimport { useCallback } from 'react';\n\n/**\n * Format message values type\n */\nexport type MessageValues = Record<string, PrimitiveType>;\n\n/**\n * Hook to get a message formatter function\n *\n * @returns A function that formats messages\n *\n * @example\n * ```tsx\n * const t = useMessage();\n * return <span>{t(commonMessages.loading)}</span>;\n * ```\n */\nexport function useMessage() {\n const intl = useIntl();\n\n const formatMessage = useCallback(\n (descriptor: MessageDescriptor, values?: MessageValues): string => {\n return intl.formatMessage(descriptor, values);\n },\n [intl],\n );\n\n return formatMessage;\n}\n\n/**\n * Hook to get the current locale\n *\n * @returns The current locale string (e.g., 'en', 'fr')\n *\n * @example\n * ```tsx\n * const locale = useLocale();\n * console.log(locale); // 'en'\n * ```\n */\nexport function useLocale(): string {\n const intl = useIntl();\n return intl.locale;\n}\n\n/**\n * Hook to check if RTL is needed for current locale\n *\n * @returns true if the current locale is RTL\n *\n * @example\n * ```tsx\n * const isRTL = useIsRTL();\n * return <div style={{ direction: isRTL ? 'rtl' : 'ltr' }}>...</div>;\n * ```\n */\nexport function useIsRTL(): boolean {\n const locale = useLocale();\n\n // RTL locales\n const rtlLocales = [\n 'ar', // Arabic\n 'he', // Hebrew\n 'fa', // Persian/Farsi\n 'ur', // Urdu\n 'ps', // Pashto\n 'sd', // Sindhi\n 'yi', // Yiddish\n ];\n\n return rtlLocales.some((rtl) => locale === rtl || locale.startsWith(`${rtl}-`));\n}\n\n/**\n * Hook to get the current text direction\n *\n * @returns 'rtl' or 'ltr' based on locale\n *\n * @example\n * ```tsx\n * const dir = useTextDirection();\n * return <div dir={dir}>...</div>;\n * ```\n */\nexport function useTextDirection(): 'rtl' | 'ltr' {\n const isRTL = useIsRTL();\n return isRTL ? 'rtl' : 'ltr';\n}\n\n/**\n * Hook to format a number according to locale\n *\n * @returns A number formatter function\n *\n * @example\n * ```tsx\n * const formatNumber = useNumberFormat();\n * return <span>{formatNumber(1234.56)}</span>; // \"1,234.56\" in en-US\n * ```\n */\nexport function useNumberFormat() {\n const intl = useIntl();\n\n const formatNumber = useCallback(\n (value: number, options?: Intl.NumberFormatOptions): string => {\n return intl.formatNumber(value, options as Parameters<typeof intl.formatNumber>[1]);\n },\n [intl],\n );\n\n return formatNumber;\n}\n\n/**\n * Hook to format a date according to locale\n *\n * @returns A date formatter function\n *\n * @example\n * ```tsx\n * const formatDate = useDateFormat();\n * return <span>{formatDate(new Date())}</span>;\n * ```\n */\nexport function useDateFormat() {\n const intl = useIntl();\n\n const formatDate = useCallback(\n (value: Date | number, options?: Intl.DateTimeFormatOptions): string => {\n return intl.formatDate(value, options);\n },\n [intl],\n );\n\n return formatDate;\n}\n\n/**\n * Hook to format a relative time (e.g., \"2 days ago\")\n *\n * @returns A relative time formatter function\n *\n * @example\n * ```tsx\n * const formatRelative = useRelativeTime();\n * return <span>{formatRelative(-2, 'day')}</span>; // \"2 days ago\"\n * ```\n */\nexport function useRelativeTime() {\n const intl = useIntl();\n\n const formatRelativeTime = useCallback(\n (\n value: number,\n unit: Intl.RelativeTimeFormatUnit,\n options?: Intl.RelativeTimeFormatOptions,\n ): string => {\n return intl.formatRelativeTime(value, unit, options as Parameters<typeof intl.formatRelativeTime>[2]);\n },\n [intl],\n );\n\n return formatRelativeTime;\n}\n","/**\n * Design System Default Messages\n *\n * This file contains all user-facing strings used by design system components.\n * Components accept message props but fall back to these defaults.\n *\n * Format: react-intl MessageDescriptor\n * @see https://formatjs.io/docs/react-intl/api#message-descriptor\n */\n\nimport { defineMessages } from 'react-intl';\n\n/**\n * Common messages used across multiple components\n */\nexport const commonMessages = defineMessages({\n loading: {\n id: 'ds.common.loading',\n defaultMessage: 'Loading...',\n description: 'Generic loading state text',\n },\n error: {\n id: 'ds.common.error',\n defaultMessage: 'An error occurred',\n description: 'Generic error message',\n },\n retry: {\n id: 'ds.common.retry',\n defaultMessage: 'Retry',\n description: 'Retry action button text',\n },\n cancel: {\n id: 'ds.common.cancel',\n defaultMessage: 'Cancel',\n description: 'Cancel action button text',\n },\n confirm: {\n id: 'ds.common.confirm',\n defaultMessage: 'Confirm',\n description: 'Confirm action button text',\n },\n close: {\n id: 'ds.common.close',\n defaultMessage: 'Close',\n description: 'Close action button text',\n },\n save: {\n id: 'ds.common.save',\n defaultMessage: 'Save',\n description: 'Save action button text',\n },\n delete: {\n id: 'ds.common.delete',\n defaultMessage: 'Delete',\n description: 'Delete action button text',\n },\n edit: {\n id: 'ds.common.edit',\n defaultMessage: 'Edit',\n description: 'Edit action button text',\n },\n submit: {\n id: 'ds.common.submit',\n defaultMessage: 'Submit',\n description: 'Submit action button text',\n },\n required: {\n id: 'ds.common.required',\n defaultMessage: 'Required',\n description: 'Field required indicator',\n },\n optional: {\n id: 'ds.common.optional',\n defaultMessage: 'Optional',\n description: 'Field optional indicator',\n },\n});\n\n/**\n * Alert component messages\n */\nexport const alertMessages = defineMessages({\n dismissLabel: {\n id: 'ds.alert.dismissLabel',\n defaultMessage: 'Dismiss alert',\n description: 'Accessible label for alert dismiss button',\n },\n successTitle: {\n id: 'ds.alert.successTitle',\n defaultMessage: 'Success',\n description: 'Default title for success alerts',\n },\n errorTitle: {\n id: 'ds.alert.errorTitle',\n defaultMessage: 'Error',\n description: 'Default title for error alerts',\n },\n warningTitle: {\n id: 'ds.alert.warningTitle',\n defaultMessage: 'Warning',\n description: 'Default title for warning alerts',\n },\n infoTitle: {\n id: 'ds.alert.infoTitle',\n defaultMessage: 'Information',\n description: 'Default title for info alerts',\n },\n});\n\n/**\n * Toast notification messages\n */\nexport const toastMessages = defineMessages({\n dismissLabel: {\n id: 'ds.toast.dismissLabel',\n defaultMessage: 'Dismiss notification',\n description: 'Accessible label for toast dismiss button',\n },\n});\n\n/**\n * Dialog component messages\n */\nexport const dialogMessages = defineMessages({\n closeLabel: {\n id: 'ds.dialog.closeLabel',\n defaultMessage: 'Close dialog',\n description: 'Accessible label for dialog close button',\n },\n});\n\n/**\n * Form component messages\n */\nexport const formMessages = defineMessages({\n showPassword: {\n id: 'ds.form.showPassword',\n defaultMessage: 'Show password',\n description: 'Toggle to show password text',\n },\n hidePassword: {\n id: 'ds.form.hidePassword',\n defaultMessage: 'Hide password',\n description: 'Toggle to hide password text',\n },\n clearInput: {\n id: 'ds.form.clearInput',\n defaultMessage: 'Clear input',\n description: 'Clear input field button',\n },\n invalidEmail: {\n id: 'ds.form.invalidEmail',\n defaultMessage: 'Please enter a valid email address',\n description: 'Email validation error',\n },\n passwordRequired: {\n id: 'ds.form.passwordRequired',\n defaultMessage: 'Password is required',\n description: 'Password required validation error',\n },\n});\n\n/**\n * Auth component messages\n */\nexport const authMessages = defineMessages({\n loginTitle: {\n id: 'ds.auth.loginTitle',\n defaultMessage: 'Sign in to your account',\n description: 'Login page title',\n },\n signupTitle: {\n id: 'ds.auth.signupTitle',\n defaultMessage: 'Create your account',\n description: 'Signup page title',\n },\n forgotPasswordTitle: {\n id: 'ds.auth.forgotPasswordTitle',\n defaultMessage: 'Reset your password',\n description: 'Forgot password page title',\n },\n emailLabel: {\n id: 'ds.auth.emailLabel',\n defaultMessage: 'Email address',\n description: 'Email field label',\n },\n passwordLabel: {\n id: 'ds.auth.passwordLabel',\n defaultMessage: 'Password',\n description: 'Password field label',\n },\n rememberMe: {\n id: 'ds.auth.rememberMe',\n defaultMessage: 'Remember me',\n description: 'Remember me checkbox label',\n },\n forgotPassword: {\n id: 'ds.auth.forgotPassword',\n defaultMessage: 'Forgot your password?',\n description: 'Forgot password link text',\n },\n signIn: {\n id: 'ds.auth.signIn',\n defaultMessage: 'Sign in',\n description: 'Sign in button text',\n },\n signUp: {\n id: 'ds.auth.signUp',\n defaultMessage: 'Sign up',\n description: 'Sign up button text',\n },\n sendResetLink: {\n id: 'ds.auth.sendResetLink',\n defaultMessage: 'Send reset link',\n description: 'Send password reset link button',\n },\n backToLogin: {\n id: 'ds.auth.backToLogin',\n defaultMessage: 'Back to login',\n description: 'Back to login link text',\n },\n});\n\n/**\n * Navigation component messages\n */\nexport const navigationMessages = defineMessages({\n menuLabel: {\n id: 'ds.nav.menuLabel',\n defaultMessage: 'Navigation menu',\n description: 'Accessible label for navigation menu',\n },\n toggleSidebar: {\n id: 'ds.nav.toggleSidebar',\n defaultMessage: 'Toggle sidebar',\n description: 'Toggle sidebar button label',\n },\n expandSubmenu: {\n id: 'ds.nav.expandSubmenu',\n defaultMessage: 'Expand submenu',\n description: 'Expand submenu button label',\n },\n collapseSubmenu: {\n id: 'ds.nav.collapseSubmenu',\n defaultMessage: 'Collapse submenu',\n description: 'Collapse submenu button label',\n },\n});\n\n/**\n * Report Engine component messages\n */\nexport const reportMessages = defineMessages({\n confidenceLabel: {\n id: 'ds.report.confidenceLabel',\n defaultMessage: 'Confidence score',\n description: 'Label for confidence indicator',\n },\n dataCoverageLabel: {\n id: 'ds.report.dataCoverageLabel',\n defaultMessage: 'Data coverage',\n description: 'Label for data coverage badge',\n },\n insufficientData: {\n id: 'ds.report.insufficientData',\n defaultMessage: 'Insufficient data',\n description: 'Message when data is insufficient for analysis',\n },\n exportPdf: {\n id: 'ds.report.exportPdf',\n defaultMessage: 'Export as PDF',\n description: 'Export to PDF option',\n },\n exportCsv: {\n id: 'ds.report.exportCsv',\n defaultMessage: 'Export as CSV',\n description: 'Export to CSV option',\n },\n exportPptx: {\n id: 'ds.report.exportPptx',\n defaultMessage: 'Export as PowerPoint',\n description: 'Export to PowerPoint option',\n },\n});\n\n/**\n * Appearance/Theme component messages\n */\nexport const appearanceMessages = defineMessages({\n themeLabel: {\n id: 'ds.appearance.themeLabel',\n defaultMessage: 'Theme',\n description: 'Theme selector label',\n },\n darkTheme: {\n id: 'ds.appearance.darkTheme',\n defaultMessage: 'Dark',\n description: 'Dark theme option',\n },\n lightTheme: {\n id: 'ds.appearance.lightTheme',\n defaultMessage: 'Light',\n description: 'Light theme option',\n },\n highContrastTheme: {\n id: 'ds.appearance.highContrastTheme',\n defaultMessage: 'High contrast',\n description: 'High contrast theme option',\n },\n densityLabel: {\n id: 'ds.appearance.densityLabel',\n defaultMessage: 'Density',\n description: 'Density selector label',\n },\n comfortableDensity: {\n id: 'ds.appearance.comfortableDensity',\n defaultMessage: 'Comfortable',\n description: 'Comfortable density option',\n },\n compactDensity: {\n id: 'ds.appearance.compactDensity',\n defaultMessage: 'Compact',\n description: 'Compact density option',\n },\n});\n\n/**\n * Pagination component messages\n */\nexport const paginationMessages = defineMessages({\n previous: {\n id: 'ds.pagination.previous',\n defaultMessage: 'Previous',\n description: 'Pagination previous button label',\n },\n next: {\n id: 'ds.pagination.next',\n defaultMessage: 'Next',\n description: 'Pagination next button label',\n },\n goToPreviousPage: {\n id: 'ds.pagination.goToPreviousPage',\n defaultMessage: 'Go to previous page',\n description: 'Accessible label for previous page button',\n },\n goToNextPage: {\n id: 'ds.pagination.goToNextPage',\n defaultMessage: 'Go to next page',\n description: 'Accessible label for next page button',\n },\n});\n\n/**\n * Calendar component messages\n */\nexport const calendarMessages = defineMessages({\n previousMonth: {\n id: 'ds.calendar.previousMonth',\n defaultMessage: 'Previous month',\n description: 'Accessible label for previous month button',\n },\n nextMonth: {\n id: 'ds.calendar.nextMonth',\n defaultMessage: 'Next month',\n description: 'Accessible label for next month button',\n },\n});\n\n/**\n * Carousel component messages\n */\nexport const carouselMessages = defineMessages({\n previousSlide: {\n id: 'ds.carousel.previousSlide',\n defaultMessage: 'Previous slide',\n description: 'Accessible label for previous slide button',\n },\n nextSlide: {\n id: 'ds.carousel.nextSlide',\n defaultMessage: 'Next slide',\n description: 'Accessible label for next slide button',\n },\n});\n\n/**\n * Methodology component messages\n */\nexport const methodologyMessages = defineMessages({\n title: {\n id: 'ds.methodology.title',\n defaultMessage: 'Methodology',\n description: 'Methodology note title',\n },\n sampleSize: {\n id: 'ds.methodology.sampleSize',\n defaultMessage: 'Sample Size',\n description: 'Methodology sample size label',\n },\n dataSources: {\n id: 'ds.methodology.dataSources',\n defaultMessage: 'Data Sources',\n description: 'Methodology data sources label',\n },\n calculation: {\n id: 'ds.methodology.calculation',\n defaultMessage: 'Calculation',\n description: 'Methodology calculation label',\n },\n});\n\n/**\n * All messages combined for easy export\n */\nexport const allMessages = {\n ...commonMessages,\n ...alertMessages,\n ...toastMessages,\n ...dialogMessages,\n ...formMessages,\n ...authMessages,\n ...navigationMessages,\n ...reportMessages,\n ...appearanceMessages,\n ...paginationMessages,\n ...calendarMessages,\n ...carouselMessages,\n ...methodologyMessages,\n};\n","/**\n * Design System Internationalization Module\n *\n * Provides i18n infrastructure for design system components.\n *\n * @module i18n\n */\n\n// Provider\nexport { DSIntlProvider, type DSIntlProviderProps } from './IntlProvider';\n\n// Hooks\nexport {\n useMessage,\n useLocale,\n useIsRTL,\n useTextDirection,\n useNumberFormat,\n useDateFormat,\n useRelativeTime,\n type MessageValues,\n} from './useMessage';\n\n// Messages\nexport {\n commonMessages,\n alertMessages,\n toastMessages,\n dialogMessages,\n formMessages,\n authMessages,\n navigationMessages,\n reportMessages,\n appearanceMessages,\n paginationMessages,\n calendarMessages,\n carouselMessages,\n methodologyMessages,\n allMessages,\n} from './messages';\n\n// Re-export react-intl types for convenience\nexport type { MessageDescriptor } from 'react-intl';\nexport { defineMessages, FormattedMessage, FormattedNumber, FormattedDate } from 'react-intl';\n"]}
@@ -1,183 +0,0 @@
1
- import React from 'react';
2
- import { Menu } from '@base-ui/react/menu';
3
- import clsx from 'clsx';
4
- import { jsx, jsxs } from 'react/jsx-runtime';
5
- import { Select as Select$1 } from '@base-ui/react/select';
6
-
7
- // src/components/DropdownMenu/DropdownMenu.tsx
8
- var DropdownMenu = Menu.Root;
9
- var DropdownMenuTrigger = React.forwardRef(({ className, ...props }, ref) => {
10
- return /* @__PURE__ */ jsx(
11
- Menu.Trigger,
12
- {
13
- ref,
14
- className: clsx("ds-dropdown-menu__trigger", className),
15
- ...props
16
- }
17
- );
18
- });
19
- DropdownMenuTrigger.displayName = "DropdownMenuTrigger";
20
- var DropdownMenuContent = React.forwardRef(
21
- ({ className, side = "bottom", align = "start", sideOffset = 4, alignOffset = 0, ...props }, ref) => {
22
- return /* @__PURE__ */ jsx(Menu.Portal, { children: /* @__PURE__ */ jsx(
23
- Menu.Positioner,
24
- {
25
- side,
26
- align,
27
- sideOffset,
28
- alignOffset,
29
- children: /* @__PURE__ */ jsx(
30
- Menu.Popup,
31
- {
32
- ref,
33
- className: clsx("ds-dropdown-menu__content", className),
34
- ...props
35
- }
36
- )
37
- }
38
- ) });
39
- }
40
- );
41
- DropdownMenuContent.displayName = "DropdownMenuContent";
42
- var DropdownMenuItem = React.forwardRef(
43
- ({ className, ...props }, ref) => {
44
- return /* @__PURE__ */ jsx(Menu.Item, { ref, className: clsx("ds-dropdown-menu__item", className), ...props });
45
- }
46
- );
47
- DropdownMenuItem.displayName = "DropdownMenuItem";
48
- var DropdownMenuSeparator = React.forwardRef(({ className, ...props }, ref) => {
49
- return /* @__PURE__ */ jsx("div", { ref, className: clsx("ds-dropdown-menu__separator", className), ...props });
50
- });
51
- DropdownMenuSeparator.displayName = "DropdownMenuSeparator";
52
- var DropdownMenuLabel = React.forwardRef(({ className, ...props }, ref) => {
53
- return /* @__PURE__ */ jsx("div", { ref, className: clsx("ds-dropdown-menu__label", className), ...props });
54
- });
55
- DropdownMenuLabel.displayName = "DropdownMenuLabel";
56
- function Select({
57
- value,
58
- defaultValue,
59
- onValueChange,
60
- disabled,
61
- required,
62
- name,
63
- items,
64
- children
65
- }) {
66
- return /* @__PURE__ */ jsx(
67
- Select$1.Root,
68
- {
69
- value,
70
- defaultValue,
71
- onValueChange: onValueChange ? (val) => onValueChange(val) : void 0,
72
- disabled,
73
- required,
74
- name,
75
- items,
76
- children
77
- }
78
- );
79
- }
80
- Select.displayName = "Select";
81
- var SelectTrigger = React.forwardRef(
82
- ({ className, placeholder = "Select...", size = "md", ...props }, ref) => {
83
- return /* @__PURE__ */ jsx("div", { className: "ds-select__trigger-wrapper", children: /* @__PURE__ */ jsxs(
84
- Select$1.Trigger,
85
- {
86
- ref,
87
- className: clsx("ds-select__trigger", `ds-select__trigger--${size}`, className),
88
- "aria-label": props["aria-label"] || (typeof placeholder === "string" ? placeholder : "Select"),
89
- ...props,
90
- children: [
91
- /* @__PURE__ */ jsx(Select$1.Value, { className: "ds-select__value", placeholder }),
92
- /* @__PURE__ */ jsx(Select$1.Icon, { className: "ds-select__icon", "aria-hidden": true, children: /* @__PURE__ */ jsx(ChevronDownIcon, {}) })
93
- ]
94
- }
95
- ) });
96
- }
97
- );
98
- SelectTrigger.displayName = "SelectTrigger";
99
- var SelectContent = React.forwardRef(
100
- ({ className, side = "bottom", sideOffset = 4, align = "start", children, ...props }, ref) => {
101
- return /* @__PURE__ */ jsx(Select$1.Portal, { children: /* @__PURE__ */ jsx(
102
- Select$1.Positioner,
103
- {
104
- side,
105
- sideOffset,
106
- align,
107
- alignItemWithTrigger: false,
108
- children: /* @__PURE__ */ jsx(Select$1.Popup, { ref, className: clsx("ds-select__content", className), ...props, children: /* @__PURE__ */ jsx(Select$1.List, { className: "ds-select__list", children }) })
109
- }
110
- ) });
111
- }
112
- );
113
- SelectContent.displayName = "SelectContent";
114
- var SelectItem = React.forwardRef(
115
- ({ className, value, children, disabled, ...props }, ref) => {
116
- return /* @__PURE__ */ jsxs(
117
- Select$1.Item,
118
- {
119
- ref,
120
- value,
121
- disabled,
122
- className: clsx("ds-select__item", className),
123
- ...props,
124
- children: [
125
- /* @__PURE__ */ jsx(Select$1.ItemIndicator, { className: "ds-select__item-indicator", children: /* @__PURE__ */ jsx(CheckIcon, {}) }),
126
- /* @__PURE__ */ jsx(Select$1.ItemText, { children })
127
- ]
128
- }
129
- );
130
- }
131
- );
132
- SelectItem.displayName = "SelectItem";
133
- var SelectGroup = React.forwardRef(
134
- ({ className, label, children, ...props }, ref) => {
135
- return /* @__PURE__ */ jsxs(Select$1.Group, { ref, className: clsx("ds-select__group", className), ...props, children: [
136
- label && /* @__PURE__ */ jsx(Select$1.GroupLabel, { className: "ds-select__group-label", children: label }),
137
- children
138
- ] });
139
- }
140
- );
141
- SelectGroup.displayName = "SelectGroup";
142
- var SelectSeparator = React.forwardRef(({ className, ...props }, ref) => {
143
- return /* @__PURE__ */ jsx("div", { ref, className: clsx("ds-select__separator", className), ...props });
144
- });
145
- SelectSeparator.displayName = "SelectSeparator";
146
- function ChevronDownIcon() {
147
- return /* @__PURE__ */ jsx(
148
- "svg",
149
- {
150
- xmlns: "http://www.w3.org/2000/svg",
151
- width: "16",
152
- height: "16",
153
- viewBox: "0 0 24 24",
154
- fill: "none",
155
- stroke: "currentColor",
156
- strokeWidth: "2",
157
- strokeLinecap: "round",
158
- strokeLinejoin: "round",
159
- children: /* @__PURE__ */ jsx("path", { d: "m6 9 6 6 6-6" })
160
- }
161
- );
162
- }
163
- function CheckIcon() {
164
- return /* @__PURE__ */ jsx(
165
- "svg",
166
- {
167
- xmlns: "http://www.w3.org/2000/svg",
168
- width: "14",
169
- height: "14",
170
- viewBox: "0 0 24 24",
171
- fill: "none",
172
- stroke: "currentColor",
173
- strokeWidth: "2",
174
- strokeLinecap: "round",
175
- strokeLinejoin: "round",
176
- children: /* @__PURE__ */ jsx("polyline", { points: "20 6 9 17 4 12" })
177
- }
178
- );
179
- }
180
-
181
- export { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuTrigger, Select, SelectContent, SelectGroup, SelectItem, SelectSeparator, SelectTrigger };
182
- //# sourceMappingURL=out.js.map
183
- //# sourceMappingURL=chunk-FAFAP4L5.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/DropdownMenu/DropdownMenu.tsx","../src/components/Select/Select.tsx"],"names":["React","clsx","jsx"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { Menu as BaseMenu } from '@base-ui/react/menu';\nimport clsx from 'clsx';\nimport './DropdownMenu.css';\n\n/* ============================================================================\n DROPDOWN MENU ROOT\n ============================================================================ */\n\nexport const DropdownMenu = BaseMenu.Root;\n\n/* ============================================================================\n DROPDOWN MENU TRIGGER\n ============================================================================ */\n\nexport const DropdownMenuTrigger = React.forwardRef<\n HTMLButtonElement,\n React.ButtonHTMLAttributes<HTMLButtonElement> & { className?: string }\n>(({ className, ...props }, ref) => {\n return (\n <BaseMenu.Trigger\n ref={ref}\n className={clsx('ds-dropdown-menu__trigger', className)}\n {...props}\n />\n );\n});\n\nDropdownMenuTrigger.displayName = 'DropdownMenuTrigger';\n\n/* ============================================================================\n DROPDOWN MENU CONTENT\n ============================================================================ */\n\nexport interface DropdownMenuContentProps extends React.HTMLAttributes<HTMLDivElement> {\n side?: 'top' | 'right' | 'bottom' | 'left';\n align?: 'start' | 'center' | 'end';\n sideOffset?: number;\n alignOffset?: number;\n}\n\nexport const DropdownMenuContent = React.forwardRef<HTMLDivElement, DropdownMenuContentProps>(\n (\n { className, side = 'bottom', align = 'start', sideOffset = 4, alignOffset = 0, ...props },\n ref,\n ) => {\n return (\n <BaseMenu.Portal>\n <BaseMenu.Positioner\n side={side}\n align={align}\n sideOffset={sideOffset}\n alignOffset={alignOffset}\n >\n <BaseMenu.Popup\n ref={ref}\n className={clsx('ds-dropdown-menu__content', className)}\n {...props}\n />\n </BaseMenu.Positioner>\n </BaseMenu.Portal>\n );\n },\n);\n\nDropdownMenuContent.displayName = 'DropdownMenuContent';\n\n/* ============================================================================\n DROPDOWN MENU ITEM\n ============================================================================ */\n\nexport interface DropdownMenuItemProps extends React.HTMLAttributes<HTMLDivElement> {\n disabled?: boolean;\n}\n\nexport const DropdownMenuItem = React.forwardRef<HTMLDivElement, DropdownMenuItemProps>(\n ({ className, ...props }, ref) => {\n return (\n <BaseMenu.Item ref={ref} className={clsx('ds-dropdown-menu__item', className)} {...props} />\n );\n },\n);\n\nDropdownMenuItem.displayName = 'DropdownMenuItem';\n\n/* ============================================================================\n DROPDOWN MENU SEPARATOR\n ============================================================================ */\n\nexport const DropdownMenuSeparator = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => {\n return <div ref={ref} className={clsx('ds-dropdown-menu__separator', className)} {...props} />;\n});\n\nDropdownMenuSeparator.displayName = 'DropdownMenuSeparator';\n\n/* ============================================================================\n DROPDOWN MENU LABEL\n ============================================================================ */\n\nexport const DropdownMenuLabel = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => {\n return <div ref={ref} className={clsx('ds-dropdown-menu__label', className)} {...props} />;\n});\n\nDropdownMenuLabel.displayName = 'DropdownMenuLabel';\n","import React from 'react';\nimport { Select as BaseSelect } from '@base-ui/react/select';\nimport clsx from 'clsx';\nimport './Select.css';\n\n/* ============================================================================\n SELECT ROOT\n ============================================================================ */\n\nexport interface SelectProps {\n /** Current selected value */\n value?: string;\n /** Default value for uncontrolled mode */\n defaultValue?: string;\n /** Callback when value changes */\n onValueChange?: (value: string | null) => void;\n /** Whether the select is disabled */\n disabled?: boolean;\n /** Whether the select is required */\n required?: boolean;\n /** Name for form submission */\n name?: string;\n /**\n * Item label map for Value display resolution.\n * When provided, Select.Value renders the label instead of the raw value.\n * Accepts a record (e.g. `{ en: \"English\", fr: \"French\" }`) or an array\n * of `{ value, label }` objects.\n */\n items?: Record<string, React.ReactNode> | ReadonlyArray<{ label: React.ReactNode; value: string }>;\n /** Children (SelectTrigger, SelectContent, etc.) */\n children: React.ReactNode;\n}\n\nexport function Select({\n value,\n defaultValue,\n onValueChange,\n disabled,\n required,\n name,\n items,\n children,\n}: SelectProps) {\n return (\n <BaseSelect.Root\n value={value}\n defaultValue={defaultValue}\n onValueChange={onValueChange ? (val) => onValueChange(val) : undefined}\n disabled={disabled}\n required={required}\n name={name}\n items={items}\n >\n {children}\n </BaseSelect.Root>\n );\n}\n\nSelect.displayName = 'Select';\n\n/* ============================================================================\n SELECT TRIGGER\n ============================================================================ */\n\nexport interface SelectTriggerProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {\n /** Placeholder text when no value selected */\n placeholder?: string;\n /** Size variant */\n size?: 'sm' | 'md' | 'lg';\n}\n\nexport const SelectTrigger = React.forwardRef<HTMLButtonElement, SelectTriggerProps>(\n ({ className, placeholder = 'Select...', size = 'md', ...props }, ref) => {\n return (\n <div className=\"ds-select__trigger-wrapper\">\n <BaseSelect.Trigger\n ref={ref}\n className={clsx('ds-select__trigger', `ds-select__trigger--${size}`, className)}\n aria-label={props['aria-label'] || (typeof placeholder === 'string' ? placeholder : 'Select')}\n {...props}\n >\n <BaseSelect.Value className=\"ds-select__value\" placeholder={placeholder} />\n <BaseSelect.Icon className=\"ds-select__icon\" aria-hidden>\n <ChevronDownIcon />\n </BaseSelect.Icon>\n </BaseSelect.Trigger>\n </div>\n );\n },\n);\n\nSelectTrigger.displayName = 'SelectTrigger';\n\n/* ============================================================================\n SELECT CONTENT\n ============================================================================ */\n\nexport interface SelectContentProps extends React.HTMLAttributes<HTMLDivElement> {\n /** Positioning side */\n side?: 'top' | 'bottom';\n /** Side offset in pixels */\n sideOffset?: number;\n /** Alignment */\n align?: 'start' | 'center' | 'end';\n}\n\nexport const SelectContent = React.forwardRef<HTMLDivElement, SelectContentProps>(\n ({ className, side = 'bottom', sideOffset = 4, align = 'start', children, ...props }, ref) => {\n return (\n <BaseSelect.Portal>\n <BaseSelect.Positioner\n side={side}\n sideOffset={sideOffset}\n align={align}\n alignItemWithTrigger={false}\n >\n <BaseSelect.Popup ref={ref} className={clsx('ds-select__content', className)} {...props}>\n <BaseSelect.List className=\"ds-select__list\">\n {children}\n </BaseSelect.List>\n </BaseSelect.Popup>\n </BaseSelect.Positioner>\n </BaseSelect.Portal>\n );\n },\n);\n\nSelectContent.displayName = 'SelectContent';\n\n/* ============================================================================\n SELECT ITEM\n ============================================================================ */\n\nexport interface SelectItemProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'children'> {\n /** Value for this option */\n value: string;\n /** Display text */\n children: React.ReactNode;\n /** Whether the item is disabled */\n disabled?: boolean;\n}\n\nexport const SelectItem = React.forwardRef<HTMLDivElement, SelectItemProps>(\n ({ className, value, children, disabled, ...props }, ref) => {\n return (\n <BaseSelect.Item\n ref={ref}\n value={value}\n disabled={disabled}\n className={clsx('ds-select__item', className)}\n {...props}\n >\n <BaseSelect.ItemIndicator className=\"ds-select__item-indicator\">\n <CheckIcon />\n </BaseSelect.ItemIndicator>\n <BaseSelect.ItemText>{children}</BaseSelect.ItemText>\n </BaseSelect.Item>\n );\n },\n);\n\nSelectItem.displayName = 'SelectItem';\n\n/* ============================================================================\n SELECT GROUP\n ============================================================================ */\n\nexport interface SelectGroupProps extends React.HTMLAttributes<HTMLDivElement> {\n /** Group label */\n label?: string;\n}\n\nexport const SelectGroup = React.forwardRef<HTMLDivElement, SelectGroupProps>(\n ({ className, label, children, ...props }, ref) => {\n return (\n <BaseSelect.Group ref={ref} className={clsx('ds-select__group', className)} {...props}>\n {label && (\n <BaseSelect.GroupLabel className=\"ds-select__group-label\">{label}</BaseSelect.GroupLabel>\n )}\n {children}\n </BaseSelect.Group>\n );\n },\n);\n\nSelectGroup.displayName = 'SelectGroup';\n\n/* ============================================================================\n SELECT SEPARATOR\n ============================================================================ */\n\nexport const SelectSeparator = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => {\n return <div ref={ref} className={clsx('ds-select__separator', className)} {...props} />;\n});\n\nSelectSeparator.displayName = 'SelectSeparator';\n\n/* ============================================================================\n ICONS\n ============================================================================ */\n\nfunction ChevronDownIcon() {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <path d=\"m6 9 6 6 6-6\" />\n </svg>\n );\n}\n\nfunction CheckIcon() {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"14\"\n height=\"14\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <polyline points=\"20 6 9 17 4 12\" />\n </svg>\n );\n}\n"]}