@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
@@ -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"}
@@ -0,0 +1,60 @@
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 } from "react/jsx-runtime";
13
+ export var EmailText = function (_a) {
14
+ var children = _a.children, _b = _a.variant, variant = _b === void 0 ? 'body' : _b, style = _a.style;
15
+ var getVariantStyles = function () {
16
+ switch (variant) {
17
+ case 'heading':
18
+ return {
19
+ fontSize: '24px',
20
+ fontWeight: 'bold',
21
+ color: '#1A1A1E',
22
+ margin: '0 0 16px 0',
23
+ lineHeight: '1.2',
24
+ };
25
+ case 'lead':
26
+ return {
27
+ fontSize: '16px',
28
+ color: '#1A1A1E',
29
+ margin: '0 0 12px 0',
30
+ lineHeight: '1.5',
31
+ };
32
+ case 'caption':
33
+ return {
34
+ fontSize: '12px',
35
+ color: '#6B7280',
36
+ margin: '0 0 8px 0',
37
+ lineHeight: '1.4',
38
+ };
39
+ case 'muted':
40
+ return {
41
+ fontSize: '14px',
42
+ color: '#6B7280',
43
+ margin: '0 0 12px 0',
44
+ lineHeight: '1.5',
45
+ };
46
+ default:
47
+ return {
48
+ fontSize: '14px',
49
+ color: '#1A1A1E',
50
+ margin: '0 0 12px 0',
51
+ lineHeight: '1.5',
52
+ };
53
+ }
54
+ };
55
+ return (_jsx("div", { style: __assign(__assign({}, getVariantStyles()), style), children: children }));
56
+ };
57
+ export var EmailHeading = function (props) { return (_jsx(EmailText, __assign({ variant: "heading" }, props))); };
58
+ export var EmailCaption = function (props) { return (_jsx(EmailText, __assign({ variant: "caption" }, props))); };
59
+ export var EmailMuted = function (props) { return (_jsx(EmailText, __assign({ variant: "muted" }, props))); };
60
+ //# sourceMappingURL=typography.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typography.js","sourceRoot":"","sources":["../../src/components/email/typography.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAQA,MAAM,CAAC,IAAM,SAAS,GAA6B,UAAC,EAInD;QAHC,QAAQ,cAAA,EACR,eAAgB,EAAhB,OAAO,mBAAG,MAAM,KAAA,EAChB,KAAK,WAAA;IAEL,IAAM,gBAAgB,GAAG;QACvB,QAAQ,OAAO,EAAE,CAAC;YAChB,KAAK,SAAS;gBACZ,OAAO;oBACL,QAAQ,EAAE,MAAM;oBAChB,UAAU,EAAE,MAAM;oBAClB,KAAK,EAAE,SAAS;oBAChB,MAAM,EAAE,YAAY;oBACpB,UAAU,EAAE,KAAK;iBAClB,CAAC;YACJ,KAAK,MAAM;gBACT,OAAO;oBACL,QAAQ,EAAE,MAAM;oBAChB,KAAK,EAAE,SAAS;oBAChB,MAAM,EAAE,YAAY;oBACpB,UAAU,EAAE,KAAK;iBAClB,CAAC;YACJ,KAAK,SAAS;gBACZ,OAAO;oBACL,QAAQ,EAAE,MAAM;oBAChB,KAAK,EAAE,SAAS;oBAChB,MAAM,EAAE,WAAW;oBACnB,UAAU,EAAE,KAAK;iBAClB,CAAC;YACJ,KAAK,OAAO;gBACV,OAAO;oBACL,QAAQ,EAAE,MAAM;oBAChB,KAAK,EAAE,SAAS;oBAChB,MAAM,EAAE,YAAY;oBACpB,UAAU,EAAE,KAAK;iBAClB,CAAC;YACJ;gBACE,OAAO;oBACL,QAAQ,EAAE,MAAM;oBAChB,KAAK,EAAE,SAAS;oBAChB,MAAM,EAAE,YAAY;oBACpB,UAAU,EAAE,KAAK;iBAClB,CAAC;QACN,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,CACL,cAAK,KAAK,wBAAO,gBAAgB,EAAE,GAAK,KAAK,aAC1C,QAAQ,GACL,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,YAAY,GAA6B,UAAC,KAAK,IAAK,OAAA,CAC/D,KAAC,SAAS,aAAC,OAAO,EAAC,SAAS,IAAK,KAAK,EAAI,CAC3C,EAFgE,CAEhE,CAAC;AAEF,MAAM,CAAC,IAAM,YAAY,GAA6B,UAAC,KAAK,IAAK,OAAA,CAC/D,KAAC,SAAS,aAAC,OAAO,EAAC,SAAS,IAAK,KAAK,EAAI,CAC3C,EAFgE,CAEhE,CAAC;AAEF,MAAM,CAAC,IAAM,UAAU,GAA6B,UAAC,KAAK,IAAK,OAAA,CAC7D,KAAC,SAAS,aAAC,OAAO,EAAC,OAAO,IAAK,KAAK,EAAI,CACzC,EAF8D,CAE9D,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function useMediaQuery(query: string): boolean;
2
+ //# sourceMappingURL=use-media-query.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-media-query.d.ts","sourceRoot":"","sources":["../../src/hooks/use-media-query.ts"],"names":[],"mappings":"AAEA,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAoBpD"}
@@ -0,0 +1,17 @@
1
+ import { useEffect, useState } from "react";
2
+ export function useMediaQuery(query) {
3
+ var _a = useState(false), matches = _a[0], setMatches = _a[1];
4
+ useEffect(function () {
5
+ var media = window.matchMedia(query);
6
+ // Set initial value
7
+ setMatches(media.matches);
8
+ // Create event listener
9
+ var listener = function (e) { return setMatches(e.matches); };
10
+ // Add listener
11
+ media.addEventListener("change", listener);
12
+ // Clean up
13
+ return function () { return media.removeEventListener("change", listener); };
14
+ }, [query]);
15
+ return matches;
16
+ }
17
+ //# sourceMappingURL=use-media-query.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-media-query.js","sourceRoot":"","sources":["../../src/hooks/use-media-query.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAE5C,MAAM,UAAU,aAAa,CAAC,KAAa;IACnC,IAAA,KAAwB,QAAQ,CAAC,KAAK,CAAC,EAAtC,OAAO,QAAA,EAAE,UAAU,QAAmB,CAAC;IAE9C,SAAS,CAAC;QACR,IAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QAEvC,oBAAoB;QACpB,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAE1B,wBAAwB;QACxB,IAAM,QAAQ,GAAG,UAAC,CAAsB,IAAK,OAAA,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,EAArB,CAAqB,CAAC;QAEnE,eAAe;QACf,KAAK,CAAC,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAE3C,WAAW;QACX,OAAO,cAAM,OAAA,KAAK,CAAC,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAA7C,CAA6C,CAAC;IAC7D,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEZ,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -0,0 +1,6 @@
1
+ export * from './components/ui';
2
+ export * from './components/email';
3
+ export * from './components/typography';
4
+ export * from './lib/utils';
5
+ export * from './tokens';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,7 @@
1
+ // Main design system exports
2
+ export * from './components/ui';
3
+ export * from './components/email';
4
+ export * from './components/typography';
5
+ export * from './lib/utils';
6
+ export * from './tokens';
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC"}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * Utility functions for theme handling
3
+ */
4
+ /**
5
+ * Supported color theme values
6
+ */
7
+ export type ThemeColor = 'brand' | 'error' | 'warning' | 'success';
8
+ /**
9
+ * Supported component variant types
10
+ */
11
+ export type ComponentVariant = 'primary' | 'secondary' | 'tertiary';
12
+ /**
13
+ * Map design system colors to shadcn variants
14
+ *
15
+ * @param color - The design system color
16
+ * @returns The corresponding shadcn variant
17
+ */
18
+ export declare const mapColorToShadcnVariant: (color: ThemeColor) => "secondary" | "default" | "destructive";
19
+ /**
20
+ * Map design system variants to shadcn variants
21
+ *
22
+ * @param variant - The design system variant
23
+ * @returns The corresponding shadcn variant
24
+ */
25
+ export declare const mapVariantToShadcnVariant: (variant: ComponentVariant) => "default" | "outline" | "ghost";
26
+ /**
27
+ * Generate Tailwind classes for color/variant combinations
28
+ *
29
+ * @param color - The design system color
30
+ * @param variant - The design system variant
31
+ * @returns String of Tailwind classes
32
+ */
33
+ export declare const getColorVariantClasses: (color: ThemeColor, variant: ComponentVariant) => string;
34
+ /**
35
+ * Determine if the current theme is dark
36
+ *
37
+ * @param theme - The current theme
38
+ * @param systemTheme - The system theme
39
+ * @returns True if the theme is dark
40
+ */
41
+ export declare const isDarkTheme: (theme: string | undefined, systemTheme: string | undefined) => boolean;
42
+ //# sourceMappingURL=theme-utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme-utils.d.ts","sourceRoot":"","sources":["../../src/lib/theme-utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,CAAC;AAEnE;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,WAAW,GAAG,UAAU,CAAC;AAEpE;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,GAAI,OAAO,UAAU,4CASxD,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,yBAAyB,GAAI,SAAS,gBAAgB,oCAOlE,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,sBAAsB,GACjC,OAAO,UAAU,EACjB,SAAS,gBAAgB,KACxB,MAuBF,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,WAAW,GAAI,OAAO,MAAM,GAAG,SAAS,EAAE,aAAa,MAAM,GAAG,SAAS,KAAG,OAKxF,CAAC"}
@@ -0,0 +1,78 @@
1
+ /**
2
+ * Utility functions for theme handling
3
+ */
4
+ /**
5
+ * Map design system colors to shadcn variants
6
+ *
7
+ * @param color - The design system color
8
+ * @returns The corresponding shadcn variant
9
+ */
10
+ export var mapColorToShadcnVariant = function (color) {
11
+ switch (color) {
12
+ case 'brand': return 'default';
13
+ case 'error': return 'destructive';
14
+ case 'warning':
15
+ case 'success':
16
+ return 'secondary'; // Will need additional classes
17
+ default: return 'default';
18
+ }
19
+ };
20
+ /**
21
+ * Map design system variants to shadcn variants
22
+ *
23
+ * @param variant - The design system variant
24
+ * @returns The corresponding shadcn variant
25
+ */
26
+ export var mapVariantToShadcnVariant = function (variant) {
27
+ switch (variant) {
28
+ case 'primary': return 'default';
29
+ case 'secondary': return 'outline';
30
+ case 'tertiary': return 'ghost';
31
+ default: return 'default';
32
+ }
33
+ };
34
+ /**
35
+ * Generate Tailwind classes for color/variant combinations
36
+ *
37
+ * @param color - The design system color
38
+ * @param variant - The design system variant
39
+ * @returns String of Tailwind classes
40
+ */
41
+ export var getColorVariantClasses = function (color, variant) {
42
+ var _a;
43
+ var colorVariantMap = {
44
+ primary: {
45
+ brand: 'bg-brand-600 hover:bg-brand-700 text-white focus-visible:ring-brand-500',
46
+ error: 'bg-error-600 hover:bg-error-700 text-white focus-visible:ring-error-500',
47
+ warning: 'bg-warning-600 hover:bg-warning-700 text-white focus-visible:ring-warning-500',
48
+ success: 'bg-success-600 hover:bg-success-700 text-white focus-visible:ring-success-500',
49
+ },
50
+ secondary: {
51
+ brand: 'border-brand-300 text-brand-700 hover:bg-brand-50 focus-visible:ring-brand-500',
52
+ error: 'border-error-300 text-error-700 hover:bg-error-50 focus-visible:ring-error-500',
53
+ warning: 'border-warning-300 text-warning-700 hover:bg-warning-50 focus-visible:ring-warning-500',
54
+ success: 'border-success-300 text-success-700 hover:bg-success-50 focus-visible:ring-success-500',
55
+ },
56
+ tertiary: {
57
+ brand: 'text-brand-700 hover:bg-brand-50 focus-visible:ring-brand-500',
58
+ error: 'text-error-700 hover:bg-error-50 focus-visible:ring-error-500',
59
+ warning: 'text-warning-700 hover:bg-warning-50 focus-visible:ring-warning-500',
60
+ success: 'text-success-700 hover:bg-success-50 focus-visible:ring-success-500',
61
+ }
62
+ };
63
+ return ((_a = colorVariantMap[variant]) === null || _a === void 0 ? void 0 : _a[color]) || '';
64
+ };
65
+ /**
66
+ * Determine if the current theme is dark
67
+ *
68
+ * @param theme - The current theme
69
+ * @param systemTheme - The system theme
70
+ * @returns True if the theme is dark
71
+ */
72
+ export var isDarkTheme = function (theme, systemTheme) {
73
+ if (theme === 'system') {
74
+ return systemTheme === 'dark';
75
+ }
76
+ return theme === 'dark';
77
+ };
78
+ //# sourceMappingURL=theme-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme-utils.js","sourceRoot":"","sources":["../../src/lib/theme-utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAYH;;;;;GAKG;AACH,MAAM,CAAC,IAAM,uBAAuB,GAAG,UAAC,KAAiB;IACvD,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,OAAO,CAAC,CAAC,OAAO,SAAS,CAAC;QAC/B,KAAK,OAAO,CAAC,CAAC,OAAO,aAAa,CAAC;QACnC,KAAK,SAAS,CAAC;QACf,KAAK,SAAS;YACZ,OAAO,WAAW,CAAC,CAAC,+BAA+B;QACrD,OAAO,CAAC,CAAC,OAAO,SAAS,CAAC;IAC5B,CAAC;AACH,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,IAAM,yBAAyB,GAAG,UAAC,OAAyB;IACjE,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,SAAS,CAAC,CAAC,OAAO,SAAS,CAAC;QACjC,KAAK,WAAW,CAAC,CAAC,OAAO,SAAS,CAAC;QACnC,KAAK,UAAU,CAAC,CAAC,OAAO,OAAO,CAAC;QAChC,OAAO,CAAC,CAAC,OAAO,SAAS,CAAC;IAC5B,CAAC;AACH,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,IAAM,sBAAsB,GAAG,UACpC,KAAiB,EACjB,OAAyB;;IAEzB,IAAM,eAAe,GAAyD;QAC5E,OAAO,EAAE;YACP,KAAK,EAAE,yEAAyE;YAChF,KAAK,EAAE,yEAAyE;YAChF,OAAO,EAAE,+EAA+E;YACxF,OAAO,EAAE,+EAA+E;SACzF;QACD,SAAS,EAAE;YACT,KAAK,EAAE,gFAAgF;YACvF,KAAK,EAAE,gFAAgF;YACvF,OAAO,EAAE,wFAAwF;YACjG,OAAO,EAAE,wFAAwF;SAClG;QACD,QAAQ,EAAE;YACR,KAAK,EAAE,+DAA+D;YACtE,KAAK,EAAE,+DAA+D;YACtE,OAAO,EAAE,qEAAqE;YAC9E,OAAO,EAAE,qEAAqE;SAC/E;KACF,CAAC;IAEF,OAAO,CAAA,MAAA,eAAe,CAAC,OAAO,CAAC,0CAAG,KAAK,CAAC,KAAI,EAAE,CAAC;AACjD,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,IAAM,WAAW,GAAG,UAAC,KAAyB,EAAE,WAA+B;IACpF,IAAI,KAAK,KAAK,QAAQ,EAAE,CAAC;QACvB,OAAO,WAAW,KAAK,MAAM,CAAC;IAChC,CAAC;IACD,OAAO,KAAK,KAAK,MAAM,CAAC;AAC1B,CAAC,CAAC"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Generic types to support polymorphic components
3
+ */
4
+ export type AsProp<C extends React.ElementType> = {
5
+ /**
6
+ * An override of the default HTML tag.
7
+ * @default based on component default
8
+ */
9
+ as?: C;
10
+ };
11
+ export type PropsToOmit<C extends React.ElementType, P> = keyof (AsProp<C> & P);
12
+ export type PolymorphicComponentProps<C extends React.ElementType, Props = {}> = React.PropsWithChildren<Props & AsProp<C>> & Omit<React.ComponentPropsWithoutRef<C>, PropsToOmit<C, Props>>;
13
+ export type PolymorphicComponentPropsWithRef<C extends React.ElementType, Props = {}> = PolymorphicComponentProps<C, Props> & {
14
+ ref?: PolymorphicRef<C>;
15
+ };
16
+ export type PolymorphicRef<C extends React.ElementType> = React.ComponentPropsWithRef<C>["ref"];
17
+ export type PolymorphicComponentWithRef<Props, DefaultElementType extends React.ElementType> = <C extends React.ElementType = DefaultElementType>(props: PolymorphicComponentPropsWithRef<C, Props>) => React.ReactElement | null;
18
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/lib/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,MAAM,MAAM,MAAM,CAAC,CAAC,SAAS,KAAK,CAAC,WAAW,IAAI;IAC9C;;;OAGG;IACH,EAAE,CAAC,EAAE,CAAC,CAAC;CACR,CAAC;AAGF,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,KAAK,CAAC,WAAW,EAAE,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AAGhF,MAAM,MAAM,yBAAyB,CACnC,CAAC,SAAS,KAAK,CAAC,WAAW,EAC3B,KAAK,GAAG,EAAE,IACR,KAAK,CAAC,iBAAiB,CAAC,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,GAC5C,IAAI,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;AAGjE,MAAM,MAAM,gCAAgC,CAC1C,CAAC,SAAS,KAAK,CAAC,WAAW,EAC3B,KAAK,GAAG,EAAE,IACR,yBAAyB,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG;IAAE,GAAG,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,CAAA;CAAE,CAAC;AAGtE,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,KAAK,CAAC,WAAW,IACpD,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AAGxC,MAAM,MAAM,2BAA2B,CACrC,KAAK,EACL,kBAAkB,SAAS,KAAK,CAAC,WAAW,IAC1C,CAAC,CAAC,SAAS,KAAK,CAAC,WAAW,GAAG,kBAAkB,EACnD,KAAK,EAAE,gCAAgC,CAAC,CAAC,EAAE,KAAK,CAAC,KAC9C,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generic types to support polymorphic components
3
+ */
4
+ export {};
5
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/lib/types.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -0,0 +1,34 @@
1
+ import { type ClassValue } from 'clsx';
2
+ /**
3
+ * Combines multiple class values into a single className string
4
+ * with proper Tailwind CSS class merging.
5
+ *
6
+ * @param inputs - Class values to merge
7
+ * @returns Merged className string
8
+ */
9
+ export declare function cn(...inputs: ClassValue[]): string;
10
+ /**
11
+ * Utility function to generate a unique ID.
12
+ * Useful for ensuring unique IDs for form elements.
13
+ *
14
+ * @param prefix - Optional prefix for the ID
15
+ * @returns A unique ID string
16
+ */
17
+ export declare function generateId(prefix?: string): string;
18
+ /**
19
+ * Type guard to check if a value is not null or undefined
20
+ *
21
+ * @param value - Value to check
22
+ * @returns True if value is not null or undefined
23
+ */
24
+ export declare function isNotNullOrUndefined<T>(value: T | null | undefined): value is T;
25
+ /**
26
+ * Returns only the props that are safe to spread onto a DOM element
27
+ * by filtering out custom props
28
+ *
29
+ * @param props - The props object
30
+ * @param propNames - Names of custom props to filter out
31
+ * @returns Object with only DOM-safe props
32
+ */
33
+ export declare function filterDOMProps<T extends Record<string, any>, K extends keyof T>(props: T, propNames: K[]): Omit<T, K>;
34
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,UAAU,EAAE,MAAM,MAAM,CAAC;AAG7C;;;;;;GAMG;AACH,wBAAgB,EAAE,CAAC,GAAG,MAAM,EAAE,UAAU,EAAE,UAEzC;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,MAAM,SAAO,GAAG,MAAM,CAGhD;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,GAAG,SAAS,GAAG,KAAK,IAAI,CAAC,CAE/E;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,EAC7E,KAAK,EAAE,CAAC,EACR,SAAS,EAAE,CAAC,EAAE,GACb,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAIZ"}