@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.
- package/README.md +153 -0
- package/dist/components/SidebarNav.d.ts +13 -0
- package/dist/components/SidebarNav.d.ts.map +1 -0
- package/dist/components/SidebarNav.js +63 -0
- package/dist/components/SidebarNav.js.map +1 -0
- package/dist/components/SidebarNavClient.d.ts +2 -0
- package/dist/components/SidebarNavClient.d.ts.map +1 -0
- package/dist/components/SidebarNavClient.js +35 -0
- package/dist/components/SidebarNavClient.js.map +1 -0
- package/dist/components/email/button.d.ts +11 -0
- package/dist/components/email/button.d.ts.map +1 -0
- package/dist/components/email/button.js +95 -0
- package/dist/components/email/button.js.map +1 -0
- package/dist/components/email/index.d.ts +7 -0
- package/dist/components/email/index.d.ts.map +1 -0
- package/dist/components/email/index.js +5 -0
- package/dist/components/email/index.js.map +1 -0
- package/dist/components/email/layout.d.ts +23 -0
- package/dist/components/email/layout.d.ts.map +1 -0
- package/dist/components/email/layout.js +99 -0
- package/dist/components/email/layout.js.map +1 -0
- package/dist/components/email/typography.d.ts +11 -0
- package/dist/components/email/typography.d.ts.map +1 -0
- package/dist/components/email/typography.js +60 -0
- package/dist/components/email/typography.js.map +1 -0
- package/dist/components/hooks/use-mobile.d.ts +2 -0
- package/dist/components/hooks/use-mobile.d.ts.map +1 -0
- package/dist/components/hooks/use-mobile.js +7 -0
- package/dist/components/hooks/use-mobile.js.map +1 -0
- package/dist/components/typography/heading/heading.d.ts +48 -0
- package/dist/components/typography/heading/heading.d.ts.map +1 -0
- package/dist/components/typography/heading/heading.js +80 -0
- package/dist/components/typography/heading/heading.js.map +1 -0
- package/dist/components/typography/heading/heading.stories.d.ts +12 -0
- package/dist/components/typography/heading/heading.stories.d.ts.map +1 -0
- package/dist/components/typography/heading/heading.stories.js +74 -0
- package/dist/components/typography/heading/heading.stories.js.map +1 -0
- package/dist/components/typography/heading/index.d.ts +2 -0
- package/dist/components/typography/heading/index.d.ts.map +1 -0
- package/dist/components/typography/heading/index.js +2 -0
- package/dist/components/typography/heading/index.js.map +1 -0
- package/dist/components/typography/index.d.ts +5 -0
- package/dist/components/typography/index.d.ts.map +1 -0
- package/dist/components/typography/index.js +8 -0
- package/dist/components/typography/index.js.map +1 -0
- package/dist/components/typography/showcase.d.ts +7 -0
- package/dist/components/typography/showcase.d.ts.map +1 -0
- package/dist/components/typography/showcase.js +11 -0
- package/dist/components/typography/showcase.js.map +1 -0
- package/dist/components/typography/text/index.d.ts +2 -0
- package/dist/components/typography/text/index.d.ts.map +1 -0
- package/dist/components/typography/text/index.js +2 -0
- package/dist/components/typography/text/index.js.map +1 -0
- package/dist/components/typography/text/text.d.ts +43 -0
- package/dist/components/typography/text/text.d.ts.map +1 -0
- package/dist/components/typography/text/text.js +61 -0
- package/dist/components/typography/text/text.js.map +1 -0
- package/dist/components/typography/text/text.stories.d.ts +13 -0
- package/dist/components/typography/text/text.stories.d.ts.map +1 -0
- package/dist/components/typography/text/text.stories.js +72 -0
- package/dist/components/typography/text/text.stories.js.map +1 -0
- package/dist/components/ui/accordion.d.ts +8 -0
- package/dist/components/ui/accordion.d.ts.map +1 -0
- package/dist/components/ui/accordion.js +45 -0
- package/dist/components/ui/accordion.js.map +1 -0
- package/dist/components/ui/alert.d.ts +9 -0
- package/dist/components/ui/alert.d.ts.map +1 -0
- package/dist/components/ui/alert.js +57 -0
- package/dist/components/ui/alert.js.map +1 -0
- package/dist/components/ui/aspect-ratio.d.ts +5 -0
- package/dist/components/ui/aspect-ratio.d.ts.map +1 -0
- package/dist/components/ui/aspect-ratio.js +4 -0
- package/dist/components/ui/aspect-ratio.js.map +1 -0
- package/dist/components/ui/avatar.d.ts +7 -0
- package/dist/components/ui/avatar.d.ts.map +1 -0
- package/dist/components/ui/avatar.js +43 -0
- package/dist/components/ui/avatar.js.map +1 -0
- package/dist/components/ui/badge.d.ts +15 -0
- package/dist/components/ui/badge.d.ts.map +1 -0
- package/dist/components/ui/badge.js +68 -0
- package/dist/components/ui/badge.js.map +1 -0
- package/dist/components/ui/breadcrumb.d.ts +11 -0
- package/dist/components/ui/breadcrumb.d.ts.map +1 -0
- package/dist/components/ui/breadcrumb.js +60 -0
- package/dist/components/ui/breadcrumb.js.map +1 -0
- package/dist/components/ui/button.d.ts +41 -0
- package/dist/components/ui/button.d.ts.map +1 -0
- package/dist/components/ui/button.js +95 -0
- package/dist/components/ui/button.js.map +1 -0
- package/dist/components/ui/calendar.d.ts +9 -0
- package/dist/components/ui/calendar.d.ts.map +1 -0
- package/dist/components/ui/calendar.js +46 -0
- package/dist/components/ui/calendar.js.map +1 -0
- package/dist/components/ui/card/card.d.ts +35 -0
- package/dist/components/ui/card/card.d.ts.map +1 -0
- package/dist/components/ui/card/card.js +64 -0
- package/dist/components/ui/card/card.js.map +1 -0
- package/dist/components/ui/card/index.d.ts +2 -0
- package/dist/components/ui/card/index.d.ts.map +1 -0
- package/dist/components/ui/card/index.js +2 -0
- package/dist/components/ui/card/index.js.map +1 -0
- package/dist/components/ui/card.d.ts +12 -0
- package/dist/components/ui/card.d.ts.map +1 -0
- package/dist/components/ui/card.js +62 -0
- package/dist/components/ui/card.js.map +1 -0
- package/dist/components/ui/checkbox.d.ts +5 -0
- package/dist/components/ui/checkbox.d.ts.map +1 -0
- package/dist/components/ui/checkbox.js +34 -0
- package/dist/components/ui/checkbox.js.map +1 -0
- package/dist/components/ui/collapsible.d.ts +7 -0
- package/dist/components/ui/collapsible.d.ts.map +1 -0
- package/dist/components/ui/collapsible.js +6 -0
- package/dist/components/ui/collapsible.js.map +1 -0
- package/dist/components/ui/command.d.ts +83 -0
- package/dist/components/ui/command.d.ts.map +1 -0
- package/dist/components/ui/command.js +71 -0
- package/dist/components/ui/command.js.map +1 -0
- package/dist/components/ui/context-menu.d.ts +31 -0
- package/dist/components/ui/context-menu.d.ts.map +1 -0
- package/dist/components/ui/context-menu.js +87 -0
- package/dist/components/ui/context-menu.js.map +1 -0
- package/dist/components/ui/dialog.d.ts +20 -0
- package/dist/components/ui/dialog.d.ts.map +1 -0
- package/dist/components/ui/dialog.js +63 -0
- package/dist/components/ui/dialog.js.map +1 -0
- package/dist/components/ui/dropdown-menu/dropdown-menu.d.ts +32 -0
- package/dist/components/ui/dropdown-menu/dropdown-menu.d.ts.map +1 -0
- package/dist/components/ui/dropdown-menu/dropdown-menu.js +118 -0
- package/dist/components/ui/dropdown-menu/dropdown-menu.js.map +1 -0
- package/dist/components/ui/dropdown-menu/index.d.ts +2 -0
- package/dist/components/ui/dropdown-menu/index.d.ts.map +1 -0
- package/dist/components/ui/dropdown-menu/index.js +2 -0
- package/dist/components/ui/dropdown-menu/index.js.map +1 -0
- package/dist/components/ui/header.d.ts +3 -0
- package/dist/components/ui/header.d.ts.map +1 -0
- package/dist/components/ui/header.js +11 -0
- package/dist/components/ui/header.js.map +1 -0
- package/dist/components/ui/hover-card.d.ts +7 -0
- package/dist/components/ui/hover-card.d.ts.map +1 -0
- package/dist/components/ui/hover-card.js +35 -0
- package/dist/components/ui/hover-card.js.map +1 -0
- package/dist/components/ui/index.d.ts +15 -0
- package/dist/components/ui/index.d.ts.map +1 -0
- package/dist/components/ui/index.js +27 -0
- package/dist/components/ui/index.js.map +1 -0
- package/dist/components/ui/input.d.ts +6 -0
- package/dist/components/ui/input.d.ts.map +1 -0
- package/dist/components/ui/input.js +32 -0
- package/dist/components/ui/input.js.map +1 -0
- package/dist/components/ui/label.d.ts +6 -0
- package/dist/components/ui/label.d.ts.map +1 -0
- package/dist/components/ui/label.js +35 -0
- package/dist/components/ui/label.js.map +1 -0
- package/dist/components/ui/nav.d.ts +9 -0
- package/dist/components/ui/nav.d.ts.map +1 -0
- package/dist/components/ui/nav.js +42 -0
- package/dist/components/ui/nav.js.map +1 -0
- package/dist/components/ui/org-switcher.d.ts +13 -0
- package/dist/components/ui/org-switcher.d.ts.map +1 -0
- package/dist/components/ui/org-switcher.js +17 -0
- package/dist/components/ui/org-switcher.js.map +1 -0
- package/dist/components/ui/popover.d.ts +8 -0
- package/dist/components/ui/popover.d.ts.map +1 -0
- package/dist/components/ui/popover.js +36 -0
- package/dist/components/ui/popover.js.map +1 -0
- package/dist/components/ui/progress.d.ts +5 -0
- package/dist/components/ui/progress.d.ts.map +1 -0
- package/dist/components/ui/progress.js +33 -0
- package/dist/components/ui/progress.js.map +1 -0
- package/dist/components/ui/radio-group.d.ts +6 -0
- package/dist/components/ui/radio-group.d.ts.map +1 -0
- package/dist/components/ui/radio-group.js +39 -0
- package/dist/components/ui/radio-group.js.map +1 -0
- package/dist/components/ui/select.d.ts +14 -0
- package/dist/components/ui/select.d.ts.map +1 -0
- package/dist/components/ui/select.js +70 -0
- package/dist/components/ui/select.js.map +1 -0
- package/dist/components/ui/separator.d.ts +5 -0
- package/dist/components/ui/separator.d.ts.map +1 -0
- package/dist/components/ui/separator.js +33 -0
- package/dist/components/ui/separator.js.map +1 -0
- package/dist/components/ui/sheet.d.ts +22 -0
- package/dist/components/ui/sheet.d.ts.map +1 -0
- package/dist/components/ui/sheet.js +69 -0
- package/dist/components/ui/sheet.js.map +1 -0
- package/dist/components/ui/sidebar.d.ts +65 -0
- package/dist/components/ui/sidebar.d.ts.map +1 -0
- package/dist/components/ui/sidebar.js +263 -0
- package/dist/components/ui/sidebar.js.map +1 -0
- package/dist/components/ui/skeleton.d.ts +3 -0
- package/dist/components/ui/skeleton.d.ts.map +1 -0
- package/dist/components/ui/skeleton.js +30 -0
- package/dist/components/ui/skeleton.js.map +1 -0
- package/dist/components/ui/slider.d.ts +5 -0
- package/dist/components/ui/slider.d.ts.map +1 -0
- package/dist/components/ui/slider.js +33 -0
- package/dist/components/ui/slider.js.map +1 -0
- package/dist/components/ui/switch.d.ts +5 -0
- package/dist/components/ui/switch.d.ts.map +1 -0
- package/dist/components/ui/switch.js +33 -0
- package/dist/components/ui/switch.js.map +1 -0
- package/dist/components/ui/tabs.d.ts +8 -0
- package/dist/components/ui/tabs.d.ts.map +1 -0
- package/dist/components/ui/tabs.js +44 -0
- package/dist/components/ui/tabs.js.map +1 -0
- package/dist/components/ui/textarea.d.ts +6 -0
- package/dist/components/ui/textarea.d.ts.map +1 -0
- package/dist/components/ui/textarea.js +32 -0
- package/dist/components/ui/textarea.js.map +1 -0
- package/dist/components/ui/theme-toggle/index.d.ts +2 -0
- package/dist/components/ui/theme-toggle/index.d.ts.map +1 -0
- package/dist/components/ui/theme-toggle/index.js +2 -0
- package/dist/components/ui/theme-toggle/index.js.map +1 -0
- package/dist/components/ui/theme-toggle/theme-toggle.d.ts +21 -0
- package/dist/components/ui/theme-toggle/theme-toggle.d.ts.map +1 -0
- package/dist/components/ui/theme-toggle/theme-toggle.js +72 -0
- package/dist/components/ui/theme-toggle/theme-toggle.js.map +1 -0
- package/dist/components/ui/toast.d.ts +5 -0
- package/dist/components/ui/toast.d.ts.map +1 -0
- package/dist/components/ui/toast.js +38 -0
- package/dist/components/ui/toast.js.map +1 -0
- package/dist/components/ui/toggle-group.d.ts +6 -0
- package/dist/components/ui/toggle-group.d.ts.map +1 -0
- package/dist/components/ui/toggle-group.js +38 -0
- package/dist/components/ui/toggle-group.js.map +1 -0
- package/dist/components/ui/toggle.d.ts +5 -0
- package/dist/components/ui/toggle.d.ts.map +1 -0
- package/dist/components/ui/toggle.js +33 -0
- package/dist/components/ui/toggle.js.map +1 -0
- package/dist/components/ui/tooltip.d.ts +8 -0
- package/dist/components/ui/tooltip.d.ts.map +1 -0
- package/dist/components/ui/tooltip.js +36 -0
- package/dist/components/ui/tooltip.js.map +1 -0
- package/dist/components/ui/use-toast.d.ts +3 -0
- package/dist/components/ui/use-toast.d.ts.map +1 -0
- package/dist/components/ui/use-toast.js +4 -0
- package/dist/components/ui/use-toast.js.map +1 -0
- package/dist/email/button.d.ts +11 -0
- package/dist/email/button.d.ts.map +1 -0
- package/dist/email/button.js +95 -0
- package/dist/email/button.js.map +1 -0
- package/dist/email/index.d.ts +7 -0
- package/dist/email/index.d.ts.map +1 -0
- package/dist/email/index.js +5 -0
- package/dist/email/index.js.map +1 -0
- package/dist/email/layout.d.ts +23 -0
- package/dist/email/layout.d.ts.map +1 -0
- package/dist/email/layout.js +99 -0
- package/dist/email/layout.js.map +1 -0
- package/dist/email/typography.d.ts +11 -0
- package/dist/email/typography.d.ts.map +1 -0
- package/dist/email/typography.js +60 -0
- package/dist/email/typography.js.map +1 -0
- package/dist/hooks/use-media-query.d.ts +2 -0
- package/dist/hooks/use-media-query.d.ts.map +1 -0
- package/dist/hooks/use-media-query.js +17 -0
- package/dist/hooks/use-media-query.js.map +1 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +7 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/theme-utils.d.ts +42 -0
- package/dist/lib/theme-utils.d.ts.map +1 -0
- package/dist/lib/theme-utils.js +78 -0
- package/dist/lib/theme-utils.js.map +1 -0
- package/dist/lib/types.d.ts +18 -0
- package/dist/lib/types.d.ts.map +1 -0
- package/dist/lib/types.js +5 -0
- package/dist/lib/types.js.map +1 -0
- package/dist/lib/utils.d.ts +34 -0
- package/dist/lib/utils.d.ts.map +1 -0
- package/dist/lib/utils.js +62 -0
- package/dist/lib/utils.js.map +1 -0
- package/dist/styles/constants/button-colors.d.ts +59 -0
- package/dist/styles/constants/button-colors.d.ts.map +1 -0
- package/dist/styles/constants/button-colors.js +58 -0
- package/dist/styles/constants/button-colors.js.map +1 -0
- package/dist/themes/catalog.d.ts +2 -0
- package/dist/themes/catalog.d.ts.map +1 -0
- package/dist/themes/catalog.js +16 -0
- package/dist/themes/catalog.js.map +1 -0
- package/dist/themes/index.d.ts +1 -0
- package/dist/themes/index.d.ts.map +1 -0
- package/dist/themes/index.js +2 -0
- package/dist/themes/index.js.map +1 -0
- package/dist/themes/theme-context.d.ts +30 -0
- package/dist/themes/theme-context.d.ts.map +1 -0
- package/dist/themes/theme-context.js +40 -0
- package/dist/themes/theme-context.js.map +1 -0
- package/dist/themes/theme-provider.d.ts +9 -0
- package/dist/themes/theme-provider.d.ts.map +1 -0
- package/dist/themes/theme-provider.js +36 -0
- package/dist/themes/theme-provider.js.map +1 -0
- package/dist/tokens/colors.d.ts +135 -0
- package/dist/tokens/colors.d.ts.map +1 -0
- package/dist/tokens/colors.js +137 -0
- package/dist/tokens/colors.js.map +1 -0
- package/dist/tokens/index.d.ts +256 -0
- package/dist/tokens/index.d.ts.map +1 -0
- package/dist/tokens/index.js +22 -0
- package/dist/tokens/index.js.map +1 -0
- package/dist/tokens/radius.d.ts +19 -0
- package/dist/tokens/radius.d.ts.map +1 -0
- package/dist/tokens/radius.js +24 -0
- package/dist/tokens/radius.js.map +1 -0
- package/dist/tokens/shadows.d.ts +21 -0
- package/dist/tokens/shadows.d.ts.map +1 -0
- package/dist/tokens/shadows.js +23 -0
- package/dist/tokens/shadows.js.map +1 -0
- package/dist/tokens/spacing.d.ts +26 -0
- package/dist/tokens/spacing.d.ts.map +1 -0
- package/dist/tokens/spacing.js +33 -0
- package/dist/tokens/spacing.js.map +1 -0
- package/dist/tokens/typography.d.ts +75 -0
- package/dist/tokens/typography.d.ts.map +1 -0
- package/dist/tokens/typography.js +52 -0
- package/dist/tokens/typography.js.map +1 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -0
- 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 @@
|
|
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"}
|