@tydavidson/design-system 1.0.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 (319) hide show
  1. package/README.md +153 -0
  2. package/dist/components/SidebarNav.d.ts +13 -0
  3. package/dist/components/SidebarNav.d.ts.map +1 -0
  4. package/dist/components/SidebarNav.js +63 -0
  5. package/dist/components/SidebarNav.js.map +1 -0
  6. package/dist/components/SidebarNavClient.d.ts +2 -0
  7. package/dist/components/SidebarNavClient.d.ts.map +1 -0
  8. package/dist/components/SidebarNavClient.js +35 -0
  9. package/dist/components/SidebarNavClient.js.map +1 -0
  10. package/dist/components/email/button.d.ts +11 -0
  11. package/dist/components/email/button.d.ts.map +1 -0
  12. package/dist/components/email/button.js +95 -0
  13. package/dist/components/email/button.js.map +1 -0
  14. package/dist/components/email/index.d.ts +7 -0
  15. package/dist/components/email/index.d.ts.map +1 -0
  16. package/dist/components/email/index.js +5 -0
  17. package/dist/components/email/index.js.map +1 -0
  18. package/dist/components/email/layout.d.ts +23 -0
  19. package/dist/components/email/layout.d.ts.map +1 -0
  20. package/dist/components/email/layout.js +99 -0
  21. package/dist/components/email/layout.js.map +1 -0
  22. package/dist/components/email/typography.d.ts +11 -0
  23. package/dist/components/email/typography.d.ts.map +1 -0
  24. package/dist/components/email/typography.js +60 -0
  25. package/dist/components/email/typography.js.map +1 -0
  26. package/dist/components/hooks/use-mobile.d.ts +2 -0
  27. package/dist/components/hooks/use-mobile.d.ts.map +1 -0
  28. package/dist/components/hooks/use-mobile.js +7 -0
  29. package/dist/components/hooks/use-mobile.js.map +1 -0
  30. package/dist/components/typography/heading/heading.d.ts +48 -0
  31. package/dist/components/typography/heading/heading.d.ts.map +1 -0
  32. package/dist/components/typography/heading/heading.js +80 -0
  33. package/dist/components/typography/heading/heading.js.map +1 -0
  34. package/dist/components/typography/heading/heading.stories.d.ts +12 -0
  35. package/dist/components/typography/heading/heading.stories.d.ts.map +1 -0
  36. package/dist/components/typography/heading/heading.stories.js +74 -0
  37. package/dist/components/typography/heading/heading.stories.js.map +1 -0
  38. package/dist/components/typography/heading/index.d.ts +2 -0
  39. package/dist/components/typography/heading/index.d.ts.map +1 -0
  40. package/dist/components/typography/heading/index.js +2 -0
  41. package/dist/components/typography/heading/index.js.map +1 -0
  42. package/dist/components/typography/index.d.ts +5 -0
  43. package/dist/components/typography/index.d.ts.map +1 -0
  44. package/dist/components/typography/index.js +8 -0
  45. package/dist/components/typography/index.js.map +1 -0
  46. package/dist/components/typography/showcase.d.ts +7 -0
  47. package/dist/components/typography/showcase.d.ts.map +1 -0
  48. package/dist/components/typography/showcase.js +11 -0
  49. package/dist/components/typography/showcase.js.map +1 -0
  50. package/dist/components/typography/text/index.d.ts +2 -0
  51. package/dist/components/typography/text/index.d.ts.map +1 -0
  52. package/dist/components/typography/text/index.js +2 -0
  53. package/dist/components/typography/text/index.js.map +1 -0
  54. package/dist/components/typography/text/text.d.ts +43 -0
  55. package/dist/components/typography/text/text.d.ts.map +1 -0
  56. package/dist/components/typography/text/text.js +61 -0
  57. package/dist/components/typography/text/text.js.map +1 -0
  58. package/dist/components/typography/text/text.stories.d.ts +13 -0
  59. package/dist/components/typography/text/text.stories.d.ts.map +1 -0
  60. package/dist/components/typography/text/text.stories.js +72 -0
  61. package/dist/components/typography/text/text.stories.js.map +1 -0
  62. package/dist/components/ui/accordion.d.ts +8 -0
  63. package/dist/components/ui/accordion.d.ts.map +1 -0
  64. package/dist/components/ui/accordion.js +45 -0
  65. package/dist/components/ui/accordion.js.map +1 -0
  66. package/dist/components/ui/alert.d.ts +9 -0
  67. package/dist/components/ui/alert.d.ts.map +1 -0
  68. package/dist/components/ui/alert.js +57 -0
  69. package/dist/components/ui/alert.js.map +1 -0
  70. package/dist/components/ui/aspect-ratio.d.ts +5 -0
  71. package/dist/components/ui/aspect-ratio.d.ts.map +1 -0
  72. package/dist/components/ui/aspect-ratio.js +4 -0
  73. package/dist/components/ui/aspect-ratio.js.map +1 -0
  74. package/dist/components/ui/avatar.d.ts +7 -0
  75. package/dist/components/ui/avatar.d.ts.map +1 -0
  76. package/dist/components/ui/avatar.js +43 -0
  77. package/dist/components/ui/avatar.js.map +1 -0
  78. package/dist/components/ui/badge.d.ts +15 -0
  79. package/dist/components/ui/badge.d.ts.map +1 -0
  80. package/dist/components/ui/badge.js +68 -0
  81. package/dist/components/ui/badge.js.map +1 -0
  82. package/dist/components/ui/breadcrumb.d.ts +11 -0
  83. package/dist/components/ui/breadcrumb.d.ts.map +1 -0
  84. package/dist/components/ui/breadcrumb.js +60 -0
  85. package/dist/components/ui/breadcrumb.js.map +1 -0
  86. package/dist/components/ui/button.d.ts +41 -0
  87. package/dist/components/ui/button.d.ts.map +1 -0
  88. package/dist/components/ui/button.js +95 -0
  89. package/dist/components/ui/button.js.map +1 -0
  90. package/dist/components/ui/calendar.d.ts +9 -0
  91. package/dist/components/ui/calendar.d.ts.map +1 -0
  92. package/dist/components/ui/calendar.js +46 -0
  93. package/dist/components/ui/calendar.js.map +1 -0
  94. package/dist/components/ui/card/card.d.ts +35 -0
  95. package/dist/components/ui/card/card.d.ts.map +1 -0
  96. package/dist/components/ui/card/card.js +64 -0
  97. package/dist/components/ui/card/card.js.map +1 -0
  98. package/dist/components/ui/card/index.d.ts +2 -0
  99. package/dist/components/ui/card/index.d.ts.map +1 -0
  100. package/dist/components/ui/card/index.js +2 -0
  101. package/dist/components/ui/card/index.js.map +1 -0
  102. package/dist/components/ui/card.d.ts +12 -0
  103. package/dist/components/ui/card.d.ts.map +1 -0
  104. package/dist/components/ui/card.js +62 -0
  105. package/dist/components/ui/card.js.map +1 -0
  106. package/dist/components/ui/checkbox.d.ts +5 -0
  107. package/dist/components/ui/checkbox.d.ts.map +1 -0
  108. package/dist/components/ui/checkbox.js +34 -0
  109. package/dist/components/ui/checkbox.js.map +1 -0
  110. package/dist/components/ui/collapsible.d.ts +7 -0
  111. package/dist/components/ui/collapsible.d.ts.map +1 -0
  112. package/dist/components/ui/collapsible.js +6 -0
  113. package/dist/components/ui/collapsible.js.map +1 -0
  114. package/dist/components/ui/command.d.ts +83 -0
  115. package/dist/components/ui/command.d.ts.map +1 -0
  116. package/dist/components/ui/command.js +71 -0
  117. package/dist/components/ui/command.js.map +1 -0
  118. package/dist/components/ui/context-menu.d.ts +31 -0
  119. package/dist/components/ui/context-menu.d.ts.map +1 -0
  120. package/dist/components/ui/context-menu.js +87 -0
  121. package/dist/components/ui/context-menu.js.map +1 -0
  122. package/dist/components/ui/dialog.d.ts +20 -0
  123. package/dist/components/ui/dialog.d.ts.map +1 -0
  124. package/dist/components/ui/dialog.js +63 -0
  125. package/dist/components/ui/dialog.js.map +1 -0
  126. package/dist/components/ui/dropdown-menu/dropdown-menu.d.ts +32 -0
  127. package/dist/components/ui/dropdown-menu/dropdown-menu.d.ts.map +1 -0
  128. package/dist/components/ui/dropdown-menu/dropdown-menu.js +118 -0
  129. package/dist/components/ui/dropdown-menu/dropdown-menu.js.map +1 -0
  130. package/dist/components/ui/dropdown-menu/index.d.ts +2 -0
  131. package/dist/components/ui/dropdown-menu/index.d.ts.map +1 -0
  132. package/dist/components/ui/dropdown-menu/index.js +2 -0
  133. package/dist/components/ui/dropdown-menu/index.js.map +1 -0
  134. package/dist/components/ui/header.d.ts +3 -0
  135. package/dist/components/ui/header.d.ts.map +1 -0
  136. package/dist/components/ui/header.js +11 -0
  137. package/dist/components/ui/header.js.map +1 -0
  138. package/dist/components/ui/hover-card.d.ts +7 -0
  139. package/dist/components/ui/hover-card.d.ts.map +1 -0
  140. package/dist/components/ui/hover-card.js +35 -0
  141. package/dist/components/ui/hover-card.js.map +1 -0
  142. package/dist/components/ui/index.d.ts +15 -0
  143. package/dist/components/ui/index.d.ts.map +1 -0
  144. package/dist/components/ui/index.js +27 -0
  145. package/dist/components/ui/index.js.map +1 -0
  146. package/dist/components/ui/input.d.ts +6 -0
  147. package/dist/components/ui/input.d.ts.map +1 -0
  148. package/dist/components/ui/input.js +32 -0
  149. package/dist/components/ui/input.js.map +1 -0
  150. package/dist/components/ui/label.d.ts +6 -0
  151. package/dist/components/ui/label.d.ts.map +1 -0
  152. package/dist/components/ui/label.js +35 -0
  153. package/dist/components/ui/label.js.map +1 -0
  154. package/dist/components/ui/nav.d.ts +9 -0
  155. package/dist/components/ui/nav.d.ts.map +1 -0
  156. package/dist/components/ui/nav.js +42 -0
  157. package/dist/components/ui/nav.js.map +1 -0
  158. package/dist/components/ui/org-switcher.d.ts +13 -0
  159. package/dist/components/ui/org-switcher.d.ts.map +1 -0
  160. package/dist/components/ui/org-switcher.js +17 -0
  161. package/dist/components/ui/org-switcher.js.map +1 -0
  162. package/dist/components/ui/popover.d.ts +8 -0
  163. package/dist/components/ui/popover.d.ts.map +1 -0
  164. package/dist/components/ui/popover.js +36 -0
  165. package/dist/components/ui/popover.js.map +1 -0
  166. package/dist/components/ui/progress.d.ts +5 -0
  167. package/dist/components/ui/progress.d.ts.map +1 -0
  168. package/dist/components/ui/progress.js +33 -0
  169. package/dist/components/ui/progress.js.map +1 -0
  170. package/dist/components/ui/radio-group.d.ts +6 -0
  171. package/dist/components/ui/radio-group.d.ts.map +1 -0
  172. package/dist/components/ui/radio-group.js +39 -0
  173. package/dist/components/ui/radio-group.js.map +1 -0
  174. package/dist/components/ui/select.d.ts +14 -0
  175. package/dist/components/ui/select.d.ts.map +1 -0
  176. package/dist/components/ui/select.js +70 -0
  177. package/dist/components/ui/select.js.map +1 -0
  178. package/dist/components/ui/separator.d.ts +5 -0
  179. package/dist/components/ui/separator.d.ts.map +1 -0
  180. package/dist/components/ui/separator.js +33 -0
  181. package/dist/components/ui/separator.js.map +1 -0
  182. package/dist/components/ui/sheet.d.ts +22 -0
  183. package/dist/components/ui/sheet.d.ts.map +1 -0
  184. package/dist/components/ui/sheet.js +69 -0
  185. package/dist/components/ui/sheet.js.map +1 -0
  186. package/dist/components/ui/sidebar.d.ts +65 -0
  187. package/dist/components/ui/sidebar.d.ts.map +1 -0
  188. package/dist/components/ui/sidebar.js +263 -0
  189. package/dist/components/ui/sidebar.js.map +1 -0
  190. package/dist/components/ui/skeleton.d.ts +3 -0
  191. package/dist/components/ui/skeleton.d.ts.map +1 -0
  192. package/dist/components/ui/skeleton.js +30 -0
  193. package/dist/components/ui/skeleton.js.map +1 -0
  194. package/dist/components/ui/slider.d.ts +5 -0
  195. package/dist/components/ui/slider.d.ts.map +1 -0
  196. package/dist/components/ui/slider.js +33 -0
  197. package/dist/components/ui/slider.js.map +1 -0
  198. package/dist/components/ui/switch.d.ts +5 -0
  199. package/dist/components/ui/switch.d.ts.map +1 -0
  200. package/dist/components/ui/switch.js +33 -0
  201. package/dist/components/ui/switch.js.map +1 -0
  202. package/dist/components/ui/tabs.d.ts +8 -0
  203. package/dist/components/ui/tabs.d.ts.map +1 -0
  204. package/dist/components/ui/tabs.js +44 -0
  205. package/dist/components/ui/tabs.js.map +1 -0
  206. package/dist/components/ui/textarea.d.ts +6 -0
  207. package/dist/components/ui/textarea.d.ts.map +1 -0
  208. package/dist/components/ui/textarea.js +32 -0
  209. package/dist/components/ui/textarea.js.map +1 -0
  210. package/dist/components/ui/theme-toggle/index.d.ts +2 -0
  211. package/dist/components/ui/theme-toggle/index.d.ts.map +1 -0
  212. package/dist/components/ui/theme-toggle/index.js +2 -0
  213. package/dist/components/ui/theme-toggle/index.js.map +1 -0
  214. package/dist/components/ui/theme-toggle/theme-toggle.d.ts +21 -0
  215. package/dist/components/ui/theme-toggle/theme-toggle.d.ts.map +1 -0
  216. package/dist/components/ui/theme-toggle/theme-toggle.js +72 -0
  217. package/dist/components/ui/theme-toggle/theme-toggle.js.map +1 -0
  218. package/dist/components/ui/toast.d.ts +5 -0
  219. package/dist/components/ui/toast.d.ts.map +1 -0
  220. package/dist/components/ui/toast.js +38 -0
  221. package/dist/components/ui/toast.js.map +1 -0
  222. package/dist/components/ui/toggle-group.d.ts +6 -0
  223. package/dist/components/ui/toggle-group.d.ts.map +1 -0
  224. package/dist/components/ui/toggle-group.js +38 -0
  225. package/dist/components/ui/toggle-group.js.map +1 -0
  226. package/dist/components/ui/toggle.d.ts +5 -0
  227. package/dist/components/ui/toggle.d.ts.map +1 -0
  228. package/dist/components/ui/toggle.js +33 -0
  229. package/dist/components/ui/toggle.js.map +1 -0
  230. package/dist/components/ui/tooltip.d.ts +8 -0
  231. package/dist/components/ui/tooltip.d.ts.map +1 -0
  232. package/dist/components/ui/tooltip.js +36 -0
  233. package/dist/components/ui/tooltip.js.map +1 -0
  234. package/dist/components/ui/use-toast.d.ts +3 -0
  235. package/dist/components/ui/use-toast.d.ts.map +1 -0
  236. package/dist/components/ui/use-toast.js +4 -0
  237. package/dist/components/ui/use-toast.js.map +1 -0
  238. package/dist/email/button.d.ts +11 -0
  239. package/dist/email/button.d.ts.map +1 -0
  240. package/dist/email/button.js +95 -0
  241. package/dist/email/button.js.map +1 -0
  242. package/dist/email/index.d.ts +7 -0
  243. package/dist/email/index.d.ts.map +1 -0
  244. package/dist/email/index.js +5 -0
  245. package/dist/email/index.js.map +1 -0
  246. package/dist/email/layout.d.ts +23 -0
  247. package/dist/email/layout.d.ts.map +1 -0
  248. package/dist/email/layout.js +99 -0
  249. package/dist/email/layout.js.map +1 -0
  250. package/dist/email/typography.d.ts +11 -0
  251. package/dist/email/typography.d.ts.map +1 -0
  252. package/dist/email/typography.js +60 -0
  253. package/dist/email/typography.js.map +1 -0
  254. package/dist/hooks/use-media-query.d.ts +2 -0
  255. package/dist/hooks/use-media-query.d.ts.map +1 -0
  256. package/dist/hooks/use-media-query.js +17 -0
  257. package/dist/hooks/use-media-query.js.map +1 -0
  258. package/dist/index.d.ts +6 -0
  259. package/dist/index.d.ts.map +1 -0
  260. package/dist/index.js +7 -0
  261. package/dist/index.js.map +1 -0
  262. package/dist/lib/theme-utils.d.ts +42 -0
  263. package/dist/lib/theme-utils.d.ts.map +1 -0
  264. package/dist/lib/theme-utils.js +78 -0
  265. package/dist/lib/theme-utils.js.map +1 -0
  266. package/dist/lib/types.d.ts +18 -0
  267. package/dist/lib/types.d.ts.map +1 -0
  268. package/dist/lib/types.js +5 -0
  269. package/dist/lib/types.js.map +1 -0
  270. package/dist/lib/utils.d.ts +34 -0
  271. package/dist/lib/utils.d.ts.map +1 -0
  272. package/dist/lib/utils.js +62 -0
  273. package/dist/lib/utils.js.map +1 -0
  274. package/dist/styles/constants/button-colors.d.ts +59 -0
  275. package/dist/styles/constants/button-colors.d.ts.map +1 -0
  276. package/dist/styles/constants/button-colors.js +58 -0
  277. package/dist/styles/constants/button-colors.js.map +1 -0
  278. package/dist/themes/catalog.d.ts +2 -0
  279. package/dist/themes/catalog.d.ts.map +1 -0
  280. package/dist/themes/catalog.js +16 -0
  281. package/dist/themes/catalog.js.map +1 -0
  282. package/dist/themes/index.d.ts +1 -0
  283. package/dist/themes/index.d.ts.map +1 -0
  284. package/dist/themes/index.js +2 -0
  285. package/dist/themes/index.js.map +1 -0
  286. package/dist/themes/theme-context.d.ts +30 -0
  287. package/dist/themes/theme-context.d.ts.map +1 -0
  288. package/dist/themes/theme-context.js +40 -0
  289. package/dist/themes/theme-context.js.map +1 -0
  290. package/dist/themes/theme-provider.d.ts +9 -0
  291. package/dist/themes/theme-provider.d.ts.map +1 -0
  292. package/dist/themes/theme-provider.js +36 -0
  293. package/dist/themes/theme-provider.js.map +1 -0
  294. package/dist/tokens/colors.d.ts +135 -0
  295. package/dist/tokens/colors.d.ts.map +1 -0
  296. package/dist/tokens/colors.js +137 -0
  297. package/dist/tokens/colors.js.map +1 -0
  298. package/dist/tokens/index.d.ts +256 -0
  299. package/dist/tokens/index.d.ts.map +1 -0
  300. package/dist/tokens/index.js +22 -0
  301. package/dist/tokens/index.js.map +1 -0
  302. package/dist/tokens/radius.d.ts +19 -0
  303. package/dist/tokens/radius.d.ts.map +1 -0
  304. package/dist/tokens/radius.js +24 -0
  305. package/dist/tokens/radius.js.map +1 -0
  306. package/dist/tokens/shadows.d.ts +21 -0
  307. package/dist/tokens/shadows.d.ts.map +1 -0
  308. package/dist/tokens/shadows.js +23 -0
  309. package/dist/tokens/shadows.js.map +1 -0
  310. package/dist/tokens/spacing.d.ts +26 -0
  311. package/dist/tokens/spacing.d.ts.map +1 -0
  312. package/dist/tokens/spacing.js +33 -0
  313. package/dist/tokens/spacing.js.map +1 -0
  314. package/dist/tokens/typography.d.ts +75 -0
  315. package/dist/tokens/typography.d.ts.map +1 -0
  316. package/dist/tokens/typography.js +52 -0
  317. package/dist/tokens/typography.js.map +1 -0
  318. package/dist/tsconfig.build.tsbuildinfo +1 -0
  319. package/package.json +102 -0
package/README.md ADDED
@@ -0,0 +1,153 @@
1
+ # component-library
2
+
3
+ ## Development Commands
4
+
5
+ This project uses [mise](https://mise.jdx.dev/) for task management. Below are the available commands:
6
+
7
+ ### Build
8
+ ```bash
9
+ mise build
10
+ ```
11
+ Build the project.
12
+
13
+ ### LLM Tasks
14
+ The following LLM-powered development tasks are available:
15
+
16
+ ```bash
17
+ mise llm_bundle
18
+ ```
19
+ LLM-powered bundling task.
20
+
21
+ ```bash
22
+ mise llm_code_review
23
+ ```
24
+ Run an LLM-powered code review.
25
+
26
+ ```bash
27
+ mise llm_copy
28
+ ```
29
+ LLM copy task.
30
+
31
+ ```bash
32
+ mise llm_github_issues
33
+ ```
34
+ LLM task for GitHub issues management.
35
+
36
+ ```bash
37
+ mise llm_missing_tests
38
+ ```
39
+ Identify missing tests using LLM.
40
+
41
+ ```bash
42
+ mise llm_readme
43
+ ```
44
+ Generate or update README using LLM.
45
+
46
+ ### Running Tasks
47
+ You can run any task using either:
48
+ ```bash
49
+ mise run <task_name>
50
+ # or the shorthand:
51
+ mise <task_name>
52
+ ```
53
+
54
+ To see all available tasks:
55
+ ```bash
56
+ mise tasks
57
+ ```
58
+
59
+ ## Design System
60
+
61
+ This project uses a comprehensive design system with semantic CSS variables and component-specific styling patterns.
62
+
63
+ ### CSS Variable Naming Conventions
64
+
65
+ We use two complementary naming patterns for our CSS variables:
66
+
67
+ #### 1. Global Semantic Variables
68
+ For application-level styling, we use semantic variables organized by property type:
69
+
70
+ ```css
71
+ /* Pattern: --{property}-{context}-{hierarchy} */
72
+ --bg-primary /* Primary background */
73
+ --bg-secondary /* Secondary background */
74
+ --bg-brand-primary /* Brand context, primary level */
75
+ --text-primary /* Primary text color */
76
+ --text-error-primary /* Error context, primary level */
77
+ --border-primary /* Primary border color */
78
+ --border-brand /* Brand context border */
79
+ ```
80
+
81
+ **Usage in application code:**
82
+ ```tsx
83
+ <div className="bg-bg-primary text-text-primary border-border-secondary">
84
+ Application content
85
+ </div>
86
+ ```
87
+
88
+ #### 2. Component-Specific Variables
89
+ For reusable components, we use component-first naming:
90
+
91
+ ```css
92
+ /* Pattern: --{component}-{property}-{variant}-{state} */
93
+ --button-bg-primary /* Button background, primary variant */
94
+ --button-bg-primary-hover /* Button background, primary variant, hover state */
95
+ --input-border-focus /* Input border, focus state */
96
+ --dropdown-item-bg-brand-hover /* Dropdown item background, brand variant, hover state */
97
+ ```
98
+
99
+ **Usage in component libraries:**
100
+ ```tsx
101
+ <button className="bg-[var(--button-bg-primary)] hover:bg-[var(--button-bg-primary-hover)]">
102
+ Click me
103
+ </button>
104
+ ```
105
+
106
+ ### Key Benefits
107
+
108
+ - **🎯 Component Grouping**: All variables for a component are grouped together (e.g., `--button-*`)
109
+ - **⚡ Developer Experience**: Autocomplete shows all related variables when typing component name
110
+ - **🔄 Third-party Override**: Can override third-party library variables with same names
111
+ - **📐 Semantic Consistency**: Aligns with global design system patterns
112
+ - **🎨 Maintainability**: Clear organization and naming conventions
113
+
114
+ ### Examples by Component
115
+
116
+ **Button Variables:**
117
+ ```css
118
+ --button-bg-primary, --button-bg-secondary, --button-bg-destructive
119
+ --button-text-primary, --button-text-link, --button-text-ghost
120
+ --button-border-outline, --button-icon-size-sm
121
+ ```
122
+
123
+ **Input Variables:**
124
+ ```css
125
+ --input-bg, --input-bg-disabled
126
+ --input-text, --input-text-placeholder
127
+ --input-border, --input-border-hover, --input-border-focus
128
+ ```
129
+
130
+ **Dropdown Variables:**
131
+ ```css
132
+ --dropdown-bg, --dropdown-text, --dropdown-border
133
+ --dropdown-item-bg-hover, --dropdown-item-text-brand-hover
134
+ --dropdown-separator-bg
135
+ ```
136
+
137
+ ### Documentation
138
+
139
+ For detailed implementation guidelines, migration instructions, and complete variable references, see:
140
+ - [`docs/component-specific-colors.md`](docs/component-specific-colors.md) - Component-specific styling system
141
+ - [`src/app/globals.css`](src/app/globals.css) - Global semantic variables
142
+ - [`src/styles/components/`](src/styles/components/) - Component-specific CSS files
143
+
144
+ ### Quick Start
145
+
146
+ 1. **For application styling**: Use semantic utilities like `bg-bg-primary`, `text-text-secondary`
147
+ 2. **For component styling**: Use component variables like `--button-bg-primary`, `--input-border-focus`
148
+ 3. **Adding new components**: Follow the `--{component}-{property}-{variant}` pattern
149
+ 4. **Dark mode**: All variables automatically support light/dark themes
150
+
151
+ ---
152
+
153
+ *This design system enables consistent, maintainable, and scalable styling across the entire application while providing excellent developer experience.*
@@ -0,0 +1,13 @@
1
+ import * as React from "react";
2
+ export declare function SidebarNav({ organizations, currentOrg, setCurrentOrg }: {
3
+ organizations: Array<{
4
+ id: string;
5
+ name: string;
6
+ logo: React.ElementType;
7
+ avatarUrl: string;
8
+ avatarFallback: string;
9
+ }>;
10
+ currentOrg: string;
11
+ setCurrentOrg: React.Dispatch<React.SetStateAction<string>>;
12
+ }): import("react/jsx-runtime").JSX.Element;
13
+ //# sourceMappingURL=SidebarNav.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SidebarNav.d.ts","sourceRoot":"","sources":["../../src/components/SidebarNav.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AA6C/B,wBAAgB,UAAU,CAAC,EAAE,aAAa,EAAE,UAAU,EAAE,aAAa,EAAE,EAAE;IACvE,aAAa,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,KAAK,CAAC,WAAW,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACvH,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC;CAC7D,2CA+IA"}
@@ -0,0 +1,63 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useSidebar } from "@/components/ui/sidebar";
3
+ import { useTheme } from "@/themes/theme-context";
4
+ import Link from "next/link";
5
+ import { Sidebar, SidebarHeader, SidebarContent, SidebarGroup, SidebarGroupContent, SidebarMenu, SidebarMenuItem, SidebarMenuButton, SidebarFooter, SidebarTrigger } from "@/components/ui/sidebar";
6
+ import { OrgSwitcher } from "@/components/ui/org-switcher";
7
+ import { ArrowRightToLine, Sun, Moon, Info, Home, Palette, Layers } from "lucide-react";
8
+ import { Avatar, AvatarImage, AvatarFallback } from "@/components/ui/avatar";
9
+ import { Button } from "@/components/ui/button";
10
+ var navItems = [
11
+ {
12
+ title: "Home",
13
+ icon: Home,
14
+ url: "/",
15
+ },
16
+ {
17
+ title: "Color",
18
+ icon: Palette,
19
+ url: "/design-system",
20
+ },
21
+ {
22
+ title: "Components",
23
+ icon: Layers,
24
+ url: "/components",
25
+ },
26
+ {
27
+ title: "Test Page",
28
+ icon: Info,
29
+ url: "/test",
30
+ },
31
+ ];
32
+ // SidebarNav component: contains all sidebar logic/content
33
+ export function SidebarNav(_a) {
34
+ var organizations = _a.organizations, currentOrg = _a.currentOrg, setCurrentOrg = _a.setCurrentOrg;
35
+ var _b = useSidebar(), state = _b.state, toggleSidebar = _b.toggleSidebar;
36
+ var isDark = useTheme().isDark;
37
+ return (_jsxs(Sidebar, { collapsible: "icon", className: "float-sidebar h-screen", onClick: function (e) {
38
+ var interactiveTags = ['BUTTON', 'A', 'INPUT', 'SELECT', 'TEXTAREA', 'LABEL'];
39
+ var target = e.target;
40
+ if (interactiveTags.includes(target.tagName) ||
41
+ target.closest('button') ||
42
+ target.closest('a') ||
43
+ target.closest('[role="button"]') ||
44
+ target.closest('.sidebar-menu-button') ||
45
+ target.closest('.org-switcher-root')) {
46
+ return;
47
+ }
48
+ toggleSidebar();
49
+ }, children: [_jsx(SidebarHeader, { className: "flex justify-between items-center", children: _jsx(OrgSwitcher, { organizations: organizations }) }), _jsx(SidebarContent, { className: "py-4", children: _jsx(SidebarGroup, { children: _jsx(SidebarGroupContent, { children: _jsx(SidebarMenu, { children: navItems.map(function (item) { return (_jsx(SidebarMenuItem, { children: _jsx(SidebarMenuButton, { asChild: true, tooltip: item.title, children: _jsxs(Link, { href: item.url, children: [item.icon && _jsx(item.icon, { className: "h-4 w-4" }), _jsx("span", { className: "transition-all duration-200 max-w-[120px] opacity-100 ml-2 group-data-[state=collapsed]/sidebar:max-w-0 group-data-[state=collapsed]/sidebar:opacity-0 group-data-[state=collapsed]/sidebar:ml-0 overflow-hidden whitespace-nowrap", children: item.title })] }) }) }, item.title)); }) }) }) }) }), _jsxs(SidebarFooter, { className: "relative min-h-[60px]", children: [_jsxs("div", { className: "absolute inset-0 flex items-center justify-between gap-2 px-4 py-2 transition-opacity duration-200 ".concat(state === "collapsed" ? "opacity-0 pointer-events-none" : "opacity-100"), children: [_jsxs(Avatar, { className: "h-8 w-8", children: [_jsx(AvatarImage, { src: "/avatars/tydavidson.png", alt: "User" }), _jsx(AvatarFallback, { children: "JD" })] }), _jsxs("div", { className: "flex items-center gap-2", children: [_jsx(Button, { variant: "ghost", size: "icon", children: _jsx(Info, { className: "h-5 w-5" }) }), _jsx(Button, { variant: "ghost", size: "icon", "aria-label": "Toggle theme", onClick: function () {
50
+ if (typeof window !== "undefined") {
51
+ var html = document.documentElement;
52
+ var isCurrentlyDark = html.classList.contains("dark");
53
+ html.classList.toggle("dark", !isCurrentlyDark);
54
+ }
55
+ }, children: isDark ? (_jsx(Sun, { className: "h-5 w-5" })) : (_jsx(Moon, { className: "h-5 w-5" })) })] })] }), _jsxs("div", { className: "absolute inset-0 flex flex-col items-center justify-end pb-4 transition-opacity duration-200 ".concat(state === "collapsed" ? "opacity-100" : "opacity-0 pointer-events-none"), children: [_jsx(SidebarGroup, { className: "w-full flex flex-col items-center", children: _jsxs(SidebarMenu, { className: "flex flex-col items-center gap-1 w-full", children: [_jsx(SidebarMenuItem, { children: _jsx(SidebarMenuButton, { asChild: true, children: _jsx(SidebarTrigger, { className: "h-8 w-8 rounded-full mb-4 bg-bg-tertiary", "aria-label": "Expand sidebar", children: _jsx(ArrowRightToLine, { className: "h-4 w-4" }) }) }) }), _jsx(SidebarMenuItem, { children: _jsx(SidebarMenuButton, { asChild: true, children: _jsx("button", { "aria-label": "Toggle theme", className: "h-8 w-8 flex items-center justify-center rounded-full", onClick: function () {
56
+ if (typeof window !== "undefined") {
57
+ var html = document.documentElement;
58
+ var isCurrentlyDark = html.classList.contains("dark");
59
+ html.classList.toggle("dark", !isCurrentlyDark);
60
+ }
61
+ }, children: isDark ? (_jsx(Sun, { className: "h-5 w-5" })) : (_jsx(Moon, { className: "h-5 w-5" })) }) }) }), _jsx(SidebarMenuItem, { children: _jsx(SidebarMenuButton, { asChild: true, children: _jsx("button", { "aria-label": "Info", children: _jsx(Info, { className: "h-4 w-4" }) }) }) })] }) }), _jsxs(Avatar, { className: "h-8 w-8 mt-3", children: [_jsx(AvatarImage, { src: "/avatars/tydavidson.png", alt: "User" }), _jsx(AvatarFallback, { children: "JD" })] })] })] })] }));
62
+ }
63
+ //# sourceMappingURL=SidebarNav.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SidebarNav.js","sourceRoot":"","sources":["../../src/components/SidebarNav.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export default function SidebarNavClient(): import("react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=SidebarNavClient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SidebarNavClient.d.ts","sourceRoot":"","sources":["../../src/components/SidebarNavClient.tsx"],"names":[],"mappings":"AA+BA,MAAM,CAAC,OAAO,UAAU,gBAAgB,4CASvC"}
@@ -0,0 +1,35 @@
1
+ "use client";
2
+ import { jsx as _jsx } from "react/jsx-runtime";
3
+ import React from "react";
4
+ import { SidebarNav } from "@/components/SidebarNav";
5
+ import LogoStateStreet from "@/assets/logos/Logo_State_Street.svg";
6
+ import LogoAlta from "@/assets/logos/Logo_Alta.svg";
7
+ import LogoGS from "@/assets/logos/Logo_GS.svg";
8
+ var organizations = [
9
+ {
10
+ id: "alta-capital",
11
+ name: "Alta Capital",
12
+ logo: LogoAlta,
13
+ avatarUrl: "/avatars/tydavidson.png",
14
+ avatarFallback: "AC"
15
+ },
16
+ {
17
+ id: "state-street",
18
+ name: "State Street",
19
+ logo: LogoStateStreet,
20
+ avatarUrl: "/avatars/tydavidson.png",
21
+ avatarFallback: "SS"
22
+ },
23
+ {
24
+ id: "gs",
25
+ name: "Goldman Sachs",
26
+ logo: LogoGS,
27
+ avatarUrl: "/avatars/tydavidson.png",
28
+ avatarFallback: "GS"
29
+ }
30
+ ];
31
+ export default function SidebarNavClient() {
32
+ var _a = React.useState(organizations[0].id), currentOrg = _a[0], setCurrentOrg = _a[1];
33
+ return (_jsx(SidebarNav, { organizations: organizations, currentOrg: currentOrg, setCurrentOrg: setCurrentOrg }));
34
+ }
35
+ //# sourceMappingURL=SidebarNavClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SidebarNavClient.js","sourceRoot":"","sources":["../../src/components/SidebarNavClient.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AACb,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,eAAe,MAAM,sCAAsC,CAAC;AACnE,OAAO,QAAQ,MAAM,8BAA8B,CAAC;AACpD,OAAO,MAAM,MAAM,4BAA4B,CAAC;AAEhD,IAAM,aAAa,GAAG;IACpB;QACE,EAAE,EAAE,cAAc;QAClB,IAAI,EAAE,cAAc;QACpB,IAAI,EAAE,QAAQ;QACd,SAAS,EAAE,yBAAyB;QACpC,cAAc,EAAE,IAAI;KACrB;IACD;QACE,EAAE,EAAE,cAAc;QAClB,IAAI,EAAE,cAAc;QACpB,IAAI,EAAE,eAAe;QACrB,SAAS,EAAE,yBAAyB;QACpC,cAAc,EAAE,IAAI;KACrB;IACD;QACE,EAAE,EAAE,IAAI;QACR,IAAI,EAAE,eAAe;QACrB,IAAI,EAAE,MAAM;QACZ,SAAS,EAAE,yBAAyB;QACpC,cAAc,EAAE,IAAI;KACrB;CACF,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,gBAAgB;IAChC,IAAA,KAA8B,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAhE,UAAU,QAAA,EAAE,aAAa,QAAuC,CAAC;IACxE,OAAO,CACL,KAAC,UAAU,IACT,aAAa,EAAE,aAAa,EAC5B,UAAU,EAAE,UAAU,EACtB,aAAa,EAAE,aAAa,GAC5B,CACH,CAAC;AACJ,CAAC"}
@@ -0,0 +1,11 @@
1
+ import React from 'react';
2
+ export interface EmailButtonProps {
3
+ variant?: 'primary' | 'secondary' | 'ghost' | 'outline' | 'link' | 'destructive';
4
+ size?: 'sm' | 'md' | 'lg';
5
+ children: React.ReactNode;
6
+ href?: string;
7
+ style?: React.CSSProperties;
8
+ fullWidth?: boolean;
9
+ }
10
+ export declare const EmailButton: React.FC<EmailButtonProps>;
11
+ //# sourceMappingURL=button.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../../src/components/email/button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,WAAW,gBAAgB;IAC/B,OAAO,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,GAAG,aAAa,CAAC;IACjF,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAC1B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAmGlD,CAAC"}
@@ -0,0 +1,95 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ var __rest = (this && this.__rest) || function (s, e) {
13
+ var t = {};
14
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
15
+ t[p] = s[p];
16
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
17
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
18
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
19
+ t[p[i]] = s[p[i]];
20
+ }
21
+ return t;
22
+ };
23
+ import { jsx as _jsx } from "react/jsx-runtime";
24
+ export var EmailButton = function (_a) {
25
+ var _b = _a.variant, variant = _b === void 0 ? 'primary' : _b, _c = _a.size, size = _c === void 0 ? 'md' : _c, children = _a.children, href = _a.href, style = _a.style, _d = _a.fullWidth, fullWidth = _d === void 0 ? false : _d, props = __rest(_a, ["variant", "size", "children", "href", "style", "fullWidth"]);
26
+ // Convert design system colors to inline styles
27
+ var getVariantStyles = function () {
28
+ switch (variant) {
29
+ case 'primary':
30
+ return {
31
+ backgroundColor: '#4A49A6',
32
+ color: '#ffffff',
33
+ border: '1px solid #4A49A6',
34
+ };
35
+ case 'secondary':
36
+ return {
37
+ backgroundColor: '#f8f9fa',
38
+ color: '#4A49A6',
39
+ border: '1px solid #dee2e6',
40
+ };
41
+ case 'ghost':
42
+ return {
43
+ backgroundColor: 'transparent',
44
+ color: '#4A49A6',
45
+ border: '1px solid transparent',
46
+ };
47
+ case 'outline':
48
+ return {
49
+ backgroundColor: 'transparent',
50
+ color: '#4A49A6',
51
+ border: '1px solid #4A49A6',
52
+ };
53
+ case 'destructive':
54
+ return {
55
+ backgroundColor: '#dc3545',
56
+ color: '#ffffff',
57
+ border: '1px solid #dc3545',
58
+ };
59
+ default:
60
+ return {
61
+ backgroundColor: '#4A49A6',
62
+ color: '#ffffff',
63
+ border: '1px solid #4A49A6',
64
+ };
65
+ }
66
+ };
67
+ var getSizeStyles = function () {
68
+ switch (size) {
69
+ case 'sm':
70
+ return {
71
+ padding: '6px 12px',
72
+ fontSize: '12px',
73
+ borderRadius: '4px',
74
+ };
75
+ case 'lg':
76
+ return {
77
+ padding: '12px 24px',
78
+ fontSize: '16px',
79
+ borderRadius: '6px',
80
+ };
81
+ default:
82
+ return {
83
+ padding: '8px 16px',
84
+ fontSize: '14px',
85
+ borderRadius: '4px',
86
+ };
87
+ }
88
+ };
89
+ var baseStyles = __assign(__assign(__assign({ display: 'inline-block', textDecoration: 'none', textAlign: 'center', fontWeight: '500', cursor: 'pointer', width: fullWidth ? '100%' : 'auto' }, getVariantStyles()), getSizeStyles()), style);
90
+ if (href) {
91
+ return (_jsx("a", __assign({ href: href, style: baseStyles }, props, { children: children })));
92
+ }
93
+ return (_jsx("button", __assign({ style: baseStyles }, props, { children: children })));
94
+ };
95
+ //# sourceMappingURL=button.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button.js","sourceRoot":"","sources":["../../../src/components/email/button.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAWA,MAAM,CAAC,IAAM,WAAW,GAA+B,UAAC,EAQvD;IAPC,IAAA,eAAmB,EAAnB,OAAO,mBAAG,SAAS,KAAA,EACnB,YAAW,EAAX,IAAI,mBAAG,IAAI,KAAA,EACX,QAAQ,cAAA,EACR,IAAI,UAAA,EACJ,KAAK,WAAA,EACL,iBAAiB,EAAjB,SAAS,mBAAG,KAAK,KAAA,EACd,KAAK,cAP8C,6DAQvD,CADS;IAER,gDAAgD;IAChD,IAAM,gBAAgB,GAAG;QACvB,QAAQ,OAAO,EAAE,CAAC;YAChB,KAAK,SAAS;gBACZ,OAAO;oBACL,eAAe,EAAE,SAAS;oBAC1B,KAAK,EAAE,SAAS;oBAChB,MAAM,EAAE,mBAAmB;iBAC5B,CAAC;YACJ,KAAK,WAAW;gBACd,OAAO;oBACL,eAAe,EAAE,SAAS;oBAC1B,KAAK,EAAE,SAAS;oBAChB,MAAM,EAAE,mBAAmB;iBAC5B,CAAC;YACJ,KAAK,OAAO;gBACV,OAAO;oBACL,eAAe,EAAE,aAAa;oBAC9B,KAAK,EAAE,SAAS;oBAChB,MAAM,EAAE,uBAAuB;iBAChC,CAAC;YACJ,KAAK,SAAS;gBACZ,OAAO;oBACL,eAAe,EAAE,aAAa;oBAC9B,KAAK,EAAE,SAAS;oBAChB,MAAM,EAAE,mBAAmB;iBAC5B,CAAC;YACJ,KAAK,aAAa;gBAChB,OAAO;oBACL,eAAe,EAAE,SAAS;oBAC1B,KAAK,EAAE,SAAS;oBAChB,MAAM,EAAE,mBAAmB;iBAC5B,CAAC;YACJ;gBACE,OAAO;oBACL,eAAe,EAAE,SAAS;oBAC1B,KAAK,EAAE,SAAS;oBAChB,MAAM,EAAE,mBAAmB;iBAC5B,CAAC;QACN,CAAC;IACH,CAAC,CAAC;IAEF,IAAM,aAAa,GAAG;QACpB,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,IAAI;gBACP,OAAO;oBACL,OAAO,EAAE,UAAU;oBACnB,QAAQ,EAAE,MAAM;oBAChB,YAAY,EAAE,KAAK;iBACpB,CAAC;YACJ,KAAK,IAAI;gBACP,OAAO;oBACL,OAAO,EAAE,WAAW;oBACpB,QAAQ,EAAE,MAAM;oBAChB,YAAY,EAAE,KAAK;iBACpB,CAAC;YACJ;gBACE,OAAO;oBACL,OAAO,EAAE,UAAU;oBACnB,QAAQ,EAAE,MAAM;oBAChB,YAAY,EAAE,KAAK;iBACpB,CAAC;QACN,CAAC;IACH,CAAC,CAAC;IAEF,IAAM,UAAU,gCACd,OAAO,EAAE,cAAc,EACvB,cAAc,EAAE,MAAM,EACtB,SAAS,EAAE,QAAiB,EAC5B,UAAU,EAAE,KAAK,EACjB,MAAM,EAAE,SAAS,EACjB,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,IAC/B,gBAAgB,EAAE,GAClB,aAAa,EAAE,GACf,KAAK,CACT,CAAC;IAEF,IAAI,IAAI,EAAE,CAAC;QACT,OAAO,CACL,qBAAG,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,IAAM,KAAK,cACxC,QAAQ,IACP,CACL,CAAC;IACJ,CAAC;IAED,OAAO,CACL,0BAAQ,KAAK,EAAE,UAAU,IAAM,KAAK,cACjC,QAAQ,IACF,CACV,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ export { EmailButton } from './button';
2
+ export { EmailText, EmailHeading, EmailCaption, EmailMuted } from './typography';
3
+ export { EmailLayout, EmailContainer, EmailHeader, EmailFooter } from './layout';
4
+ export type { EmailButtonProps } from './button';
5
+ export type { EmailTextProps } from './typography';
6
+ export type { EmailLayoutProps, EmailContainerProps, EmailHeaderProps, EmailFooterProps } from './layout';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/email/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AACjF,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAGjF,YAAY,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACjD,YAAY,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACnD,YAAY,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC"}
@@ -0,0 +1,5 @@
1
+ // Email-compatible components
2
+ export { EmailButton } from './button';
3
+ export { EmailText, EmailHeading, EmailCaption, EmailMuted } from './typography';
4
+ export { EmailLayout, EmailContainer, EmailHeader, EmailFooter } from './layout';
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/email/index.ts"],"names":[],"mappings":"AAAA,8BAA8B;AAC9B,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AACjF,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC"}
@@ -0,0 +1,23 @@
1
+ import React from 'react';
2
+ export interface EmailLayoutProps {
3
+ children: React.ReactNode;
4
+ preheader?: string;
5
+ }
6
+ export declare const EmailLayout: React.FC<EmailLayoutProps>;
7
+ export interface EmailContainerProps {
8
+ children: React.ReactNode;
9
+ style?: React.CSSProperties;
10
+ }
11
+ export declare const EmailContainer: React.FC<EmailContainerProps>;
12
+ export interface EmailHeaderProps {
13
+ logoUrl?: string;
14
+ logoAlt?: string;
15
+ logoWidth?: string;
16
+ logoHeight?: string;
17
+ }
18
+ export declare const EmailHeader: React.FC<EmailHeaderProps>;
19
+ export interface EmailFooterProps {
20
+ children?: React.ReactNode;
21
+ }
22
+ export declare const EmailFooter: React.FC<EmailFooterProps>;
23
+ //# sourceMappingURL=layout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../../../src/components/email/layout.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA+BlD,CAAC;AAEF,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CAC7B;AAED,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAexD,CAAC;AAEF,MAAM,WAAW,gBAAgB;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAoClD,CAAC;AAEF,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA4DlD,CAAC"}
@@ -0,0 +1,99 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
13
+ export var EmailLayout = function (_a) {
14
+ var children = _a.children, preheader = _a.preheader;
15
+ return (_jsxs(_Fragment, { children: [preheader && (_jsx("div", { style: {
16
+ color: 'transparent',
17
+ display: 'none',
18
+ height: '0',
19
+ maxHeight: '0',
20
+ maxWidth: '0',
21
+ opacity: '0',
22
+ overflow: 'hidden',
23
+ visibility: 'hidden',
24
+ width: '0',
25
+ }, children: preheader })), _jsx("div", { style: {
26
+ backgroundColor: '#F4F4F5',
27
+ fontFamily: 'Helvetica-Neue, Helvetica, Arial, sans-serif',
28
+ fontSize: '16px',
29
+ lineHeight: '1.3',
30
+ margin: '0',
31
+ padding: '0',
32
+ }, children: children })] }));
33
+ };
34
+ export var EmailContainer = function (_a) {
35
+ var children = _a.children, style = _a.style;
36
+ return (_jsx("div", { style: __assign({ maxWidth: '600px', margin: '0 auto', padding: '24px', backgroundColor: '#ffffff', border: '1px solid #eaebed', borderRadius: '16px' }, style), children: children }));
37
+ };
38
+ export var EmailHeader = function (_a) {
39
+ var _b = _a.logoUrl, logoUrl = _b === void 0 ? "http://cdn.mcauto-images-production.sendgrid.net/a704493bc4576a45/e4e1b526-0ef3-4511-a7a8-bc94353e9b3b/201x67.png" : _b, _c = _a.logoAlt, logoAlt = _c === void 0 ? "Float" : _c, _d = _a.logoWidth, logoWidth = _d === void 0 ? "100px" : _d, _e = _a.logoHeight, logoHeight = _e === void 0 ? "auto" : _e;
40
+ return (_jsx("div", { style: {
41
+ width: '100px',
42
+ textAlign: 'center',
43
+ marginBottom: '24px',
44
+ }, children: _jsx("a", { href: "https://float.tech", style: {
45
+ color: '#4A49A6',
46
+ fontWeight: 'bold',
47
+ textDecoration: 'none'
48
+ }, children: _jsx("img", { src: logoUrl, alt: logoAlt, width: logoWidth, height: logoHeight, style: {
49
+ display: 'block',
50
+ margin: '0 auto',
51
+ border: '0',
52
+ outline: 'none',
53
+ textDecoration: 'none',
54
+ height: 'auto',
55
+ maxWidth: '200px',
56
+ width: '100%',
57
+ } }) }) }));
58
+ };
59
+ export var EmailFooter = function (_a) {
60
+ var children = _a.children;
61
+ return (_jsx("div", { style: {
62
+ clear: 'both',
63
+ paddingTop: '24px',
64
+ textAlign: 'center',
65
+ width: '100%',
66
+ }, children: children || (_jsxs(_Fragment, { children: [_jsxs("p", { style: {
67
+ color: '#9a9ea6',
68
+ fontFamily: 'Helvetica-Neue, Helvetica, Arial, sans-serif',
69
+ fontSize: '14px',
70
+ fontWeight: 'normal',
71
+ margin: '0',
72
+ marginBottom: '16px',
73
+ paddingBottom: '0px',
74
+ textAlign: 'center',
75
+ }, children: ["Float helps financial institutions interact seamlessly through shared digital workflows and standardized APIs across the transaction lifecycle.", ' ', _jsx("a", { href: "https://float.tech", style: {
76
+ color: '#4A49A6',
77
+ fontSize: '14px',
78
+ fontWeight: 'bold',
79
+ paddingBottom: '0px',
80
+ textAlign: 'center',
81
+ textDecoration: 'underline',
82
+ }, children: "Learn more" }), "."] }), _jsx("a", { href: "https://float.tech", style: {
83
+ color: '#4A49A6',
84
+ fontSize: '14px',
85
+ fontWeight: 'bold',
86
+ paddingBottom: '0px',
87
+ textAlign: 'center',
88
+ textDecoration: 'underline',
89
+ }, children: _jsx("img", { src: "http://cdn.mcauto-images-production.sendgrid.net/a704493bc4576a45/6a3db2b3-d35b-423f-8aac-830de81fb114/32x32.png", alt: "Float Logo", width: "32", height: "32", style: {
90
+ display: 'inline-block',
91
+ marginBottom: '16px',
92
+ } }) }), _jsxs("div", { style: {
93
+ color: '#9a9ea6',
94
+ fontFamily: 'Helvetica-Neue, Helvetica, Arial, sans-serif',
95
+ fontSize: '14px',
96
+ paddingBottom: '0px',
97
+ }, children: [_jsx("div", { children: "Float Technologies Inc." }), _jsx("div", { children: "SoHo, New York" })] })] })) }));
98
+ };
99
+ //# sourceMappingURL=layout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layout.js","sourceRoot":"","sources":["../../../src/components/email/layout.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import React from 'react';
2
+ export interface EmailTextProps {
3
+ children: React.ReactNode;
4
+ variant?: 'body' | 'heading' | 'caption' | 'lead' | 'muted';
5
+ style?: React.CSSProperties;
6
+ }
7
+ export declare const EmailText: React.FC<EmailTextProps>;
8
+ export declare const EmailHeading: React.FC<EmailTextProps>;
9
+ export declare const EmailCaption: React.FC<EmailTextProps>;
10
+ export declare const EmailMuted: React.FC<EmailTextProps>;
11
+ //# sourceMappingURL=typography.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typography.d.ts","sourceRoot":"","sources":["../../../src/components/email/typography.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,CAAC;IAC5D,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CAC7B;AAED,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAmD9C,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAEjD,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAEjD,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAE/C,CAAC"}