morya-ui 0.4.3 → 0.4.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (173) hide show
  1. package/CHANGELOG.md +780 -769
  2. package/LICENSE +21 -21
  3. package/README.md +156 -150
  4. package/README.zh-CN.md +156 -150
  5. package/dist/accordion/style.css +1205 -1205
  6. package/dist/affix/style.css +1205 -1205
  7. package/dist/alert/style.css +1205 -1205
  8. package/dist/anchor/style.css +1205 -1205
  9. package/dist/auto-complete/style.css +1749 -1749
  10. package/dist/avatar/style.css +1318 -1318
  11. package/dist/badge/style.css +1371 -1371
  12. package/dist/block-ui/style.css +1205 -1205
  13. package/dist/breadcrumb/style.css +1205 -1205
  14. package/dist/button/style.css +1909 -1909
  15. package/dist/calendar/style.css +1880 -1880
  16. package/dist/card/style.css +1205 -1205
  17. package/dist/carousel/style.css +2208 -2208
  18. package/dist/cascade-select/style.css +1909 -1909
  19. package/dist/checkbox/style.css +1205 -1205
  20. package/dist/chip/style.css +1349 -1349
  21. package/dist/command-menu/style.css +1438 -1438
  22. package/dist/components/AutoComplete/styles.css +209 -209
  23. package/dist/components/Avatar/styles.css +113 -113
  24. package/dist/components/Badge/styles.css +164 -164
  25. package/dist/components/Button/styles.css +698 -698
  26. package/dist/components/Carousel/styles.css +302 -302
  27. package/dist/components/CascadeSelect/styles.css +168 -168
  28. package/dist/components/Chip/styles.css +144 -144
  29. package/dist/components/CommandMenu/styles.css +102 -102
  30. package/dist/components/ConfigProvider/styles.css +6 -6
  31. package/dist/components/ConfirmDialog/styles.css +24 -24
  32. package/dist/components/ConfirmPopup/styles.css +35 -35
  33. package/dist/components/ContextMenu/styles.css +138 -138
  34. package/dist/components/DatePicker/styles.css +453 -453
  35. package/dist/components/Dialog/styles.css +420 -420
  36. package/dist/components/Dock/styles.css +84 -84
  37. package/dist/components/Drawer/styles.css +346 -346
  38. package/dist/components/Dropdown/styles.css +135 -135
  39. package/dist/components/Empty/styles.css +146 -146
  40. package/dist/components/FileUpload/styles.css +359 -359
  41. package/dist/components/Form/Form.vue.d.ts.map +1 -1
  42. package/dist/components/Form/styles.css +125 -125
  43. package/dist/components/Gallery/styles.css +100 -100
  44. package/dist/components/Input/styles.css +392 -392
  45. package/dist/components/InputColor/styles.css +139 -139
  46. package/dist/components/InputNumber/styles.css +262 -262
  47. package/dist/components/InputPassword/styles.css +189 -189
  48. package/dist/components/InputTags/styles.css +121 -121
  49. package/dist/components/Layout/styles.css +433 -433
  50. package/dist/components/List/styles.css +229 -229
  51. package/dist/components/Listbox/styles.css +130 -130
  52. package/dist/components/Loading/styles.css +378 -378
  53. package/dist/components/MegaMenu/styles.css +97 -97
  54. package/dist/components/Menu/styles.css +565 -565
  55. package/dist/components/Menubar/styles.css +144 -144
  56. package/dist/components/Message/styles.css +248 -248
  57. package/dist/components/MeterGroup/styles.css +49 -49
  58. package/dist/components/Page/styles.css +430 -430
  59. package/dist/components/Pagination/styles.css +124 -124
  60. package/dist/components/Popover/styles.css +92 -92
  61. package/dist/components/Result/styles.css +146 -146
  62. package/dist/components/Scrollbar/styles.css +131 -131
  63. package/dist/components/Select/styles.css +222 -222
  64. package/dist/components/SelectButton/styles.css +107 -107
  65. package/dist/components/Sidebar/styles.css +74 -74
  66. package/dist/components/Slider/styles.css +211 -211
  67. package/dist/components/SplitButton/styles.css +216 -216
  68. package/dist/components/Status/styles.css +190 -190
  69. package/dist/components/Stepper/styles.css +152 -152
  70. package/dist/components/Switch/styles.css +129 -129
  71. package/dist/components/Tabs/styles.css +165 -165
  72. package/dist/components/Terminal/styles.css +75 -75
  73. package/dist/components/Textarea/styles.css +146 -146
  74. package/dist/components/TieredMenu/styles.css +125 -125
  75. package/dist/components/Timeline/styles.css +157 -157
  76. package/dist/components/TreeSelect/styles.css +172 -172
  77. package/dist/components/VirtualScroller/styles.css +27 -27
  78. package/dist/config-provider/style.css +2301 -2301
  79. package/dist/confirm-dialog/style.css +2347 -2347
  80. package/dist/confirm-popup/style.css +1938 -1938
  81. package/dist/context-menu/style.css +1474 -1474
  82. package/dist/data-view/style.css +1707 -1707
  83. package/dist/date-picker/style.css +1658 -1658
  84. package/dist/descriptions/style.css +1205 -1205
  85. package/dist/dialog/style.css +2323 -2323
  86. package/dist/divider/style.css +1205 -1205
  87. package/dist/dock/style.css +1289 -1289
  88. package/dist/drawer/style.css +1551 -1551
  89. package/dist/dropdown/style.css +1471 -1471
  90. package/dist/empty/style.css +1351 -1351
  91. package/dist/fieldset/style.css +1205 -1205
  92. package/dist/file-upload/style.css +1564 -1564
  93. package/dist/flex/style.css +1205 -1205
  94. package/dist/float-label/style.css +1205 -1205
  95. package/dist/fluid/style.css +1205 -1205
  96. package/dist/form/style.css +1332 -1332
  97. package/dist/gallery/style.css +1436 -1436
  98. package/dist/grid/style.css +1205 -1205
  99. package/dist/icon/style.css +1205 -1205
  100. package/dist/icon-field/style.css +1597 -1597
  101. package/dist/image/style.css +1205 -1205
  102. package/dist/inplace/style.css +1205 -1205
  103. package/dist/input/style.css +1722 -1722
  104. package/dist/input-color/style.css +1346 -1346
  105. package/dist/input-group/style.css +1205 -1205
  106. package/dist/input-number/style.css +1467 -1467
  107. package/dist/input-otp/style.css +1205 -1205
  108. package/dist/input-password/style.css +1519 -1519
  109. package/dist/input-tags/style.css +1326 -1326
  110. package/dist/knob/style.css +1205 -1205
  111. package/dist/label/style.css +1205 -1205
  112. package/dist/layout/style.css +1769 -1769
  113. package/dist/list/style.css +2087 -2087
  114. package/dist/listbox/style.css +1497 -1497
  115. package/dist/loading/style.css +1585 -1585
  116. package/dist/mega-menu/style.css +1302 -1302
  117. package/dist/mentions/style.css +1330 -1330
  118. package/dist/menu/style.css +2059 -2059
  119. package/dist/menubar/style.css +1480 -1480
  120. package/dist/message/style.css +1453 -1453
  121. package/dist/meter-group/style.css +1256 -1256
  122. package/dist/order-list/style.css +1205 -1205
  123. package/dist/page/style.css +2597 -2597
  124. package/dist/pagination/style.css +1551 -1551
  125. package/dist/panel/style.css +1205 -1205
  126. package/dist/pick-list/style.css +1205 -1205
  127. package/dist/popover/style.css +1299 -1299
  128. package/dist/progress-bar/style.css +1205 -1205
  129. package/dist/progress-spinner/style.css +1205 -1205
  130. package/dist/qr-code/style.css +1903 -1903
  131. package/dist/radio/style.css +1205 -1205
  132. package/dist/rating/style.css +1205 -1205
  133. package/dist/result/style.css +1351 -1351
  134. package/dist/scroll-top/style.css +1336 -1336
  135. package/dist/scrollbar/style.css +1338 -1338
  136. package/dist/segmented/style.css +1205 -1205
  137. package/dist/select/style.css +2115 -2115
  138. package/dist/select-button/style.css +1314 -1314
  139. package/dist/shared/styles/control-affix-icon.css +110 -110
  140. package/dist/shared/styles/control-suffix.css +118 -118
  141. package/dist/shared/styles/select-overlay.css +177 -177
  142. package/dist/sidebar/style.css +1279 -1279
  143. package/dist/skeleton/style.css +1205 -1205
  144. package/dist/slider/style.css +1418 -1418
  145. package/dist/space/style.css +1205 -1205
  146. package/dist/speed-dial/style.css +1205 -1205
  147. package/dist/split-button/style.css +2119 -2119
  148. package/dist/splitter/style.css +1205 -1205
  149. package/dist/statistic/style.css +1205 -1205
  150. package/dist/status/style.css +1395 -1395
  151. package/dist/stepper/style.css +1357 -1357
  152. package/dist/styles/base.css +804 -804
  153. package/dist/switch/style.css +1336 -1336
  154. package/dist/table/style.css +1840 -1840
  155. package/dist/tabs/style.css +1501 -1501
  156. package/dist/tag/style.css +1205 -1205
  157. package/dist/terminal/style.css +1282 -1282
  158. package/dist/textarea/style.css +1476 -1476
  159. package/dist/theme/styles.css +401 -401
  160. package/dist/tiered-menu/style.css +1461 -1461
  161. package/dist/time-picker/style.css +1660 -1660
  162. package/dist/timeline/style.css +1493 -1493
  163. package/dist/toast/style.css +1903 -1903
  164. package/dist/toggle-button/style.css +1205 -1205
  165. package/dist/toolbar/style.css +1205 -1205
  166. package/dist/tooltip/style.css +1205 -1205
  167. package/dist/tour/style.css +1903 -1903
  168. package/dist/tree/style.css +1205 -1205
  169. package/dist/tree-select/style.css +1913 -1913
  170. package/dist/typography/style.css +1351 -1351
  171. package/dist/virtual-scroller/style.css +1366 -1366
  172. package/dist/watermark/style.css +1205 -1205
  173. package/package.json +2 -1
@@ -1,453 +1,453 @@
1
- /* --- Form: DatePicker --- */
2
- .m-datepicker,
3
- .m-datepicker__panel {
4
- --m-datepicker-calendar-cell-size: var(--m-control-affix-size, 2rem);
5
- --m-datepicker-day-size: var(--m-datepicker-calendar-cell-size);
6
- --m-datepicker-grid-gap: 0.125rem;
7
- --m-datepicker-panel-min-width: calc(
8
- 7 * var(--m-datepicker-calendar-cell-size) + 6 *
9
- var(--m-datepicker-grid-gap) + 2 * var(--m-space-3)
10
- );
11
- --m-datepicker-shortcuts-width: 6rem;
12
- }
13
-
14
- .m-datepicker {
15
- display: inline-flex;
16
- flex-direction: column;
17
- gap: var(--m-space-2);
18
- position: relative;
19
- }
20
-
21
- .m-datepicker--fluid {
22
- display: flex;
23
- width: 100%;
24
- }
25
-
26
- .m-datepicker__label {
27
- color: var(--m-color-text);
28
- font-family: var(--m-font-sans);
29
- font-size: var(--m-font-size-md);
30
- font-weight: 500;
31
- }
32
-
33
- .m-datepicker__help {
34
- color: var(--m-color-text-muted);
35
- font-size: var(--m-font-size-xs);
36
- margin: 0;
37
- }
38
-
39
- .m-datepicker__help--invalid {
40
- color: var(--m-color-danger);
41
- }
42
-
43
- .m-datepicker__control {
44
- position: relative;
45
- }
46
-
47
- .m-datepicker__control:has(.m-datepicker__input) {
48
- align-items: center;
49
- background: var(--m-color-surface);
50
- border: var(--m-border-width) solid var(--m-color-border);
51
- border-radius: var(--m-radius-control);
52
- box-sizing: border-box;
53
- display: flex;
54
- max-width: 100%;
55
- min-height: var(--m-control-height-medium);
56
- transition:
57
- border-color var(--m-motion-fast) var(--m-motion-ease),
58
- box-shadow var(--m-motion-fast) var(--m-motion-ease);
59
- }
60
-
61
- .m-datepicker__control:has(.m-datepicker__input):hover:not(:focus-within) {
62
- border-color: var(--m-color-primary-hover);
63
- }
64
-
65
- .m-datepicker__control:has(.m-datepicker__input):focus-within,
66
- .m-datepicker--open .m-datepicker__control:has(.m-datepicker__input) {
67
- border-color: var(--m-color-primary);
68
- box-shadow: var(--m-focus-shadow);
69
- }
70
-
71
- .m-datepicker--invalid .m-datepicker__control:has(.m-datepicker__input) {
72
- border-color: var(--m-color-danger);
73
- }
74
-
75
- .m-datepicker--invalid .m-datepicker__control:has(.m-datepicker__input):focus-within,
76
- .m-datepicker--invalid.m-datepicker--open
77
- .m-datepicker__control:has(.m-datepicker__input) {
78
- border-color: var(--m-color-danger);
79
- box-shadow: var(--m-focus-shadow-danger);
80
- }
81
-
82
- .m-datepicker__input {
83
- background: transparent;
84
- border: 0;
85
- border-radius: 0;
86
- box-shadow: none;
87
- color: var(--m-color-text);
88
- cursor: pointer;
89
- flex: 1 1 auto;
90
- font-family: var(--m-font-sans);
91
- font-size: var(--m-control-font-medium);
92
- height: calc(var(--m-control-height-medium) - 2 * var(--m-border-width));
93
- line-height: calc(var(--m-control-height-medium) - 2 * var(--m-border-width));
94
- min-height: 0;
95
- min-width: 0;
96
- padding: 0 var(--m-control-padding-x-medium);
97
- width: 100%;
98
- }
99
-
100
- .m-datepicker--small .m-datepicker__control:has(.m-datepicker__input) {
101
- min-height: var(--m-control-height-small);
102
- }
103
-
104
- .m-datepicker--small .m-datepicker__input {
105
- font-size: var(--m-control-font-small);
106
- height: calc(var(--m-control-height-small) - 2 * var(--m-border-width));
107
- line-height: calc(var(--m-control-height-small) - 2 * var(--m-border-width));
108
- padding: 0 var(--m-control-padding-x-small);
109
- }
110
-
111
- .m-datepicker--large .m-datepicker__control:has(.m-datepicker__input) {
112
- min-height: var(--m-control-height-large);
113
- }
114
-
115
- .m-datepicker--large .m-datepicker__input {
116
- font-size: var(--m-control-font-large);
117
- height: calc(var(--m-control-height-large) - 2 * var(--m-border-width));
118
- line-height: calc(var(--m-control-height-large) - 2 * var(--m-border-width));
119
- padding: 0 var(--m-control-padding-x-large);
120
- }
121
-
122
- .m-datepicker__input:focus,
123
- .m-datepicker__input:focus-visible {
124
- box-shadow: none;
125
- outline: none;
126
- }
127
-
128
- .m-datepicker--disabled {
129
- background-color: var(--m-color-bg-disabled);
130
- color: var(--m-color-text-disabled);
131
- cursor: not-allowed;
132
- opacity: 1;
133
- pointer-events: none;
134
- }
135
-
136
- .m-datepicker__clear {
137
- align-items: center;
138
- align-self: center;
139
- background: transparent;
140
- border: 0;
141
- border-radius: var(--m-radius-sm);
142
- color: var(--m-color-text-muted);
143
- cursor: pointer;
144
- display: inline-flex;
145
- flex: 0 0 auto;
146
- font: inherit;
147
- height: var(--m-control-affix-size);
148
- justify-content: center;
149
- padding: 0;
150
- width: var(--m-control-affix-size);
151
- }
152
-
153
- .m-datepicker__clear:hover:not(:disabled) {
154
- color: var(--m-color-text);
155
- }
156
-
157
- .m-datepicker__clear:focus-visible {
158
- box-shadow: var(--m-focus-shadow);
159
- outline: none;
160
- }
161
-
162
- .m-datepicker__panel {
163
- background: var(--m-color-surface);
164
- border: var(--m-border-width) solid var(--m-color-border);
165
- border-radius: var(--m-radius-md);
166
- box-shadow: var(--m-shadow-md);
167
- margin-top: var(--m-space-1);
168
- min-width: max(100%, var(--m-datepicker-panel-min-width));
169
- padding: var(--m-space-3);
170
- position: absolute;
171
- top: 100%;
172
- width: max-content;
173
- z-index: var(--m-z-popper);
174
- }
175
-
176
- .m-datepicker__panel--teleported {
177
- margin-top: 0;
178
- min-width: var(--m-datepicker-panel-min-width);
179
- position: fixed;
180
- top: auto;
181
- z-index: var(--m-z-dropdown);
182
- }
183
-
184
- .m-datepicker__calendar {
185
- flex: 0 0 auto;
186
- }
187
-
188
- .m-datepicker__header {
189
- align-items: center;
190
- display: flex;
191
- justify-content: space-between;
192
- margin-bottom: var(--m-space-2);
193
- }
194
-
195
- .m-datepicker__month {
196
- font-weight: 500;
197
- }
198
-
199
- .m-datepicker__nav {
200
- align-items: center;
201
- background: transparent;
202
- border: 0;
203
- border-radius: var(--m-radius-sm);
204
- color: var(--m-color-text);
205
- cursor: pointer;
206
- display: inline-flex;
207
- font: inherit;
208
- justify-content: center;
209
- line-height: 1;
210
- padding: var(--m-space-1) var(--m-space-2);
211
- }
212
-
213
- .m-datepicker__nav:hover {
214
- background: color-mix(
215
- in srgb,
216
- var(--m-color-primary) 10%,
217
- var(--m-color-surface)
218
- );
219
- }
220
-
221
- .m-datepicker__nav:focus-visible {
222
- box-shadow: var(--m-focus-shadow);
223
- outline: none;
224
- }
225
-
226
- .m-datepicker__weekdays,
227
- .m-datepicker__grid {
228
- display: grid;
229
- gap: var(--m-datepicker-grid-gap);
230
- grid-template-columns: repeat(
231
- 7,
232
- var(--m-datepicker-calendar-cell-size, var(--m-control-affix-size, 2rem))
233
- );
234
- place-items: center;
235
- }
236
-
237
- .m-datepicker__weekdays {
238
- color: var(--m-color-text-muted);
239
- font-size: var(--m-font-size-xs);
240
- margin-bottom: var(--m-space-1);
241
- text-align: center;
242
- }
243
-
244
- .m-datepicker__day {
245
- background: transparent;
246
- border: 0;
247
- border-radius: var(--m-radius-sm);
248
- color: var(--m-color-text);
249
- cursor: pointer;
250
- font-family: var(--m-font-sans);
251
- height: var(--m-datepicker-day-size);
252
- transition: background-color var(--m-motion-fast) var(--m-motion-ease),
253
- color var(--m-motion-fast) var(--m-motion-ease);
254
- width: var(--m-datepicker-day-size);
255
- }
256
-
257
- .m-datepicker__day--other {
258
- color: var(--m-color-text-muted);
259
- opacity: var(--m-opacity-disabled);
260
- }
261
-
262
- .m-datepicker__day--selected {
263
- background: var(--m-color-primary);
264
- color: var(--m-color-on-emphasis);
265
- }
266
-
267
- .m-datepicker__day:hover:not(:disabled):not(.m-datepicker__day--selected) {
268
- background: color-mix(
269
- in srgb,
270
- var(--m-color-primary) 12%,
271
- var(--m-color-surface)
272
- );
273
- }
274
-
275
- .m-datepicker__day:disabled {
276
- color: var(--m-color-text-disabled);
277
- cursor: not-allowed;
278
- opacity: 1;
279
- }
280
-
281
- .m-datepicker__day:focus-visible {
282
- box-shadow: var(--m-focus-shadow);
283
- outline: none;
284
- }
285
-
286
- .m-datepicker__panel--with-shortcuts {
287
- display: flex;
288
- gap: var(--m-space-3);
289
- }
290
-
291
- .m-datepicker__shortcuts {
292
- display: grid;
293
- gap: var(--m-space-1);
294
- min-width: var(--m-datepicker-shortcuts-width);
295
- }
296
-
297
- .m-datepicker__shortcut {
298
- background: transparent;
299
- border: 0;
300
- border-radius: var(--m-radius-sm);
301
- color: var(--m-color-text);
302
- cursor: pointer;
303
- font-family: var(--m-font-sans);
304
- padding: var(--m-space-1) var(--m-space-2);
305
- text-align: left;
306
- transition: background-color var(--m-motion-fast) var(--m-motion-ease),
307
- color var(--m-motion-fast) var(--m-motion-ease);
308
- }
309
-
310
- .m-datepicker__shortcut:hover {
311
- background: color-mix(
312
- in srgb,
313
- var(--m-color-primary) 10%,
314
- var(--m-color-surface)
315
- );
316
- color: var(--m-color-primary);
317
- }
318
-
319
- .m-datepicker__shortcut:focus-visible {
320
- box-shadow: var(--m-focus-shadow);
321
- outline: none;
322
- }
323
-
324
- .m-datepicker__day--in-range {
325
- background: color-mix(
326
- in srgb,
327
- var(--m-color-primary) 16%,
328
- var(--m-color-surface)
329
- );
330
- border-radius: 0;
331
- }
332
-
333
- .m-datepicker__day--range-start {
334
- border-radius: var(--m-radius-sm) 0 0 var(--m-radius-sm);
335
- }
336
-
337
- .m-datepicker__day--range-end {
338
- border-radius: 0 var(--m-radius-sm) var(--m-radius-sm) 0;
339
- }
340
-
341
- .m-datepicker__body {
342
- display: flex;
343
- flex-direction: column;
344
- gap: var(--m-space-3);
345
- }
346
-
347
- .m-datepicker__panel--with-time .m-datepicker__body {
348
- flex-direction: row;
349
- align-items: stretch;
350
- }
351
-
352
- .m-datepicker__month-grid,
353
- .m-datepicker__year-grid {
354
- display: grid;
355
- gap: var(--m-datepicker-grid-gap);
356
- grid-template-columns: repeat(3, minmax(4.5rem, 1fr));
357
- place-items: stretch;
358
- }
359
-
360
- .m-datepicker__cell {
361
- background: transparent;
362
- border: 0;
363
- border-radius: var(--m-radius-sm);
364
- color: var(--m-color-text);
365
- cursor: pointer;
366
- font-family: var(--m-font-sans);
367
- min-height: var(--m-datepicker-day-size);
368
- padding: var(--m-space-2) var(--m-space-1);
369
- transition:
370
- background-color var(--m-motion-fast) var(--m-motion-ease),
371
- color var(--m-motion-fast) var(--m-motion-ease);
372
- }
373
-
374
- .m-datepicker__cell--selected {
375
- background: var(--m-color-primary);
376
- color: var(--m-color-on-emphasis);
377
- }
378
-
379
- .m-datepicker__cell:hover:not(.m-datepicker__cell--selected) {
380
- background: color-mix(
381
- in srgb,
382
- var(--m-color-primary) 12%,
383
- var(--m-color-surface)
384
- );
385
- }
386
-
387
- .m-datepicker__cell:focus-visible {
388
- box-shadow: var(--m-focus-shadow);
389
- outline: none;
390
- }
391
-
392
- .m-datepicker__time {
393
- display: flex;
394
- gap: var(--m-space-1);
395
- max-height: calc(
396
- 6 * var(--m-datepicker-day-size) + 5 * var(--m-datepicker-grid-gap) +
397
- 2.5rem
398
- );
399
- min-width: 0;
400
- }
401
-
402
- .m-datepicker__time-col {
403
- display: flex;
404
- flex-direction: column;
405
- gap: 0.125rem;
406
- max-height: 100%;
407
- min-width: 2.5rem;
408
- overflow-y: auto;
409
- overscroll-behavior: contain;
410
- }
411
-
412
- .m-datepicker__time-item {
413
- background: transparent;
414
- border: 0;
415
- border-radius: var(--m-radius-sm);
416
- color: var(--m-color-text);
417
- cursor: pointer;
418
- flex: 0 0 auto;
419
- font-family: var(--m-font-sans);
420
- font-variant-numeric: tabular-nums;
421
- height: var(--m-datepicker-day-size);
422
- line-height: var(--m-datepicker-day-size);
423
- padding: 0;
424
- text-align: center;
425
- width: 100%;
426
- }
427
-
428
- .m-datepicker__time-item--selected {
429
- background: var(--m-color-primary);
430
- color: var(--m-color-on-emphasis);
431
- }
432
-
433
- .m-datepicker__time-item:hover:not(.m-datepicker__time-item--selected) {
434
- background: color-mix(
435
- in srgb,
436
- var(--m-color-primary) 12%,
437
- var(--m-color-surface)
438
- );
439
- }
440
-
441
- .m-datepicker__time-item:focus-visible {
442
- box-shadow: var(--m-focus-shadow);
443
- outline: none;
444
- }
445
-
446
- /* Time-only panel: stack columns without calendar */
447
- .m-datepicker__panel--time-only .m-datepicker__body {
448
- flex-direction: row;
449
- }
450
-
451
- .m-datepicker__panel--time-only .m-datepicker__time {
452
- max-height: 14rem;
453
- }
1
+ /* --- Form: DatePicker --- */
2
+ .m-datepicker,
3
+ .m-datepicker__panel {
4
+ --m-datepicker-calendar-cell-size: var(--m-control-affix-size, 2rem);
5
+ --m-datepicker-day-size: var(--m-datepicker-calendar-cell-size);
6
+ --m-datepicker-grid-gap: 0.125rem;
7
+ --m-datepicker-panel-min-width: calc(
8
+ 7 * var(--m-datepicker-calendar-cell-size) + 6 *
9
+ var(--m-datepicker-grid-gap) + 2 * var(--m-space-3)
10
+ );
11
+ --m-datepicker-shortcuts-width: 6rem;
12
+ }
13
+
14
+ .m-datepicker {
15
+ display: inline-flex;
16
+ flex-direction: column;
17
+ gap: var(--m-space-2);
18
+ position: relative;
19
+ }
20
+
21
+ .m-datepicker--fluid {
22
+ display: flex;
23
+ width: 100%;
24
+ }
25
+
26
+ .m-datepicker__label {
27
+ color: var(--m-color-text);
28
+ font-family: var(--m-font-sans);
29
+ font-size: var(--m-font-size-md);
30
+ font-weight: 500;
31
+ }
32
+
33
+ .m-datepicker__help {
34
+ color: var(--m-color-text-muted);
35
+ font-size: var(--m-font-size-xs);
36
+ margin: 0;
37
+ }
38
+
39
+ .m-datepicker__help--invalid {
40
+ color: var(--m-color-danger);
41
+ }
42
+
43
+ .m-datepicker__control {
44
+ position: relative;
45
+ }
46
+
47
+ .m-datepicker__control:has(.m-datepicker__input) {
48
+ align-items: center;
49
+ background: var(--m-color-surface);
50
+ border: var(--m-border-width) solid var(--m-color-border);
51
+ border-radius: var(--m-radius-control);
52
+ box-sizing: border-box;
53
+ display: flex;
54
+ max-width: 100%;
55
+ min-height: var(--m-control-height-medium);
56
+ transition:
57
+ border-color var(--m-motion-fast) var(--m-motion-ease),
58
+ box-shadow var(--m-motion-fast) var(--m-motion-ease);
59
+ }
60
+
61
+ .m-datepicker__control:has(.m-datepicker__input):hover:not(:focus-within) {
62
+ border-color: var(--m-color-primary-hover);
63
+ }
64
+
65
+ .m-datepicker__control:has(.m-datepicker__input):focus-within,
66
+ .m-datepicker--open .m-datepicker__control:has(.m-datepicker__input) {
67
+ border-color: var(--m-color-primary);
68
+ box-shadow: var(--m-focus-shadow);
69
+ }
70
+
71
+ .m-datepicker--invalid .m-datepicker__control:has(.m-datepicker__input) {
72
+ border-color: var(--m-color-danger);
73
+ }
74
+
75
+ .m-datepicker--invalid .m-datepicker__control:has(.m-datepicker__input):focus-within,
76
+ .m-datepicker--invalid.m-datepicker--open
77
+ .m-datepicker__control:has(.m-datepicker__input) {
78
+ border-color: var(--m-color-danger);
79
+ box-shadow: var(--m-focus-shadow-danger);
80
+ }
81
+
82
+ .m-datepicker__input {
83
+ background: transparent;
84
+ border: 0;
85
+ border-radius: 0;
86
+ box-shadow: none;
87
+ color: var(--m-color-text);
88
+ cursor: pointer;
89
+ flex: 1 1 auto;
90
+ font-family: var(--m-font-sans);
91
+ font-size: var(--m-control-font-medium);
92
+ height: calc(var(--m-control-height-medium) - 2 * var(--m-border-width));
93
+ line-height: calc(var(--m-control-height-medium) - 2 * var(--m-border-width));
94
+ min-height: 0;
95
+ min-width: 0;
96
+ padding: 0 var(--m-control-padding-x-medium);
97
+ width: 100%;
98
+ }
99
+
100
+ .m-datepicker--small .m-datepicker__control:has(.m-datepicker__input) {
101
+ min-height: var(--m-control-height-small);
102
+ }
103
+
104
+ .m-datepicker--small .m-datepicker__input {
105
+ font-size: var(--m-control-font-small);
106
+ height: calc(var(--m-control-height-small) - 2 * var(--m-border-width));
107
+ line-height: calc(var(--m-control-height-small) - 2 * var(--m-border-width));
108
+ padding: 0 var(--m-control-padding-x-small);
109
+ }
110
+
111
+ .m-datepicker--large .m-datepicker__control:has(.m-datepicker__input) {
112
+ min-height: var(--m-control-height-large);
113
+ }
114
+
115
+ .m-datepicker--large .m-datepicker__input {
116
+ font-size: var(--m-control-font-large);
117
+ height: calc(var(--m-control-height-large) - 2 * var(--m-border-width));
118
+ line-height: calc(var(--m-control-height-large) - 2 * var(--m-border-width));
119
+ padding: 0 var(--m-control-padding-x-large);
120
+ }
121
+
122
+ .m-datepicker__input:focus,
123
+ .m-datepicker__input:focus-visible {
124
+ box-shadow: none;
125
+ outline: none;
126
+ }
127
+
128
+ .m-datepicker--disabled {
129
+ background-color: var(--m-color-bg-disabled);
130
+ color: var(--m-color-text-disabled);
131
+ cursor: not-allowed;
132
+ opacity: 1;
133
+ pointer-events: none;
134
+ }
135
+
136
+ .m-datepicker__clear {
137
+ align-items: center;
138
+ align-self: center;
139
+ background: transparent;
140
+ border: 0;
141
+ border-radius: var(--m-radius-sm);
142
+ color: var(--m-color-text-muted);
143
+ cursor: pointer;
144
+ display: inline-flex;
145
+ flex: 0 0 auto;
146
+ font: inherit;
147
+ height: var(--m-control-affix-size);
148
+ justify-content: center;
149
+ padding: 0;
150
+ width: var(--m-control-affix-size);
151
+ }
152
+
153
+ .m-datepicker__clear:hover:not(:disabled) {
154
+ color: var(--m-color-text);
155
+ }
156
+
157
+ .m-datepicker__clear:focus-visible {
158
+ box-shadow: var(--m-focus-shadow);
159
+ outline: none;
160
+ }
161
+
162
+ .m-datepicker__panel {
163
+ background: var(--m-color-surface);
164
+ border: var(--m-border-width) solid var(--m-color-border);
165
+ border-radius: var(--m-radius-md);
166
+ box-shadow: var(--m-shadow-md);
167
+ margin-top: var(--m-space-1);
168
+ min-width: max(100%, var(--m-datepicker-panel-min-width));
169
+ padding: var(--m-space-3);
170
+ position: absolute;
171
+ top: 100%;
172
+ width: max-content;
173
+ z-index: var(--m-z-popper);
174
+ }
175
+
176
+ .m-datepicker__panel--teleported {
177
+ margin-top: 0;
178
+ min-width: var(--m-datepicker-panel-min-width);
179
+ position: fixed;
180
+ top: auto;
181
+ z-index: var(--m-z-dropdown);
182
+ }
183
+
184
+ .m-datepicker__calendar {
185
+ flex: 0 0 auto;
186
+ }
187
+
188
+ .m-datepicker__header {
189
+ align-items: center;
190
+ display: flex;
191
+ justify-content: space-between;
192
+ margin-bottom: var(--m-space-2);
193
+ }
194
+
195
+ .m-datepicker__month {
196
+ font-weight: 500;
197
+ }
198
+
199
+ .m-datepicker__nav {
200
+ align-items: center;
201
+ background: transparent;
202
+ border: 0;
203
+ border-radius: var(--m-radius-sm);
204
+ color: var(--m-color-text);
205
+ cursor: pointer;
206
+ display: inline-flex;
207
+ font: inherit;
208
+ justify-content: center;
209
+ line-height: 1;
210
+ padding: var(--m-space-1) var(--m-space-2);
211
+ }
212
+
213
+ .m-datepicker__nav:hover {
214
+ background: color-mix(
215
+ in srgb,
216
+ var(--m-color-primary) 10%,
217
+ var(--m-color-surface)
218
+ );
219
+ }
220
+
221
+ .m-datepicker__nav:focus-visible {
222
+ box-shadow: var(--m-focus-shadow);
223
+ outline: none;
224
+ }
225
+
226
+ .m-datepicker__weekdays,
227
+ .m-datepicker__grid {
228
+ display: grid;
229
+ gap: var(--m-datepicker-grid-gap);
230
+ grid-template-columns: repeat(
231
+ 7,
232
+ var(--m-datepicker-calendar-cell-size, var(--m-control-affix-size, 2rem))
233
+ );
234
+ place-items: center;
235
+ }
236
+
237
+ .m-datepicker__weekdays {
238
+ color: var(--m-color-text-muted);
239
+ font-size: var(--m-font-size-xs);
240
+ margin-bottom: var(--m-space-1);
241
+ text-align: center;
242
+ }
243
+
244
+ .m-datepicker__day {
245
+ background: transparent;
246
+ border: 0;
247
+ border-radius: var(--m-radius-sm);
248
+ color: var(--m-color-text);
249
+ cursor: pointer;
250
+ font-family: var(--m-font-sans);
251
+ height: var(--m-datepicker-day-size);
252
+ transition: background-color var(--m-motion-fast) var(--m-motion-ease),
253
+ color var(--m-motion-fast) var(--m-motion-ease);
254
+ width: var(--m-datepicker-day-size);
255
+ }
256
+
257
+ .m-datepicker__day--other {
258
+ color: var(--m-color-text-muted);
259
+ opacity: var(--m-opacity-disabled);
260
+ }
261
+
262
+ .m-datepicker__day--selected {
263
+ background: var(--m-color-primary);
264
+ color: var(--m-color-on-emphasis);
265
+ }
266
+
267
+ .m-datepicker__day:hover:not(:disabled):not(.m-datepicker__day--selected) {
268
+ background: color-mix(
269
+ in srgb,
270
+ var(--m-color-primary) 12%,
271
+ var(--m-color-surface)
272
+ );
273
+ }
274
+
275
+ .m-datepicker__day:disabled {
276
+ color: var(--m-color-text-disabled);
277
+ cursor: not-allowed;
278
+ opacity: 1;
279
+ }
280
+
281
+ .m-datepicker__day:focus-visible {
282
+ box-shadow: var(--m-focus-shadow);
283
+ outline: none;
284
+ }
285
+
286
+ .m-datepicker__panel--with-shortcuts {
287
+ display: flex;
288
+ gap: var(--m-space-3);
289
+ }
290
+
291
+ .m-datepicker__shortcuts {
292
+ display: grid;
293
+ gap: var(--m-space-1);
294
+ min-width: var(--m-datepicker-shortcuts-width);
295
+ }
296
+
297
+ .m-datepicker__shortcut {
298
+ background: transparent;
299
+ border: 0;
300
+ border-radius: var(--m-radius-sm);
301
+ color: var(--m-color-text);
302
+ cursor: pointer;
303
+ font-family: var(--m-font-sans);
304
+ padding: var(--m-space-1) var(--m-space-2);
305
+ text-align: left;
306
+ transition: background-color var(--m-motion-fast) var(--m-motion-ease),
307
+ color var(--m-motion-fast) var(--m-motion-ease);
308
+ }
309
+
310
+ .m-datepicker__shortcut:hover {
311
+ background: color-mix(
312
+ in srgb,
313
+ var(--m-color-primary) 10%,
314
+ var(--m-color-surface)
315
+ );
316
+ color: var(--m-color-primary);
317
+ }
318
+
319
+ .m-datepicker__shortcut:focus-visible {
320
+ box-shadow: var(--m-focus-shadow);
321
+ outline: none;
322
+ }
323
+
324
+ .m-datepicker__day--in-range {
325
+ background: color-mix(
326
+ in srgb,
327
+ var(--m-color-primary) 16%,
328
+ var(--m-color-surface)
329
+ );
330
+ border-radius: 0;
331
+ }
332
+
333
+ .m-datepicker__day--range-start {
334
+ border-radius: var(--m-radius-sm) 0 0 var(--m-radius-sm);
335
+ }
336
+
337
+ .m-datepicker__day--range-end {
338
+ border-radius: 0 var(--m-radius-sm) var(--m-radius-sm) 0;
339
+ }
340
+
341
+ .m-datepicker__body {
342
+ display: flex;
343
+ flex-direction: column;
344
+ gap: var(--m-space-3);
345
+ }
346
+
347
+ .m-datepicker__panel--with-time .m-datepicker__body {
348
+ flex-direction: row;
349
+ align-items: stretch;
350
+ }
351
+
352
+ .m-datepicker__month-grid,
353
+ .m-datepicker__year-grid {
354
+ display: grid;
355
+ gap: var(--m-datepicker-grid-gap);
356
+ grid-template-columns: repeat(3, minmax(4.5rem, 1fr));
357
+ place-items: stretch;
358
+ }
359
+
360
+ .m-datepicker__cell {
361
+ background: transparent;
362
+ border: 0;
363
+ border-radius: var(--m-radius-sm);
364
+ color: var(--m-color-text);
365
+ cursor: pointer;
366
+ font-family: var(--m-font-sans);
367
+ min-height: var(--m-datepicker-day-size);
368
+ padding: var(--m-space-2) var(--m-space-1);
369
+ transition:
370
+ background-color var(--m-motion-fast) var(--m-motion-ease),
371
+ color var(--m-motion-fast) var(--m-motion-ease);
372
+ }
373
+
374
+ .m-datepicker__cell--selected {
375
+ background: var(--m-color-primary);
376
+ color: var(--m-color-on-emphasis);
377
+ }
378
+
379
+ .m-datepicker__cell:hover:not(.m-datepicker__cell--selected) {
380
+ background: color-mix(
381
+ in srgb,
382
+ var(--m-color-primary) 12%,
383
+ var(--m-color-surface)
384
+ );
385
+ }
386
+
387
+ .m-datepicker__cell:focus-visible {
388
+ box-shadow: var(--m-focus-shadow);
389
+ outline: none;
390
+ }
391
+
392
+ .m-datepicker__time {
393
+ display: flex;
394
+ gap: var(--m-space-1);
395
+ max-height: calc(
396
+ 6 * var(--m-datepicker-day-size) + 5 * var(--m-datepicker-grid-gap) +
397
+ 2.5rem
398
+ );
399
+ min-width: 0;
400
+ }
401
+
402
+ .m-datepicker__time-col {
403
+ display: flex;
404
+ flex-direction: column;
405
+ gap: 0.125rem;
406
+ max-height: 100%;
407
+ min-width: 2.5rem;
408
+ overflow-y: auto;
409
+ overscroll-behavior: contain;
410
+ }
411
+
412
+ .m-datepicker__time-item {
413
+ background: transparent;
414
+ border: 0;
415
+ border-radius: var(--m-radius-sm);
416
+ color: var(--m-color-text);
417
+ cursor: pointer;
418
+ flex: 0 0 auto;
419
+ font-family: var(--m-font-sans);
420
+ font-variant-numeric: tabular-nums;
421
+ height: var(--m-datepicker-day-size);
422
+ line-height: var(--m-datepicker-day-size);
423
+ padding: 0;
424
+ text-align: center;
425
+ width: 100%;
426
+ }
427
+
428
+ .m-datepicker__time-item--selected {
429
+ background: var(--m-color-primary);
430
+ color: var(--m-color-on-emphasis);
431
+ }
432
+
433
+ .m-datepicker__time-item:hover:not(.m-datepicker__time-item--selected) {
434
+ background: color-mix(
435
+ in srgb,
436
+ var(--m-color-primary) 12%,
437
+ var(--m-color-surface)
438
+ );
439
+ }
440
+
441
+ .m-datepicker__time-item:focus-visible {
442
+ box-shadow: var(--m-focus-shadow);
443
+ outline: none;
444
+ }
445
+
446
+ /* Time-only panel: stack columns without calendar */
447
+ .m-datepicker__panel--time-only .m-datepicker__body {
448
+ flex-direction: row;
449
+ }
450
+
451
+ .m-datepicker__panel--time-only .m-datepicker__time {
452
+ max-height: 14rem;
453
+ }