tyrell-components 1.0.0-TC8 → 1.0.0-TC9
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/css/tyrell.css +1 -1
- package/dist/tyrell.css +1 -1
- package/dist/tyrell.js +1 -1
- package/lib/base/ty-component.js +1 -1
- package/lib/base/ty-component.js.map +1 -1
- package/lib/components/button.d.ts +9 -0
- package/lib/components/button.d.ts.map +1 -1
- package/lib/components/button.js +34 -1
- package/lib/components/button.js.map +1 -1
- package/lib/components/dropdown.d.ts +23 -21
- package/lib/components/dropdown.d.ts.map +1 -1
- package/lib/components/dropdown.js +88 -89
- package/lib/components/dropdown.js.map +1 -1
- package/lib/components/file-upload.d.ts +121 -0
- package/lib/components/file-upload.d.ts.map +1 -0
- package/lib/components/file-upload.js +441 -0
- package/lib/components/file-upload.js.map +1 -0
- package/lib/components/multiselect.d.ts +15 -4
- package/lib/components/multiselect.d.ts.map +1 -1
- package/lib/components/multiselect.js +52 -21
- package/lib/components/multiselect.js.map +1 -1
- package/lib/components/switch.js +6 -6
- package/lib/components/switch.js.map +1 -1
- package/lib/components/tag.d.ts +4 -4
- package/lib/components/tag.d.ts.map +1 -1
- package/lib/components/tag.js +64 -62
- package/lib/components/tag.js.map +1 -1
- package/lib/index.d.ts +8 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +3 -0
- package/lib/index.js.map +1 -1
- package/lib/styles/button.d.ts +1 -1
- package/lib/styles/button.d.ts.map +1 -1
- package/lib/styles/button.js +41 -0
- package/lib/styles/button.js.map +1 -1
- package/lib/styles/calendar-month.d.ts +1 -1
- package/lib/styles/calendar-month.d.ts.map +1 -1
- package/lib/styles/calendar-month.js +70 -24
- package/lib/styles/calendar-month.js.map +1 -1
- package/lib/styles/calendar-navigation.d.ts +1 -1
- package/lib/styles/calendar-navigation.d.ts.map +1 -1
- package/lib/styles/calendar-navigation.js +24 -6
- package/lib/styles/calendar-navigation.js.map +1 -1
- package/lib/styles/date-picker.d.ts +1 -1
- package/lib/styles/date-picker.d.ts.map +1 -1
- package/lib/styles/date-picker.js +56 -21
- package/lib/styles/date-picker.js.map +1 -1
- package/lib/styles/dropdown.d.ts +1 -1
- package/lib/styles/dropdown.d.ts.map +1 -1
- package/lib/styles/dropdown.js +65 -0
- package/lib/styles/dropdown.js.map +1 -1
- package/lib/styles/file-upload.d.ts +2 -0
- package/lib/styles/file-upload.d.ts.map +1 -0
- package/lib/styles/file-upload.js +241 -0
- package/lib/styles/file-upload.js.map +1 -0
- package/lib/styles/multiselect.d.ts +1 -1
- package/lib/styles/multiselect.d.ts.map +1 -1
- package/lib/styles/multiselect.js +63 -0
- package/lib/styles/multiselect.js.map +1 -1
- package/lib/styles/tag.d.ts +1 -1
- package/lib/styles/tag.d.ts.map +1 -1
- package/lib/styles/tag.js +13 -8
- package/lib/styles/tag.js.map +1 -1
- package/lib/utils/loader-registry.d.ts +35 -0
- package/lib/utils/loader-registry.d.ts.map +1 -0
- package/lib/utils/loader-registry.js +43 -0
- package/lib/utils/loader-registry.js.map +1 -0
- package/lib/utils/property-manager.d.ts +1 -1
- package/lib/utils/property-manager.js +1 -1
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/package.json +5 -1
|
@@ -3,6 +3,50 @@
|
|
|
3
3
|
* Improved design with better visual hierarchy and size variants
|
|
4
4
|
*/
|
|
5
5
|
export const calendarMonthStyles = `
|
|
6
|
+
/* ============================================================================
|
|
7
|
+
Theming Tokens
|
|
8
|
+
Override these to retheme the calendar without touching the global palette.
|
|
9
|
+
Defaults chain back to the global --ty-color-* / --ty-bg-* / --ty-border tokens.
|
|
10
|
+
============================================================================ */
|
|
11
|
+
|
|
12
|
+
:host {
|
|
13
|
+
/* Accent aliases — override these three for thin retheming */
|
|
14
|
+
--ty-calendar-accent: var(--ty-color-primary);
|
|
15
|
+
--ty-calendar-today-accent: var(--ty-color-secondary);
|
|
16
|
+
--ty-calendar-muted: var(--ty-color-neutral);
|
|
17
|
+
|
|
18
|
+
/* Header (weekday names) */
|
|
19
|
+
--ty-calendar-header-color: var(--ty-color-neutral-strong);
|
|
20
|
+
|
|
21
|
+
/* Day cell — base */
|
|
22
|
+
--ty-calendar-day-color: var(--ty-calendar-muted);
|
|
23
|
+
--ty-calendar-day-bg: transparent;
|
|
24
|
+
--ty-calendar-day-border: var(--ty-border);
|
|
25
|
+
--ty-calendar-day-radius: 0.375rem;
|
|
26
|
+
|
|
27
|
+
/* Day cell — hover */
|
|
28
|
+
--ty-calendar-day-hover-color: var(--ty-color-neutral-strong);
|
|
29
|
+
--ty-calendar-day-hover-bg: var(--ty-bg-neutral-soft);
|
|
30
|
+
--ty-calendar-day-hover-border: var(--ty-border-mild);
|
|
31
|
+
|
|
32
|
+
/* Today */
|
|
33
|
+
--ty-calendar-today-color: var(--ty-color-secondary-strong);
|
|
34
|
+
--ty-calendar-today-bg: var(--ty-bg-secondary-soft);
|
|
35
|
+
--ty-calendar-today-border: var(--ty-calendar-today-accent);
|
|
36
|
+
|
|
37
|
+
/* Selected */
|
|
38
|
+
--ty-calendar-selected-color: var(--ty-color-primary-strong);
|
|
39
|
+
--ty-calendar-selected-bg: var(--ty-bg-primary);
|
|
40
|
+
--ty-calendar-selected-border: var(--ty-calendar-accent);
|
|
41
|
+
--ty-calendar-selected-hover-bg: var(--ty-bg-primary-mild);
|
|
42
|
+
--ty-calendar-selected-hover-border: var(--ty-color-primary-mild);
|
|
43
|
+
|
|
44
|
+
/* Modifier states */
|
|
45
|
+
--ty-calendar-weekend-color: var(--ty-color-danger-soft);
|
|
46
|
+
--ty-calendar-other-month-color: var(--ty-color-neutral-faint);
|
|
47
|
+
--ty-calendar-other-month-opacity: 0.5;
|
|
48
|
+
}
|
|
49
|
+
|
|
6
50
|
/* ============================================================================
|
|
7
51
|
Base Calendar Container
|
|
8
52
|
============================================================================ */
|
|
@@ -33,7 +77,7 @@ export const calendarMonthStyles = `
|
|
|
33
77
|
|
|
34
78
|
.calendar-header-row {
|
|
35
79
|
flex: 0 0 auto;
|
|
36
|
-
color: var(--ty-
|
|
80
|
+
color: var(--ty-calendar-header-color);
|
|
37
81
|
}
|
|
38
82
|
|
|
39
83
|
.calendar-day-row {
|
|
@@ -75,32 +119,33 @@ export const calendarMonthStyles = `
|
|
|
75
119
|
.calendar-day-cell {
|
|
76
120
|
/* Square cells */
|
|
77
121
|
aspect-ratio: 1;
|
|
78
|
-
|
|
122
|
+
|
|
79
123
|
/* Layout */
|
|
80
124
|
display: flex;
|
|
81
125
|
align-items: center;
|
|
82
126
|
justify-content: center;
|
|
83
127
|
flex-direction: column;
|
|
84
|
-
|
|
128
|
+
|
|
85
129
|
/* Spacing */
|
|
86
130
|
margin: 0.125rem;
|
|
87
|
-
|
|
131
|
+
|
|
88
132
|
/* Visual */
|
|
89
|
-
border-radius:
|
|
90
|
-
border: 1px solid var(--ty-border);
|
|
91
|
-
color: var(--ty-
|
|
133
|
+
border-radius: var(--ty-calendar-day-radius);
|
|
134
|
+
border: 1px solid var(--ty-calendar-day-border);
|
|
135
|
+
background-color: var(--ty-calendar-day-bg);
|
|
136
|
+
color: var(--ty-calendar-day-color);
|
|
92
137
|
cursor: pointer;
|
|
93
138
|
transition: all 0.15s ease;
|
|
94
|
-
|
|
139
|
+
|
|
95
140
|
/* Typography */
|
|
96
141
|
font-weight: 400;
|
|
97
142
|
}
|
|
98
143
|
|
|
99
144
|
/* Hover State - Stronger Feedback */
|
|
100
145
|
.calendar-day-cell:hover {
|
|
101
|
-
color: var(--ty-
|
|
102
|
-
background-color: var(--ty-
|
|
103
|
-
border-color: var(--ty-border
|
|
146
|
+
color: var(--ty-calendar-day-hover-color);
|
|
147
|
+
background-color: var(--ty-calendar-day-hover-bg);
|
|
148
|
+
border-color: var(--ty-calendar-day-hover-border);
|
|
104
149
|
}
|
|
105
150
|
|
|
106
151
|
/* ============================================================================
|
|
@@ -109,39 +154,40 @@ export const calendarMonthStyles = `
|
|
|
109
154
|
|
|
110
155
|
/* Today - Strong Visual Indicator */
|
|
111
156
|
.calendar-day-cell.today {
|
|
112
|
-
background-color: var(--ty-
|
|
113
|
-
color: var(--ty-
|
|
114
|
-
border-color: var(--ty-
|
|
157
|
+
background-color: var(--ty-calendar-today-bg);
|
|
158
|
+
color: var(--ty-calendar-today-color);
|
|
159
|
+
border-color: var(--ty-calendar-today-border);
|
|
115
160
|
font-weight: 600;
|
|
116
161
|
}
|
|
117
162
|
|
|
118
163
|
/* Weekend - Subtle Color Shift */
|
|
119
164
|
.calendar-day-cell.weekend {
|
|
120
|
-
color: var(--ty-
|
|
165
|
+
color: var(--ty-calendar-weekend-color);
|
|
121
166
|
}
|
|
122
167
|
|
|
123
168
|
/* Other Month - Muted */
|
|
124
169
|
.calendar-day-cell.other-month {
|
|
125
|
-
color: var(--ty-
|
|
126
|
-
opacity:
|
|
170
|
+
color: var(--ty-calendar-other-month-color);
|
|
171
|
+
opacity: var(--ty-calendar-other-month-opacity);
|
|
127
172
|
}
|
|
128
173
|
|
|
129
|
-
.calendar-day-cell.other-month:hover {
|
|
130
|
-
|
|
174
|
+
.calendar-day-cell.other-month:hover {
|
|
175
|
+
color: var(--ty-calendar-day-hover-color);
|
|
176
|
+
background-color: var(--ty-calendar-day-hover-bg);
|
|
131
177
|
opacity: 0.7;
|
|
132
178
|
}
|
|
133
179
|
|
|
134
180
|
/* Selected State (for custom usage) */
|
|
135
181
|
.calendar-day-cell.selected {
|
|
136
|
-
background-color: var(--ty-bg
|
|
137
|
-
color: var(--ty-
|
|
138
|
-
border-color: var(--ty-
|
|
182
|
+
background-color: var(--ty-calendar-selected-bg);
|
|
183
|
+
color: var(--ty-calendar-selected-color);
|
|
184
|
+
border-color: var(--ty-calendar-selected-border);
|
|
139
185
|
font-weight: 600;
|
|
140
186
|
}
|
|
141
187
|
|
|
142
188
|
.calendar-day-cell.selected:hover {
|
|
143
|
-
background-color: var(--ty-
|
|
144
|
-
border-color: var(--ty-
|
|
189
|
+
background-color: var(--ty-calendar-selected-hover-bg);
|
|
190
|
+
border-color: var(--ty-calendar-selected-hover-border);
|
|
145
191
|
}
|
|
146
192
|
|
|
147
193
|
.calendar-day-cell.selected.other-month {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"calendar-month.js","sourceRoot":"","sources":["../../src/styles/calendar-month.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG
|
|
1
|
+
{"version":3,"file":"calendar-month.js","sourceRoot":"","sources":["../../src/styles/calendar-month.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6QlC,CAAC"}
|
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
* Calendar Navigation Styles
|
|
3
3
|
* Clean, modern design with proper visual hierarchy and size variants
|
|
4
4
|
*/
|
|
5
|
-
export declare const calendarNavigationStyles = "\n/* ============================================================================\n Size Variants (CSS Custom Properties)\n ============================================================================ */\n\n:host {\n /* Default (md) */\n --nav-btn-size: 2rem;\n --nav-btn-icon-size: 1.25rem;\n --nav-font-size: 1rem;\n --nav-padding: 0.5rem 0.75rem;\n --nav-default-width: 280px;\n}\n\n:host([data-size=\"sm\"]) {\n --nav-btn-size: 1.5rem;\n --nav-btn-icon-size: 1rem;\n --nav-font-size: 0.875rem;\n --nav-padding: 0.375rem 0.5rem;\n --nav-default-width: 240px;\n}\n\n:host([data-size=\"lg\"]) {\n --nav-btn-size: 2.5rem;\n --nav-btn-icon-size: 1.5rem;\n --nav-font-size: 1.125rem;\n --nav-padding: 0.625rem 1rem;\n --nav-default-width: 360px;\n}\n\n/* ============================================================================\n Main Navigation Header\n ============================================================================ */\n\n.calendar-navigation-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: var(--nav-padding);\n font-family: system-ui, sans-serif;\n user-select: none;\n width: var(--nav-width, var(--nav-default-width));\n box-sizing: border-box;\n}\n\n/* ============================================================================\n Navigation Groups (Left, Center, Right)\n ============================================================================ */\n\n.nav-group {\n display: flex;\n align-items: center;\n gap: 0.25rem;\n}\n\n.nav-group-left,\n.nav-group-right {\n flex: 0 0 auto;\n}\n\n.nav-group-center {\n flex: 1;\n justify-content: center;\n}\n\n/* ============================================================================\n Navigation Buttons\n ============================================================================ */\n\n.nav-btn {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--nav-btn-size);\n height: var(--nav-btn-size);\n padding: 0;\n border: none;\n border-radius: 0.375rem;\n background-color: transparent;\n color: var(--ty-color
|
|
5
|
+
export declare const calendarNavigationStyles = "\n/* ============================================================================\n Size Variants (CSS Custom Properties)\n ============================================================================ */\n\n:host {\n /* Default (md) */\n --nav-btn-size: 2rem;\n --nav-btn-icon-size: 1.25rem;\n --nav-font-size: 1rem;\n --nav-padding: 0.5rem 0.75rem;\n --nav-default-width: 280px;\n\n /* ==========================================================================\n Theming Tokens\n Override these to retheme navigation without touching the global palette.\n ========================================================================== */\n\n /* Accent alias \u2014 drives focus outline, mirrors --ty-calendar-accent */\n --ty-calendar-accent: var(--ty-color-primary);\n\n /* Nav button (prev/next chevrons) */\n --ty-calendar-nav-color: var(--ty-color-neutral);\n --ty-calendar-nav-hover-color: var(--ty-color-neutral-strong);\n --ty-calendar-nav-hover-bg: var(--ty-bg-neutral-soft);\n --ty-calendar-nav-active-bg: var(--ty-bg-neutral);\n --ty-calendar-nav-focus-outline: var(--ty-calendar-accent);\n\n /* Title (month/year display) */\n --ty-calendar-nav-title-color: var(--ty-color-neutral-strong);\n}\n\n:host([data-size=\"sm\"]) {\n --nav-btn-size: 1.5rem;\n --nav-btn-icon-size: 1rem;\n --nav-font-size: 0.875rem;\n --nav-padding: 0.375rem 0.5rem;\n --nav-default-width: 240px;\n}\n\n:host([data-size=\"lg\"]) {\n --nav-btn-size: 2.5rem;\n --nav-btn-icon-size: 1.5rem;\n --nav-font-size: 1.125rem;\n --nav-padding: 0.625rem 1rem;\n --nav-default-width: 360px;\n}\n\n/* ============================================================================\n Main Navigation Header\n ============================================================================ */\n\n.calendar-navigation-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: var(--nav-padding);\n font-family: system-ui, sans-serif;\n user-select: none;\n width: var(--nav-width, var(--nav-default-width));\n box-sizing: border-box;\n}\n\n/* ============================================================================\n Navigation Groups (Left, Center, Right)\n ============================================================================ */\n\n.nav-group {\n display: flex;\n align-items: center;\n gap: 0.25rem;\n}\n\n.nav-group-left,\n.nav-group-right {\n flex: 0 0 auto;\n}\n\n.nav-group-center {\n flex: 1;\n justify-content: center;\n}\n\n/* ============================================================================\n Navigation Buttons\n ============================================================================ */\n\n.nav-btn {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--nav-btn-size);\n height: var(--nav-btn-size);\n padding: 0;\n border: none;\n border-radius: 0.375rem;\n background-color: transparent;\n color: var(--ty-calendar-nav-color);\n cursor: pointer;\n transition: all 0.15s ease;\n outline: none;\n}\n\n.nav-btn:hover {\n background-color: var(--ty-calendar-nav-hover-bg);\n color: var(--ty-calendar-nav-hover-color);\n}\n\n.nav-btn:active {\n background-color: var(--ty-calendar-nav-active-bg);\n transform: scale(0.95);\n}\n\n.nav-btn:focus-visible {\n outline: 2px solid var(--ty-calendar-nav-focus-outline);\n outline-offset: 2px;\n}\n\n/* SVG sizing */\n.nav-btn svg {\n width: var(--nav-btn-icon-size);\n height: var(--nav-btn-icon-size);\n display: block;\n}\n\n/* ============================================================================\n Month/Year Display (Center)\n ============================================================================ */\n\n.month-year-display {\n font-size: var(--nav-font-size);\n font-weight: 600;\n color: var(--ty-calendar-nav-title-color);\n text-align: center;\n white-space: nowrap;\n letter-spacing: -0.01em;\n}\n";
|
|
6
6
|
//# sourceMappingURL=calendar-navigation.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"calendar-navigation.d.ts","sourceRoot":"","sources":["../../src/styles/calendar-navigation.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,eAAO,MAAM,wBAAwB,
|
|
1
|
+
{"version":3,"file":"calendar-navigation.d.ts","sourceRoot":"","sources":["../../src/styles/calendar-navigation.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,eAAO,MAAM,wBAAwB,s2HAyIpC,CAAC"}
|
|
@@ -14,6 +14,24 @@ export const calendarNavigationStyles = `
|
|
|
14
14
|
--nav-font-size: 1rem;
|
|
15
15
|
--nav-padding: 0.5rem 0.75rem;
|
|
16
16
|
--nav-default-width: 280px;
|
|
17
|
+
|
|
18
|
+
/* ==========================================================================
|
|
19
|
+
Theming Tokens
|
|
20
|
+
Override these to retheme navigation without touching the global palette.
|
|
21
|
+
========================================================================== */
|
|
22
|
+
|
|
23
|
+
/* Accent alias — drives focus outline, mirrors --ty-calendar-accent */
|
|
24
|
+
--ty-calendar-accent: var(--ty-color-primary);
|
|
25
|
+
|
|
26
|
+
/* Nav button (prev/next chevrons) */
|
|
27
|
+
--ty-calendar-nav-color: var(--ty-color-neutral);
|
|
28
|
+
--ty-calendar-nav-hover-color: var(--ty-color-neutral-strong);
|
|
29
|
+
--ty-calendar-nav-hover-bg: var(--ty-bg-neutral-soft);
|
|
30
|
+
--ty-calendar-nav-active-bg: var(--ty-bg-neutral);
|
|
31
|
+
--ty-calendar-nav-focus-outline: var(--ty-calendar-accent);
|
|
32
|
+
|
|
33
|
+
/* Title (month/year display) */
|
|
34
|
+
--ty-calendar-nav-title-color: var(--ty-color-neutral-strong);
|
|
17
35
|
}
|
|
18
36
|
|
|
19
37
|
:host([data-size="sm"]) {
|
|
@@ -81,24 +99,24 @@ export const calendarNavigationStyles = `
|
|
|
81
99
|
border: none;
|
|
82
100
|
border-radius: 0.375rem;
|
|
83
101
|
background-color: transparent;
|
|
84
|
-
color: var(--ty-color
|
|
102
|
+
color: var(--ty-calendar-nav-color);
|
|
85
103
|
cursor: pointer;
|
|
86
104
|
transition: all 0.15s ease;
|
|
87
105
|
outline: none;
|
|
88
106
|
}
|
|
89
107
|
|
|
90
108
|
.nav-btn:hover {
|
|
91
|
-
background-color: var(--ty-
|
|
92
|
-
color: var(--ty-
|
|
109
|
+
background-color: var(--ty-calendar-nav-hover-bg);
|
|
110
|
+
color: var(--ty-calendar-nav-hover-color);
|
|
93
111
|
}
|
|
94
112
|
|
|
95
113
|
.nav-btn:active {
|
|
96
|
-
background-color: var(--ty-bg
|
|
114
|
+
background-color: var(--ty-calendar-nav-active-bg);
|
|
97
115
|
transform: scale(0.95);
|
|
98
116
|
}
|
|
99
117
|
|
|
100
118
|
.nav-btn:focus-visible {
|
|
101
|
-
outline: 2px solid var(--ty-
|
|
119
|
+
outline: 2px solid var(--ty-calendar-nav-focus-outline);
|
|
102
120
|
outline-offset: 2px;
|
|
103
121
|
}
|
|
104
122
|
|
|
@@ -116,7 +134,7 @@ export const calendarNavigationStyles = `
|
|
|
116
134
|
.month-year-display {
|
|
117
135
|
font-size: var(--nav-font-size);
|
|
118
136
|
font-weight: 600;
|
|
119
|
-
color: var(--ty-
|
|
137
|
+
color: var(--ty-calendar-nav-title-color);
|
|
120
138
|
text-align: center;
|
|
121
139
|
white-space: nowrap;
|
|
122
140
|
letter-spacing: -0.01em;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"calendar-navigation.js","sourceRoot":"","sources":["../../src/styles/calendar-navigation.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,CAAC,MAAM,wBAAwB,GAAG
|
|
1
|
+
{"version":3,"file":"calendar-navigation.js","sourceRoot":"","sources":["../../src/styles/calendar-navigation.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,CAAC,MAAM,wBAAwB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyIvC,CAAC"}
|
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
* Date Picker Component Styles
|
|
3
3
|
* PORTED FROM: cljs/ty/components/date_picker.css
|
|
4
4
|
*/
|
|
5
|
-
export declare const datePickerStyles = "\n/* Date Picker Component Styles */\n:host {\n display: block;\n width: auto;\n min-width: 200px;\n}\n\n/* Container structure (reuses dropdown patterns) */\n.dropdown-container {\n display: flex;\n flex-direction: column;\n width: 100%;\n box-sizing: border-box;\n}\n\n.dropdown-label {\n font-size: 14px;\n font-weight: 500;\n color: var(--ty-label-color);\n margin-bottom: 6px;\n line-height: 1.25;\n padding-left: 12px;\n}\n\n.required-icon {\n display: inline-flex;\n align-items: center;\n color: #ef4444;\n width: 12px;\n height: 12px;\n vertical-align: middle;\n margin-left: 4px;\n}\n\n.dropdown-wrapper {\n position: relative;\n display: block;\n width: 100%;\n}\n\n/* Start-slot icon (leading content inside the date-picker stub) */\n.date-picker-stub ::slotted([slot=\"start\"]) {\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n margin-right: 0.5rem;\n color: var(--ty-color-text-soft);\n}\n\n.date-picker-stub ::slotted(ty-icon[slot=\"start\"]) {\n width: 1em;\n height: 1em;\n}\n\n/* Date picker stub (styled like dropdown) */\n.date-picker-stub {\n width: 100%;\n cursor: pointer;\n box-sizing: border-box;\n position: relative;\n display: flex;\n align-items: center;\n background: var(--ty-input-bg);\n color: var(--ty-input-color);\n border: 1px solid var(--ty-input-border);\n border-radius: var(--ty-radius-md);\n font-family: var(--ty-font-sans);\n font-size: var(--ty-font-sm);\n font-weight: var(--ty-font-normal);\n line-height: var(--ty-line-height-tight);\n min-height: var(--ty-size-md);\n padding: var(--ty-spacing-2) var(--ty-spacing-3);\n padding-right: calc(var(--ty-spacing-3) + 1rem + var(--ty-spacing-2));\n transition: var(--ty-transition-all), opacity 0.2s ease;\n outline: none;\n}\n\n.date-picker-stub:hover:not([disabled]):not(.open) {\n border-color: var(--ty-input-border-hover);\n}\n\n.date-picker-stub[disabled] {\n background-color: var(--ty-input-disabled-bg);\n color: var(--ty-input-disabled-color);\n cursor: not-allowed;\n opacity: 0.6;\n}\n\n.date-picker-stub:focus,\n.date-picker-stub.open {\n border-color: var(--ty-input-border-focus);\n box-shadow: 0 0 0 3px var(--ty-input-shadow-focus);\n}\n\n/* Size variants */\n.date-picker-stub.xs {\n min-height: var(--ty-size-xs);\n font-size: var(--ty-font-xs);\n padding: var(--ty-spacing-1) var(--ty-spacing-2);\n padding-right: calc(var(--ty-spacing-2) + 0.875rem + var(--ty-spacing-1));\n}\n\n.date-picker-stub.sm {\n min-height: var(--ty-size-sm);\n font-size: var(--ty-font-xs);\n padding: var(--ty-spacing-1) var(--ty-spacing-2);\n padding-right: calc(var(--ty-spacing-2) + 0.875rem + var(--ty-spacing-1));\n}\n\n.date-picker-stub.lg {\n min-height: var(--ty-size-lg);\n font-size: var(--ty-font-base);\n padding: var(--ty-spacing-2) var(--ty-spacing-4);\n padding-right: calc(var(--ty-spacing-4) + 1.125rem + var(--ty-spacing-2));\n}\n\n.date-picker-stub.xl {\n min-height: var(--ty-size-xl);\n font-size: var(--ty-font-lg);\n padding: var(--ty-spacing-3) var(--ty-spacing-4);\n padding-right: calc(var(--ty-spacing-4) + 1.25rem + var(--ty-spacing-3));\n}\n\n/* Flavor variants */\n/* Primary - Main brand focus state */\n.date-picker-stub.primary {\n border-color: var(--ty-input-primary-border, var(--ty-color-primary));\n}\n\n.date-picker-stub.primary:hover:not([disabled]) {\n border-color: var(--ty-color-primary-mild);\n}\n\n.date-picker-stub.primary:focus,\n.date-picker-stub.primary.open {\n border-color: var(--ty-color-primary-mild);\n box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);\n}\n\n/* Secondary - Supporting action focus state */\n.date-picker-stub.secondary {\n border-color: var(--ty-input-secondary-border, var(--ty-color-secondary));\n}\n\n.date-picker-stub.secondary:hover:not([disabled]) {\n border-color: var(--ty-color-secondary-mild);\n}\n\n.date-picker-stub.secondary:focus,\n.date-picker-stub.secondary.open {\n border-color: var(--ty-color-secondary-mild);\n box-shadow: 0 0 0 3px rgba(139, 92, 246, 0.1);\n}\n\n/* Success - Valid/confirmed input state */\n.date-picker-stub.success {\n border-color: var(--ty-input-success-border, var(--ty-color-success));\n}\n\n.date-picker-stub.success:hover:not([disabled]) {\n border-color: var(--ty-color-success-mild);\n}\n\n.date-picker-stub.success:focus,\n.date-picker-stub.success.open {\n border-color: var(--ty-color-success-mild);\n box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.1);\n}\n\n/* Danger - Error/invalid input state */\n.date-picker-stub.danger {\n border-color: var(--ty-input-danger-border, var(--ty-color-danger));\n}\n\n.date-picker-stub.danger:hover:not([disabled]) {\n border-color: var(--ty-color-danger-mild);\n}\n\n.date-picker-stub.danger:focus,\n.date-picker-stub.danger.open {\n border-color: var(--ty-color-danger-mild);\n box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.1);\n}\n\n/* Warning - Caution/attention needed input state */\n.date-picker-stub.warning {\n border-color: var(--ty-input-warning-border, var(--ty-color-warning));\n}\n\n.date-picker-stub.warning:hover:not([disabled]) {\n border-color: var(--ty-color-warning-mild);\n}\n\n.date-picker-stub.warning:focus,\n.date-picker-stub.warning.open {\n border-color: var(--ty-color-warning-mild);\n box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.1);\n}\n\n/* Text content */\n.stub-text {\n flex: 1;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n user-select: none;\n color: inherit;\n pointer-events: none;\n}\n\n.stub-text.placeholder {\n color: var(--ty-input-placeholder);\n}\n\n/* Icons */\n.stub-icons {\n display: flex;\n align-items: center;\n gap: var(--ty-spacing-1);\n position: absolute;\n right: var(--ty-spacing-3);\n top: 50%;\n transform: translateY(-50%);\n height: 1rem;\n pointer-events: none;\n z-index: 2;\n}\n\n.stub-clear {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 1rem;\n height: 1rem;\n padding: 0;\n border: none;\n background: none;\n color: var(--ty-color-neutral-soft);\n cursor: pointer;\n border-radius: var(--ty-radius-sm);\n transition: all 0.15s ease;\n pointer-events: auto;\n}\n\n.stub-clear:hover {\n color: var(--ty-color-negative);\n background-color: var(--ty-bg-negative-faint);\n}\n\n.stub-arrow {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 1rem;\n height: 1rem;\n color: var(--ty-color-neutral-soft);\n}\n\n.date-picker-stub:hover .stub-arrow {\n color: var(--ty-color-neutral);\n}\n\n.date-picker-stub:focus .stub-arrow,\n.date-picker-stub.open .stub-arrow {\n color: var(--ty-input-border-focus);\n}\n\n/* Calendar dialog (showModal positioning system) */\n.calendar-dialog {\n position: fixed;\n flex-direction: column;\n max-width: 90vw;\n margin: 0;\n padding: 0;\n border: none;\n background: transparent;\n box-sizing: border-box;\n padding: var(--calendar-padding, 8px);\n\n /* Hidden by default */\n opacity: 0;\n transition: opacity 200ms ease;\n\n transform: translate(var(--calendar-offset-x, 0px), var(--calendar-offset-y, 0px));\n top: -1000px;\n left: -1000px;\n}\n\n/* Direction-based positioning with CSS classes */\n.calendar-dialog.position-below {\n left: var(--calendar-x);\n top: var(--calendar-y);\n}\n\n.calendar-dialog.position-above {\n left: var(--calendar-x);\n bottom: var(--calendar-y);\n top: auto;\n flex-direction: column-reverse;\n}\n\n.calendar-dialog.open {\n opacity: 1;\n}\n\n.calendar-dialog::backdrop {\n background: transparent\n}\n\n/* Calendar content container */\n.calendar-content {\n background-color: var(--ty-surface-floating);\n border: 1px solid var(--ty-color-neutral-soft);\n border-radius: var(--ty-radius-lg);\n box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08), 0 1px 3px rgba(0, 0, 0, 0.1);\n overflow: hidden;\n display: flex;\n flex-direction: column;\n align-items: center;\n}\n\n/* Native date input for mobile */\n/* Native input is invisible \u2014 used only to trigger the OS picker */\n.native-date-input {\n position: absolute;\n inset: 0;\n opacity: 0;\n width: 100%;\n height: 100%;\n margin: 0;\n padding: 0;\n border: none;\n cursor: pointer;\n z-index: 1;\n}\n\n.native-date-input::-webkit-calendar-picker-indicator {\n position: absolute;\n inset: 0;\n width: 100%;\n height: 100%;\n margin: 0;\n padding: 0;\n cursor: pointer;\n}\n\n/* Time input section */\n.time-section {\n display: flex;\n min-height: 2.5rem;\n align-items: center;\n justify-content: center;\n gap: 0.5rem;\n padding: 0.5rem 1rem;\n border-top: 1px solid var(--ty-color-neutral-faint);\n background-color: var(--ty-bg-neutral-faint);\n width: 100%;\n box-sizing: border-box;\n position: relative;\n}\n\n.time-label {\n font-size: var(--ty-font-sm);\n font-weight: 500;\n color: var(--ty-color-neutral);\n flex-shrink: 0;\n}\n\n.time-input {\n width: 3.5rem;\n border: none;\n border-radius: var(--ty-radius-sm);\n background: transparent;\n color: var(--ty-input-color);\n font-family: var(--ty-font-sans);\n font-size: var(--ty-font-sm);\n text-align: center;\n outline: none;\n}\n\n.time-input::placeholder {\n color: var(--ty-input-placeholder);\n}\n\n.time-icon {\n display: flex;\n align-items: center;\n color: var(--ty-color-neutral-soft);\n width: 1rem;\n height: 1rem;\n flex-shrink: 0;\n}\n";
|
|
5
|
+
export declare const datePickerStyles = "\n/* Date Picker Component Styles */\n:host {\n display: block;\n width: auto;\n min-width: 200px;\n\n /* ==========================================================================\n Theming Tokens \u2014 Date Picker Stub\n Thin shim over --ty-input-*. Override these to retheme just the date-picker\n trigger without affecting other inputs.\n ========================================================================== */\n --ty-date-picker-bg: var(--ty-input-bg);\n --ty-date-picker-color: var(--ty-input-color);\n --ty-date-picker-placeholder: var(--ty-input-placeholder);\n --ty-date-picker-border: var(--ty-input-border);\n --ty-date-picker-border-hover: var(--ty-input-border-hover);\n --ty-date-picker-border-focus: var(--ty-input-border-focus);\n --ty-date-picker-shadow-focus: var(--ty-input-shadow-focus);\n --ty-date-picker-disabled-bg: var(--ty-input-disabled-bg);\n --ty-date-picker-disabled-color: var(--ty-input-disabled-color);\n --ty-date-picker-radius: var(--ty-radius-md);\n\n /* ==========================================================================\n Theming Tokens \u2014 Calendar Popup Surface\n Shared with ty-calendar / ty-calendar-month theming.\n ========================================================================== */\n --ty-calendar-surface-bg: var(--ty-surface-floating);\n --ty-calendar-surface-border: var(--ty-input-border);\n --ty-calendar-surface-shadow: 0 4px 20px rgba(0, 0, 0, 0.08), 0 1px 3px rgba(0, 0, 0, 0.1);\n --ty-calendar-surface-radius: var(--ty-radius-lg);\n\n /* ==========================================================================\n Theming Tokens \u2014 Time Section\n ========================================================================== */\n --ty-calendar-time-bg: var(--ty-bg-neutral-faint);\n --ty-calendar-time-border: var(--ty-input-border);\n --ty-calendar-time-label-color: var(--ty-color-neutral);\n --ty-calendar-time-input-color: var(--ty-input-color);\n --ty-calendar-time-placeholder-color: var(--ty-input-placeholder);\n --ty-calendar-time-icon-color: var(--ty-color-neutral-soft);\n}\n\n/* Container structure (reuses dropdown patterns) */\n.dropdown-container {\n display: flex;\n flex-direction: column;\n width: 100%;\n box-sizing: border-box;\n}\n\n.dropdown-label {\n font-size: 14px;\n font-weight: 500;\n color: var(--ty-label-color);\n margin-bottom: 6px;\n line-height: 1.25;\n padding-left: 12px;\n}\n\n.required-icon {\n display: inline-flex;\n align-items: center;\n color: #ef4444;\n width: 12px;\n height: 12px;\n vertical-align: middle;\n margin-left: 4px;\n}\n\n.dropdown-wrapper {\n position: relative;\n display: block;\n width: 100%;\n}\n\n/* Start-slot icon (leading content inside the date-picker stub) */\n.date-picker-stub ::slotted([slot=\"start\"]) {\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n margin-right: 0.5rem;\n color: var(--ty-color-text-soft);\n}\n\n.date-picker-stub ::slotted(ty-icon[slot=\"start\"]) {\n width: 1em;\n height: 1em;\n}\n\n/* Date picker stub (styled like dropdown) */\n.date-picker-stub {\n width: 100%;\n cursor: pointer;\n box-sizing: border-box;\n position: relative;\n display: flex;\n align-items: center;\n background: var(--ty-date-picker-bg);\n color: var(--ty-date-picker-color);\n border: 1px solid var(--ty-date-picker-border);\n border-radius: var(--ty-date-picker-radius);\n font-family: var(--ty-font-sans);\n font-size: var(--ty-font-sm);\n font-weight: var(--ty-font-normal);\n line-height: var(--ty-line-height-tight);\n min-height: var(--ty-size-md);\n padding: var(--ty-spacing-2) var(--ty-spacing-3);\n padding-right: calc(var(--ty-spacing-3) + 1rem + var(--ty-spacing-2));\n transition: var(--ty-transition-all), opacity 0.2s ease;\n outline: none;\n}\n\n.date-picker-stub:hover:not([disabled]):not(.open) {\n border-color: var(--ty-date-picker-border-hover);\n}\n\n.date-picker-stub[disabled] {\n background-color: var(--ty-date-picker-disabled-bg);\n color: var(--ty-date-picker-disabled-color);\n cursor: not-allowed;\n opacity: 0.6;\n}\n\n.date-picker-stub:focus,\n.date-picker-stub.open {\n border-color: var(--ty-date-picker-border-focus);\n box-shadow: 0 0 0 3px var(--ty-date-picker-shadow-focus);\n}\n\n/* Size variants */\n.date-picker-stub.xs {\n min-height: var(--ty-size-xs);\n font-size: var(--ty-font-xs);\n padding: var(--ty-spacing-1) var(--ty-spacing-2);\n padding-right: calc(var(--ty-spacing-2) + 0.875rem + var(--ty-spacing-1));\n}\n\n.date-picker-stub.sm {\n min-height: var(--ty-size-sm);\n font-size: var(--ty-font-xs);\n padding: var(--ty-spacing-1) var(--ty-spacing-2);\n padding-right: calc(var(--ty-spacing-2) + 0.875rem + var(--ty-spacing-1));\n}\n\n.date-picker-stub.lg {\n min-height: var(--ty-size-lg);\n font-size: var(--ty-font-base);\n padding: var(--ty-spacing-2) var(--ty-spacing-4);\n padding-right: calc(var(--ty-spacing-4) + 1.125rem + var(--ty-spacing-2));\n}\n\n.date-picker-stub.xl {\n min-height: var(--ty-size-xl);\n font-size: var(--ty-font-lg);\n padding: var(--ty-spacing-3) var(--ty-spacing-4);\n padding-right: calc(var(--ty-spacing-4) + 1.25rem + var(--ty-spacing-3));\n}\n\n/* Flavor variants */\n/* Primary - Main brand focus state */\n.date-picker-stub.primary {\n border-color: var(--ty-input-primary-border, var(--ty-color-primary));\n}\n\n.date-picker-stub.primary:hover:not([disabled]) {\n border-color: var(--ty-color-primary-mild);\n}\n\n.date-picker-stub.primary:focus,\n.date-picker-stub.primary.open {\n border-color: var(--ty-color-primary-mild);\n box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);\n}\n\n/* Secondary - Supporting action focus state */\n.date-picker-stub.secondary {\n border-color: var(--ty-input-secondary-border, var(--ty-color-secondary));\n}\n\n.date-picker-stub.secondary:hover:not([disabled]) {\n border-color: var(--ty-color-secondary-mild);\n}\n\n.date-picker-stub.secondary:focus,\n.date-picker-stub.secondary.open {\n border-color: var(--ty-color-secondary-mild);\n box-shadow: 0 0 0 3px rgba(139, 92, 246, 0.1);\n}\n\n/* Success - Valid/confirmed input state */\n.date-picker-stub.success {\n border-color: var(--ty-input-success-border, var(--ty-color-success));\n}\n\n.date-picker-stub.success:hover:not([disabled]) {\n border-color: var(--ty-color-success-mild);\n}\n\n.date-picker-stub.success:focus,\n.date-picker-stub.success.open {\n border-color: var(--ty-color-success-mild);\n box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.1);\n}\n\n/* Danger - Error/invalid input state */\n.date-picker-stub.danger {\n border-color: var(--ty-input-danger-border, var(--ty-color-danger));\n}\n\n.date-picker-stub.danger:hover:not([disabled]) {\n border-color: var(--ty-color-danger-mild);\n}\n\n.date-picker-stub.danger:focus,\n.date-picker-stub.danger.open {\n border-color: var(--ty-color-danger-mild);\n box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.1);\n}\n\n/* Warning - Caution/attention needed input state */\n.date-picker-stub.warning {\n border-color: var(--ty-input-warning-border, var(--ty-color-warning));\n}\n\n.date-picker-stub.warning:hover:not([disabled]) {\n border-color: var(--ty-color-warning-mild);\n}\n\n.date-picker-stub.warning:focus,\n.date-picker-stub.warning.open {\n border-color: var(--ty-color-warning-mild);\n box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.1);\n}\n\n/* Text content */\n.stub-text {\n flex: 1;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n user-select: none;\n color: inherit;\n pointer-events: none;\n}\n\n.stub-text.placeholder {\n color: var(--ty-date-picker-placeholder);\n}\n\n/* Icons */\n.stub-icons {\n display: flex;\n align-items: center;\n gap: var(--ty-spacing-1);\n position: absolute;\n right: var(--ty-spacing-3);\n top: 50%;\n transform: translateY(-50%);\n height: 1rem;\n pointer-events: none;\n z-index: 2;\n}\n\n.stub-clear {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 1rem;\n height: 1rem;\n padding: 0;\n border: none;\n background: none;\n color: var(--ty-color-neutral-soft);\n cursor: pointer;\n border-radius: var(--ty-radius-sm);\n transition: all 0.15s ease;\n pointer-events: auto;\n}\n\n.stub-clear:hover {\n color: var(--ty-color-negative);\n background-color: var(--ty-bg-negative-faint);\n}\n\n.stub-arrow {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 1rem;\n height: 1rem;\n color: var(--ty-color-neutral-soft);\n}\n\n.date-picker-stub:hover .stub-arrow {\n color: var(--ty-color-neutral);\n}\n\n.date-picker-stub:focus .stub-arrow,\n.date-picker-stub.open .stub-arrow {\n color: var(--ty-date-picker-border-focus);\n}\n\n/* Calendar dialog (showModal positioning system) */\n.calendar-dialog {\n position: fixed;\n flex-direction: column;\n max-width: 90vw;\n margin: 0;\n padding: 0;\n border: none;\n background: transparent;\n box-sizing: border-box;\n padding: var(--calendar-padding, 8px);\n\n /* Hidden by default */\n opacity: 0;\n transition: opacity 200ms ease;\n\n transform: translate(var(--calendar-offset-x, 0px), var(--calendar-offset-y, 0px));\n top: -1000px;\n left: -1000px;\n}\n\n/* Direction-based positioning with CSS classes */\n.calendar-dialog.position-below {\n left: var(--calendar-x);\n top: var(--calendar-y);\n}\n\n.calendar-dialog.position-above {\n left: var(--calendar-x);\n bottom: var(--calendar-y);\n top: auto;\n flex-direction: column-reverse;\n}\n\n.calendar-dialog.open {\n opacity: 1;\n}\n\n.calendar-dialog::backdrop {\n background: transparent\n}\n\n/* Calendar content container */\n.calendar-content {\n background-color: var(--ty-calendar-surface-bg);\n border: 1px solid var(--ty-calendar-surface-border);\n border-radius: var(--ty-calendar-surface-radius);\n box-shadow: var(--ty-calendar-surface-shadow);\n overflow: hidden;\n display: flex;\n flex-direction: column;\n align-items: center;\n}\n\n/* Native date input for mobile */\n/* Native input is invisible \u2014 used only to trigger the OS picker */\n.native-date-input {\n position: absolute;\n inset: 0;\n opacity: 0;\n width: 100%;\n height: 100%;\n margin: 0;\n padding: 0;\n border: none;\n cursor: pointer;\n z-index: 1;\n}\n\n.native-date-input::-webkit-calendar-picker-indicator {\n position: absolute;\n inset: 0;\n width: 100%;\n height: 100%;\n margin: 0;\n padding: 0;\n cursor: pointer;\n}\n\n/* Time input section */\n.time-section {\n display: flex;\n min-height: 2.5rem;\n align-items: center;\n justify-content: center;\n gap: 0.5rem;\n padding: 0.5rem 1rem;\n border-top: 1px solid var(--ty-calendar-time-border);\n background-color: var(--ty-calendar-time-bg);\n width: 100%;\n box-sizing: border-box;\n position: relative;\n}\n\n.time-label {\n font-size: var(--ty-font-sm);\n font-weight: 500;\n color: var(--ty-calendar-time-label-color);\n flex-shrink: 0;\n}\n\n.time-input {\n width: 3.5rem;\n border: none;\n border-radius: var(--ty-radius-sm);\n background: transparent;\n color: var(--ty-calendar-time-input-color);\n font-family: var(--ty-font-sans);\n font-size: var(--ty-font-sm);\n text-align: center;\n outline: none;\n}\n\n.time-input::placeholder {\n color: var(--ty-calendar-time-placeholder-color);\n}\n\n.time-icon {\n display: flex;\n align-items: center;\n color: var(--ty-calendar-time-icon-color);\n width: 1rem;\n height: 1rem;\n flex-shrink: 0;\n}\n";
|
|
6
6
|
//# sourceMappingURL=date-picker.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"date-picker.d.ts","sourceRoot":"","sources":["../../src/styles/date-picker.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,eAAO,MAAM,gBAAgB,
|
|
1
|
+
{"version":3,"file":"date-picker.d.ts","sourceRoot":"","sources":["../../src/styles/date-picker.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,eAAO,MAAM,gBAAgB,kwWA6a5B,CAAC"}
|
|
@@ -8,6 +8,41 @@ export const datePickerStyles = `
|
|
|
8
8
|
display: block;
|
|
9
9
|
width: auto;
|
|
10
10
|
min-width: 200px;
|
|
11
|
+
|
|
12
|
+
/* ==========================================================================
|
|
13
|
+
Theming Tokens — Date Picker Stub
|
|
14
|
+
Thin shim over --ty-input-*. Override these to retheme just the date-picker
|
|
15
|
+
trigger without affecting other inputs.
|
|
16
|
+
========================================================================== */
|
|
17
|
+
--ty-date-picker-bg: var(--ty-input-bg);
|
|
18
|
+
--ty-date-picker-color: var(--ty-input-color);
|
|
19
|
+
--ty-date-picker-placeholder: var(--ty-input-placeholder);
|
|
20
|
+
--ty-date-picker-border: var(--ty-input-border);
|
|
21
|
+
--ty-date-picker-border-hover: var(--ty-input-border-hover);
|
|
22
|
+
--ty-date-picker-border-focus: var(--ty-input-border-focus);
|
|
23
|
+
--ty-date-picker-shadow-focus: var(--ty-input-shadow-focus);
|
|
24
|
+
--ty-date-picker-disabled-bg: var(--ty-input-disabled-bg);
|
|
25
|
+
--ty-date-picker-disabled-color: var(--ty-input-disabled-color);
|
|
26
|
+
--ty-date-picker-radius: var(--ty-radius-md);
|
|
27
|
+
|
|
28
|
+
/* ==========================================================================
|
|
29
|
+
Theming Tokens — Calendar Popup Surface
|
|
30
|
+
Shared with ty-calendar / ty-calendar-month theming.
|
|
31
|
+
========================================================================== */
|
|
32
|
+
--ty-calendar-surface-bg: var(--ty-surface-floating);
|
|
33
|
+
--ty-calendar-surface-border: var(--ty-input-border);
|
|
34
|
+
--ty-calendar-surface-shadow: 0 4px 20px rgba(0, 0, 0, 0.08), 0 1px 3px rgba(0, 0, 0, 0.1);
|
|
35
|
+
--ty-calendar-surface-radius: var(--ty-radius-lg);
|
|
36
|
+
|
|
37
|
+
/* ==========================================================================
|
|
38
|
+
Theming Tokens — Time Section
|
|
39
|
+
========================================================================== */
|
|
40
|
+
--ty-calendar-time-bg: var(--ty-bg-neutral-faint);
|
|
41
|
+
--ty-calendar-time-border: var(--ty-input-border);
|
|
42
|
+
--ty-calendar-time-label-color: var(--ty-color-neutral);
|
|
43
|
+
--ty-calendar-time-input-color: var(--ty-input-color);
|
|
44
|
+
--ty-calendar-time-placeholder-color: var(--ty-input-placeholder);
|
|
45
|
+
--ty-calendar-time-icon-color: var(--ty-color-neutral-soft);
|
|
11
46
|
}
|
|
12
47
|
|
|
13
48
|
/* Container structure (reuses dropdown patterns) */
|
|
@@ -66,10 +101,10 @@ export const datePickerStyles = `
|
|
|
66
101
|
position: relative;
|
|
67
102
|
display: flex;
|
|
68
103
|
align-items: center;
|
|
69
|
-
background: var(--ty-
|
|
70
|
-
color: var(--ty-
|
|
71
|
-
border: 1px solid var(--ty-
|
|
72
|
-
border-radius: var(--ty-radius
|
|
104
|
+
background: var(--ty-date-picker-bg);
|
|
105
|
+
color: var(--ty-date-picker-color);
|
|
106
|
+
border: 1px solid var(--ty-date-picker-border);
|
|
107
|
+
border-radius: var(--ty-date-picker-radius);
|
|
73
108
|
font-family: var(--ty-font-sans);
|
|
74
109
|
font-size: var(--ty-font-sm);
|
|
75
110
|
font-weight: var(--ty-font-normal);
|
|
@@ -82,20 +117,20 @@ export const datePickerStyles = `
|
|
|
82
117
|
}
|
|
83
118
|
|
|
84
119
|
.date-picker-stub:hover:not([disabled]):not(.open) {
|
|
85
|
-
border-color: var(--ty-
|
|
120
|
+
border-color: var(--ty-date-picker-border-hover);
|
|
86
121
|
}
|
|
87
122
|
|
|
88
123
|
.date-picker-stub[disabled] {
|
|
89
|
-
background-color: var(--ty-
|
|
90
|
-
color: var(--ty-
|
|
124
|
+
background-color: var(--ty-date-picker-disabled-bg);
|
|
125
|
+
color: var(--ty-date-picker-disabled-color);
|
|
91
126
|
cursor: not-allowed;
|
|
92
127
|
opacity: 0.6;
|
|
93
128
|
}
|
|
94
129
|
|
|
95
130
|
.date-picker-stub:focus,
|
|
96
131
|
.date-picker-stub.open {
|
|
97
|
-
border-color: var(--ty-
|
|
98
|
-
box-shadow: 0 0 0 3px var(--ty-
|
|
132
|
+
border-color: var(--ty-date-picker-border-focus);
|
|
133
|
+
box-shadow: 0 0 0 3px var(--ty-date-picker-shadow-focus);
|
|
99
134
|
}
|
|
100
135
|
|
|
101
136
|
/* Size variants */
|
|
@@ -215,7 +250,7 @@ export const datePickerStyles = `
|
|
|
215
250
|
}
|
|
216
251
|
|
|
217
252
|
.stub-text.placeholder {
|
|
218
|
-
color: var(--ty-
|
|
253
|
+
color: var(--ty-date-picker-placeholder);
|
|
219
254
|
}
|
|
220
255
|
|
|
221
256
|
/* Icons */
|
|
@@ -268,7 +303,7 @@ export const datePickerStyles = `
|
|
|
268
303
|
|
|
269
304
|
.date-picker-stub:focus .stub-arrow,
|
|
270
305
|
.date-picker-stub.open .stub-arrow {
|
|
271
|
-
color: var(--ty-
|
|
306
|
+
color: var(--ty-date-picker-border-focus);
|
|
272
307
|
}
|
|
273
308
|
|
|
274
309
|
/* Calendar dialog (showModal positioning system) */
|
|
@@ -315,10 +350,10 @@ export const datePickerStyles = `
|
|
|
315
350
|
|
|
316
351
|
/* Calendar content container */
|
|
317
352
|
.calendar-content {
|
|
318
|
-
background-color: var(--ty-surface-
|
|
319
|
-
border: 1px solid var(--ty-
|
|
320
|
-
border-radius: var(--ty-radius
|
|
321
|
-
box-shadow:
|
|
353
|
+
background-color: var(--ty-calendar-surface-bg);
|
|
354
|
+
border: 1px solid var(--ty-calendar-surface-border);
|
|
355
|
+
border-radius: var(--ty-calendar-surface-radius);
|
|
356
|
+
box-shadow: var(--ty-calendar-surface-shadow);
|
|
322
357
|
overflow: hidden;
|
|
323
358
|
display: flex;
|
|
324
359
|
flex-direction: column;
|
|
@@ -358,8 +393,8 @@ export const datePickerStyles = `
|
|
|
358
393
|
justify-content: center;
|
|
359
394
|
gap: 0.5rem;
|
|
360
395
|
padding: 0.5rem 1rem;
|
|
361
|
-
border-top: 1px solid var(--ty-
|
|
362
|
-
background-color: var(--ty-
|
|
396
|
+
border-top: 1px solid var(--ty-calendar-time-border);
|
|
397
|
+
background-color: var(--ty-calendar-time-bg);
|
|
363
398
|
width: 100%;
|
|
364
399
|
box-sizing: border-box;
|
|
365
400
|
position: relative;
|
|
@@ -368,7 +403,7 @@ export const datePickerStyles = `
|
|
|
368
403
|
.time-label {
|
|
369
404
|
font-size: var(--ty-font-sm);
|
|
370
405
|
font-weight: 500;
|
|
371
|
-
color: var(--ty-color
|
|
406
|
+
color: var(--ty-calendar-time-label-color);
|
|
372
407
|
flex-shrink: 0;
|
|
373
408
|
}
|
|
374
409
|
|
|
@@ -377,7 +412,7 @@ export const datePickerStyles = `
|
|
|
377
412
|
border: none;
|
|
378
413
|
border-radius: var(--ty-radius-sm);
|
|
379
414
|
background: transparent;
|
|
380
|
-
color: var(--ty-input-color);
|
|
415
|
+
color: var(--ty-calendar-time-input-color);
|
|
381
416
|
font-family: var(--ty-font-sans);
|
|
382
417
|
font-size: var(--ty-font-sm);
|
|
383
418
|
text-align: center;
|
|
@@ -385,13 +420,13 @@ export const datePickerStyles = `
|
|
|
385
420
|
}
|
|
386
421
|
|
|
387
422
|
.time-input::placeholder {
|
|
388
|
-
color: var(--ty-
|
|
423
|
+
color: var(--ty-calendar-time-placeholder-color);
|
|
389
424
|
}
|
|
390
425
|
|
|
391
426
|
.time-icon {
|
|
392
427
|
display: flex;
|
|
393
428
|
align-items: center;
|
|
394
|
-
color: var(--ty-
|
|
429
|
+
color: var(--ty-calendar-time-icon-color);
|
|
395
430
|
width: 1rem;
|
|
396
431
|
height: 1rem;
|
|
397
432
|
flex-shrink: 0;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"date-picker.js","sourceRoot":"","sources":["../../src/styles/date-picker.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,CAAC,MAAM,gBAAgB,GAAG
|
|
1
|
+
{"version":3,"file":"date-picker.js","sourceRoot":"","sources":["../../src/styles/date-picker.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,CAAC,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6a/B,CAAC"}
|