athameui 0.0.12 → 0.0.13

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.
@@ -1,178 +1,203 @@
1
- export const tokens = {
2
- font: {
3
- family: {
4
- sans: "Montserrat, sans-serif",
5
- serif: "Libre Baskerville, serif"
6
- },
7
- size: {
8
- xs: "0.75rem",
9
- sm: "0.875rem",
10
- md: "1rem",
11
- lg: "1.25rem",
12
- xl: "1.5rem",
13
- "2xl": "2rem",
14
- "3xl": "2.5rem",
15
- "4xl": "3rem",
16
- "5xl": "3.5rem"
17
- }
1
+ export const breakpoints = {
2
+ xs: 320,
3
+ sm: 480,
4
+ md: 620,
5
+ lg: 768,
6
+ xl: 896,
7
+ "2xl": 1024,
8
+ "3xl": 1280,
9
+ "4xl": 1536,
10
+ } as const;
11
+
12
+ export type Breakpoints = typeof breakpoints;
13
+ export type Breakpoint = keyof typeof breakpoints;
14
+
15
+ const minWidth = (width: number) => `@media (min-width: ${width}px)`;
16
+ const maxWidth = (width: number) => `@media (max-width: ${width - 1}px)`;
17
+
18
+ export const media = {
19
+ min: {
20
+ xs: minWidth(breakpoints.xs),
21
+ sm: minWidth(breakpoints.sm),
22
+ md: minWidth(breakpoints.md),
23
+ lg: minWidth(breakpoints.lg),
24
+ xl: minWidth(breakpoints.xl),
25
+ "2xl": minWidth(breakpoints["2xl"]),
26
+ "3xl": minWidth(breakpoints["3xl"]),
27
+ "4xl": minWidth(breakpoints["4xl"]),
18
28
  },
19
- color: {
20
- primary: {
21
- "50": "#f0f2f5",
22
- "100": "#d9dee6",
23
- "200": "#b8c3d1",
24
- "300": "#8a9bae",
25
- "400": "#4a5f7a",
26
- "500": "#0b1828",
27
- "600": "#081320",
28
- "700": "#060e18",
29
- "800": "#04090f",
30
- "900": "#020407",
31
- "default": "#0b1828",
32
- vibrant: {
33
- "300": "#8ab6ff",
34
- "500": "#4f86f7",
35
- "700": "#1e3a8a"
36
- }
37
- },
38
- secondary: {
39
- "50": "#e6f7f6",
40
- "100": "#b3e8e5",
41
- "200": "#80d9d4",
42
- "300": "#4dcac3",
43
- "400": "#2aa39b",
44
- "500": "#146b68",
45
- "600": "#125a57",
46
- "700": "#0f4a47",
47
- "800": "#0c3835",
48
- "900": "#081f1c",
49
- "default": "#146b68",
50
- vibrant: {
51
- "300": "#75dac7",
52
- "500": "#1abc9c",
53
- "700": "#138f6e"
54
- }
55
- },
56
- tertiary: {
57
- "50": "#f7f4f0",
58
- "100": "#eedecc",
59
- "200": "#e5c8a8",
60
- "300": "#dcb184",
61
- "400": "#d19b60",
62
- "500": "#bfa081",
63
- "600": "#a68965",
64
- "700": "#7d6748",
65
- "800": "#54442c",
66
- "900": "#2b2216",
67
- "default": "#bfa081",
68
- vibrant: {
69
- "300": "#f7c873",
70
- "500": "#f39c12",
71
- "700": "#c9780e"
72
- }
29
+ max: {
30
+ xs: maxWidth(breakpoints.xs),
31
+ sm: maxWidth(breakpoints.sm),
32
+ md: maxWidth(breakpoints.md),
33
+ lg: maxWidth(breakpoints.lg),
34
+ xl: maxWidth(breakpoints.xl),
35
+ "2xl": maxWidth(breakpoints["2xl"]),
36
+ "3xl": maxWidth(breakpoints["3xl"]),
37
+ "4xl": maxWidth(breakpoints["4xl"]),
38
+ },
39
+ } as const;
40
+
41
+ export const font = {
42
+ family: {
43
+ sans: "Montserrat, sans-serif",
44
+ serif: "Libre Baskerville, serif",
45
+ },
46
+ size: {
47
+ xs: "0.75rem",
48
+ sm: "0.875rem",
49
+ md: "1rem",
50
+ lg: "1.25rem",
51
+ xl: "1.5rem",
52
+ "2xl": "2rem",
53
+ "3xl": "2.5rem",
54
+ "4xl": "3rem",
55
+ "5xl": "3.5rem",
56
+ },
57
+ };
58
+
59
+ export const color = {
60
+ primary: {
61
+ "50": "#f0f2f5",
62
+ "100": "#d9dee6",
63
+ "200": "#b8c3d1",
64
+ "300": "#8a9bae",
65
+ "400": "#4a5f7a",
66
+ "500": "#0b1828",
67
+ "600": "#081320",
68
+ "700": "#060e18",
69
+ "800": "#04090f",
70
+ "900": "#020407",
71
+ default: "#0b1828",
72
+ vibrant: {
73
+ "300": "#8ab6ff",
74
+ "500": "#4f86f7",
75
+ "700": "#1e3a8a",
73
76
  },
74
- error: {
75
- "50": "#fee6e6",
76
- "100": "#fbb3b3",
77
- "200": "#f88080",
78
- "300": "#f54d4d",
79
- "400": "#f21a1a",
80
- "500": "#9f0001",
81
- "600": "#800001",
82
- "700": "#600001",
83
- "800": "#400000",
84
- "900": "#200000",
85
- "default": "#9f0001",
86
- vibrant: {
87
- "300": "#f48a6f",
88
- "500": "#e74c3c",
89
- "700": "#c0392b"
90
- }
77
+ },
78
+ secondary: {
79
+ "50": "#e6f7f6",
80
+ "100": "#b3e8e5",
81
+ "200": "#80d9d4",
82
+ "300": "#4dcac3",
83
+ "400": "#2aa39b",
84
+ "500": "#146b68",
85
+ "600": "#125a57",
86
+ "700": "#0f4a47",
87
+ "800": "#0c3835",
88
+ "900": "#081f1c",
89
+ default: "#146b68",
90
+ vibrant: {
91
+ "300": "#75dac7",
92
+ "500": "#1abc9c",
93
+ "700": "#138f6e",
91
94
  },
92
- warning: {
93
- "50": "#fef5ec",
94
- "100": "#fdebda",
95
- "200": "#fad8b3",
96
- "300": "#f8c48c",
97
- "400": "#f5b065",
95
+ },
96
+ tertiary: {
97
+ "50": "#f7f4f0",
98
+ "100": "#eedecc",
99
+ "200": "#e5c8a8",
100
+ "300": "#dcb184",
101
+ "400": "#d19b60",
102
+ "500": "#bfa081",
103
+ "600": "#a68965",
104
+ "700": "#7d6748",
105
+ "800": "#54442c",
106
+ "900": "#2b2216",
107
+ default: "#bfa081",
108
+ vibrant: {
109
+ "300": "#f7c873",
98
110
  "500": "#f39c12",
99
- "600": "#c27d0e",
100
- "700": "#925e0b",
101
- "800": "#613e07",
102
- "900": "#311f04",
103
- "default": "#f39c12",
104
- vibrant: {
105
- "300": "#fce705",
106
- "500": "#fbc306",
107
- "700": "#f8950a"
108
- }
111
+ "700": "#c9780e",
109
112
  },
110
- success: {
111
- "50": "#e8f5f2",
112
- "100": "#d1ece4",
113
- "200": "#a3d8ca",
114
- "300": "#76c5af",
115
- "400": "#48b195",
116
- "500": "#1a9e7a",
117
- "600": "#157e62",
118
- "700": "#105f49",
119
- "800": "#0a3f31",
120
- "900": "#052018",
121
- "default": "#1a9e7a",
122
- vibrant: {
123
- "300": "#07e71f",
124
- "500": "#08e27e",
125
- "700": "#26b656"
126
- }
113
+ },
114
+ error: {
115
+ "50": "#fee6e6",
116
+ "100": "#fbb3b3",
117
+ "200": "#f88080",
118
+ "300": "#f54d4d",
119
+ "400": "#f21a1a",
120
+ "500": "#9f0001",
121
+ "600": "#800001",
122
+ "700": "#600001",
123
+ "800": "#400000",
124
+ "900": "#200000",
125
+ default: "#9f0001",
126
+ vibrant: {
127
+ "300": "#f48a6f",
128
+ "500": "#e74c3c",
129
+ "700": "#c0392b",
127
130
  },
128
- text: {
129
- dark: "#040a0c",
130
- light: "#fcfbf7"
131
+ },
132
+ warning: {
133
+ "50": "#fef5ec",
134
+ "100": "#fdebda",
135
+ "200": "#fad8b3",
136
+ "300": "#f8c48c",
137
+ "400": "#f5b065",
138
+ "500": "#f39c12",
139
+ "600": "#c27d0e",
140
+ "700": "#925e0b",
141
+ "800": "#613e07",
142
+ "900": "#311f04",
143
+ default: "#f39c12",
144
+ vibrant: {
145
+ "300": "#fce705",
146
+ "500": "#fbc306",
147
+ "700": "#f8950a",
131
148
  },
132
- background: {
133
- light: "#fcfbf7",
134
- dark: "#040a0c"
135
- }
136
149
  },
137
- padding: {
138
- xs: "2px",
139
- sm: "4px",
140
- md: "6px",
141
- lg: "10px",
142
- xl: "16px"
150
+ success: {
151
+ "50": "#e8f5f2",
152
+ "100": "#d1ece4",
153
+ "200": "#a3d8ca",
154
+ "300": "#76c5af",
155
+ "400": "#48b195",
156
+ "500": "#1a9e7a",
157
+ "600": "#157e62",
158
+ "700": "#105f49",
159
+ "800": "#0a3f31",
160
+ "900": "#052018",
161
+ default: "#1a9e7a",
162
+ vibrant: {
163
+ "300": "#07e71f",
164
+ "500": "#08e27e",
165
+ "700": "#26b656",
166
+ },
143
167
  },
144
- radius: {
145
- sm: "3px",
146
- md: "5px",
147
- lg: "8px"
168
+ text: {
169
+ dark: "#040a0c",
170
+ light: "#fcfbf7",
171
+ },
172
+ background: {
173
+ light: "#fcfbf7",
174
+ dark: "#040a0c",
148
175
  },
149
- media: {
150
- min: {
151
- xs: "@media (min-width: 320px)",
152
- sm: "@media (min-width: 480px)",
153
- md: "@media (min-width: 620px)",
154
- lg: "@media (min-width: 768px)",
155
- xl: "@media (min-width: 896px)",
156
- "2xl": "@media (min-width: 1024px)",
157
- "3xl": "@media (min-width: 1280px)"
158
- },
159
- max: {
160
- xs: "@media (max-width: 319px)",
161
- sm: "@media (max-width: 479px)",
162
- md: "@media (max-width: 767px)",
163
- lg: "@media (max-width: 895px)",
164
- xl: "@media (max-width: 1023px)",
165
- "2xl": "@media (max-width: 1279px)",
166
- "3xl": "@media (max-width: 1535px)"
167
- }
168
- }
176
+ };
177
+ export const padding = {
178
+ xs: "2px",
179
+ sm: "4px",
180
+ md: "6px",
181
+ lg: "10px",
182
+ xl: "16px",
183
+ };
184
+ export const radius = {
185
+ sm: "3px",
186
+ md: "5px",
187
+ lg: "8px",
169
188
  };
170
189
 
171
- export type Tokens = typeof tokens;
172
-
190
+ export type FontTokens = typeof font;
191
+ export type ColorTokens = typeof color;
192
+ export type PaddingTokens = typeof padding;
193
+ export type RadiusTokens = typeof radius;
194
+ export type MediaTokens = typeof media;
195
+ export type ScreenTokens = typeof breakpoints;
173
196
 
174
- export type FontTokens = typeof tokens.font;
175
- export type ColorTokens = typeof tokens.color;
176
- export type PaddingTokens = typeof tokens.padding;
177
- export type RadiusTokens = typeof tokens.radius;
178
- export type MediaTokens = typeof tokens.media;
197
+ export const tokens = {
198
+ font,
199
+ color,
200
+ media,
201
+ padding,
202
+ radius,
203
+ };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "athameui",
3
3
  "private": false,
4
- "version": "0.0.12",
4
+ "version": "0.0.13",
5
5
  "type": "module",
6
6
  "main": "./dist/athameui.cjs",
7
7
  "module": "./dist/athameui.mjs",
@@ -3,16 +3,20 @@
3
3
  @layer components {
4
4
  .ath-carousel-wrapper {
5
5
  position: relative;
6
+ overflow: hidden;
7
+ }
8
+ .ath-carousel-label {
9
+ margin-top: 1rem;
6
10
  }
7
11
  .ath-carousel {
8
- display: flex;
9
- width: 100%;
10
- min-width: 0;
11
- max-width: 100%;
12
+ display: grid;
12
13
  border: 5px solid var(--color-secondary-800);
13
14
  border-radius: 10px;
14
15
  padding: 10px;
15
16
  overflow-x: auto;
17
+ grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
18
+ grid-auto-flow: column;
19
+ grid-auto-columns: 200px;
16
20
  gap: 10px;
17
21
  scrollbar-width: none;
18
22
  &::-webkit-scrollbar {
@@ -58,6 +58,7 @@
58
58
  .ath-form-textarea {
59
59
  margin-top: 3px;
60
60
  font-size: inherit;
61
+ font-family: inherit;
61
62
  line-height: 1.5;
62
63
  padding: 0.75rem;
63
64
  border: 1px solid var(--color-tertiary-500);
@@ -76,7 +77,7 @@
76
77
  border-color: var(--color-primary-vibrant-500);
77
78
  }
78
79
  .ath-form-textarea::placeholder {
79
- color: var(--color-tertiary-400);
80
+ color: var(--color-primary-300);
80
81
  }
81
82
  .ath-form-textarea-auto-resize {
82
83
  resize: none;
@@ -17,9 +17,24 @@
17
17
  display: flex;
18
18
  flex-direction: column;
19
19
  gap: 15px;
20
- width: 100%;
21
20
  margin-inline: auto;
22
- max-width: 1200px;
23
21
  padding: 0 15px;
22
+ width: 100%;
23
+ /* Default to `medium` if no width is provided */
24
+ &.full {
25
+ margin-inline: auto;
26
+ }
27
+ &.wide {
28
+ max-width: 1200px;
29
+ margin-inline: auto;
30
+ }
31
+ &.medium {
32
+ max-width: 768px;
33
+ margin-inline: auto;
34
+ }
35
+ &.narrow {
36
+ max-width: 480px;
37
+ margin-inline: auto;
38
+ }
24
39
  }
25
40
  }
package/styles/index.ts CHANGED
@@ -1,2 +1 @@
1
- export * from "./breakpoints";
2
1
  export * from "./tokens";
package/styles/tokens.css CHANGED
@@ -1,4 +1,4 @@
1
- /* CSS Custom Properties for Styling-Agnostic Design Tokens */
1
+ /* Generated from styles/tokens.ts. Edit that file, then run pnpm generate-tokens. */
2
2
  :root {
3
3
  --font-family-sans: "Montserrat", sans-serif;
4
4
  --font-family-serif: "Libre Baskerville", serif;
@@ -12,8 +12,8 @@
12
12
  --color-text-dark: #040a0c;
13
13
  --color-text-light: #fcfbf7;
14
14
 
15
- --color-background-light: var(--color-text-light);
16
- --color-background-dark: var(--color-text-dark);
15
+ --color-background-light: #fcfbf7;
16
+ --color-background-dark: #040a0c;
17
17
 
18
18
  /* ----- Primary ----- */
19
19
  --color-primary-50: #f0f2f5;
@@ -21,7 +21,7 @@
21
21
  --color-primary-200: #b8c3d1;
22
22
  --color-primary-300: #8a9bae;
23
23
  --color-primary-400: #4a5f7a;
24
- --color-primary-500: #0b1828; /* Base Primary */
24
+ --color-primary-500: #0b1828;
25
25
  --color-primary-600: #081320;
26
26
  --color-primary-700: #060e18;
27
27
  --color-primary-800: #04090f;
@@ -32,13 +32,12 @@
32
32
  --color-primary-vibrant-700: #1e3a8a;
33
33
 
34
34
  /* ----- Secondary ----- */
35
-
36
35
  --color-secondary-50: #e6f7f6;
37
36
  --color-secondary-100: #b3e8e5;
38
37
  --color-secondary-200: #80d9d4;
39
38
  --color-secondary-300: #4dcac3;
40
39
  --color-secondary-400: #2aa39b;
41
- --color-secondary-500: #146b68; /* Base Secondary */
40
+ --color-secondary-500: #146b68;
42
41
  --color-secondary-600: #125a57;
43
42
  --color-secondary-700: #0f4a47;
44
43
  --color-secondary-800: #0c3835;
@@ -54,7 +53,7 @@
54
53
  --color-tertiary-200: #e5c8a8;
55
54
  --color-tertiary-300: #dcb184;
56
55
  --color-tertiary-400: #d19b60;
57
- --color-tertiary-500: #bfa081; /* Base Tertiary */
56
+ --color-tertiary-500: #bfa081;
58
57
  --color-tertiary-600: #a68965;
59
58
  --color-tertiary-700: #7d6748;
60
59
  --color-tertiary-800: #54442c;
@@ -70,7 +69,7 @@
70
69
  --color-error-200: #f88080;
71
70
  --color-error-300: #f54d4d;
72
71
  --color-error-400: #f21a1a;
73
- --color-error-500: #9f0001; /* original color */
72
+ --color-error-500: #9f0001;
74
73
  --color-error-600: #800001;
75
74
  --color-error-700: #600001;
76
75
  --color-error-800: #400000;
@@ -86,7 +85,7 @@
86
85
  --color-warning-200: #fad8b3;
87
86
  --color-warning-300: #f8c48c;
88
87
  --color-warning-400: #f5b065;
89
- --color-warning-500: #f39c12; /* original color */
88
+ --color-warning-500: #f39c12;
90
89
  --color-warning-600: #c27d0e;
91
90
  --color-warning-700: #925e0b;
92
91
  --color-warning-800: #613e07;
@@ -102,7 +101,7 @@
102
101
  --color-success-200: #a3d8ca;
103
102
  --color-success-300: #76c5af;
104
103
  --color-success-400: #48b195;
105
- --color-success-500: #1a9e7a; /* original color */
104
+ --color-success-500: #1a9e7a;
106
105
  --color-success-600: #157e62;
107
106
  --color-success-700: #105f49;
108
107
  --color-success-800: #0a3f31;
@@ -120,7 +119,6 @@
120
119
  --padding-xl: 16px;
121
120
 
122
121
  /* ----- Radius ----- */
123
-
124
122
  --radius-sm: 3px;
125
123
  --radius-md: 5px;
126
124
  --radius-lg: 8px;
@@ -146,7 +144,6 @@
146
144
  --screen-4xl: 1536;
147
145
 
148
146
  /* ----- Media Queries ----- */
149
- /* Only useful for CSS-in-JS media query handling */
150
147
  --media-min-xs: @media (min-width: 320px);
151
148
  --media-min-sm: @media (min-width: 480px);
152
149
  --media-min-md: @media (min-width: 620px);
@@ -154,14 +151,16 @@
154
151
  --media-min-xl: @media (min-width: 896px);
155
152
  --media-min-2xl: @media (min-width: 1024px);
156
153
  --media-min-3xl: @media (min-width: 1280px);
154
+ --media-min-4xl: @media (min-width: 1536px);
157
155
 
158
156
  --media-max-xs: @media (max-width: 319px);
159
157
  --media-max-sm: @media (max-width: 479px);
160
- --media-max-md: @media (max-width: 767px);
161
- --media-max-lg: @media (max-width: 895px);
162
- --media-max-xl: @media (max-width: 1023px);
163
- --media-max-2xl: @media (max-width: 1279px);
164
- --media-max-3xl: @media (max-width: 1535px);
158
+ --media-max-md: @media (max-width: 619px);
159
+ --media-max-lg: @media (max-width: 767px);
160
+ --media-max-xl: @media (max-width: 895px);
161
+ --media-max-2xl: @media (max-width: 1023px);
162
+ --media-max-3xl: @media (max-width: 1279px);
163
+ --media-max-4xl: @media (max-width: 1535px);
165
164
  }
166
165
 
167
166
  @layer base {