morya-ui 0.2.7 → 0.2.9

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 (226) hide show
  1. package/CHANGELOG.md +43 -0
  2. package/README.md +1 -0
  3. package/README.zh-CN.md +1 -0
  4. package/dist/{Button--RkQybU-.js → Button-DO5oukfg.js} +1 -1
  5. package/dist/Icon-B6IBrJ5S.js +606 -0
  6. package/dist/{Pagination-BKvR-RUW.js → Pagination-CUwCtWhz.js} +1 -1
  7. package/dist/Renderable-DHU4Jcfw.js +20 -0
  8. package/dist/accordion/style.css +26 -23
  9. package/dist/auto-complete/index.js +1 -1
  10. package/dist/auto-complete/style.css +64 -40
  11. package/dist/avatar/index.js +1 -1
  12. package/dist/avatar/style.css +26 -23
  13. package/dist/badge/style.css +26 -23
  14. package/dist/block-ui/style.css +26 -23
  15. package/dist/breadcrumb/style.css +26 -23
  16. package/dist/button/index.js +1 -1
  17. package/dist/button/style.css +26 -23
  18. package/dist/card/style.css +26 -23
  19. package/dist/carousel/index.js +1 -1
  20. package/dist/carousel/style.css +26 -23
  21. package/dist/cascade-select/index.js +1 -1
  22. package/dist/cascade-select/style.css +27 -24
  23. package/dist/checkbox/style.css +26 -23
  24. package/dist/chip/index.js +1 -1
  25. package/dist/chip/style.css +26 -23
  26. package/dist/command-menu/index.js +2 -2
  27. package/dist/command-menu/style.css +26 -23
  28. package/dist/component-registry.d.ts.map +1 -1
  29. package/dist/components/AutoComplete/styles.css +38 -17
  30. package/dist/components/Carousel/Carousel.vue.d.ts +1 -1
  31. package/dist/components/ConfirmPopup/ConfirmPopup.vue.d.ts +1 -1
  32. package/dist/components/DatePicker/styles.css +65 -21
  33. package/dist/components/Icon/icon-categories.d.ts +21 -0
  34. package/dist/components/Icon/icon-categories.d.ts.map +1 -0
  35. package/dist/components/Icon/icons-tabler.d.ts +77 -0
  36. package/dist/components/Icon/icons-tabler.d.ts.map +1 -0
  37. package/dist/components/Icon/icons-types.d.ts +36 -0
  38. package/dist/components/Icon/icons-types.d.ts.map +1 -0
  39. package/dist/components/Icon/icons.d.ts +75 -32
  40. package/dist/components/Icon/icons.d.ts.map +1 -1
  41. package/dist/components/Icon/index.d.ts +2 -0
  42. package/dist/components/Icon/index.d.ts.map +1 -1
  43. package/dist/components/IconField/IconField.vue.d.ts +3 -1
  44. package/dist/components/IconField/IconField.vue.d.ts.map +1 -1
  45. package/dist/components/IconField/styles.css +306 -31
  46. package/dist/components/Input/Input.vue.d.ts.map +1 -1
  47. package/dist/components/Input/styles.css +172 -33
  48. package/dist/components/InputNumber/styles.css +103 -40
  49. package/dist/components/InputPassword/InputPassword.vue.d.ts.map +1 -1
  50. package/dist/components/InputPassword/styles.css +79 -79
  51. package/dist/components/Layout/LayoutContent.vue.d.ts +4 -8
  52. package/dist/components/Layout/LayoutContent.vue.d.ts.map +1 -1
  53. package/dist/components/Layout/LayoutSider.vue.d.ts +4 -6
  54. package/dist/components/Layout/LayoutSider.vue.d.ts.map +1 -1
  55. package/dist/components/Layout/composables/useLayoutRegionStyle.d.ts +2 -0
  56. package/dist/components/Layout/composables/useLayoutRegionStyle.d.ts.map +1 -1
  57. package/dist/components/Layout/styles.css +7 -42
  58. package/dist/components/Layout/types.d.ts +4 -7
  59. package/dist/components/Layout/types.d.ts.map +1 -1
  60. package/dist/components/Loading/Loading.vue.d.ts +25 -0
  61. package/dist/components/Loading/Loading.vue.d.ts.map +1 -0
  62. package/dist/components/Loading/LoadingIndicator.vue.d.ts +13 -0
  63. package/dist/components/Loading/LoadingIndicator.vue.d.ts.map +1 -0
  64. package/dist/components/Loading/directive.d.ts +12 -0
  65. package/dist/components/Loading/directive.d.ts.map +1 -0
  66. package/dist/components/Loading/index.d.ts +8 -0
  67. package/dist/components/Loading/index.d.ts.map +1 -0
  68. package/dist/components/Loading/loading.d.ts +35 -0
  69. package/dist/components/Loading/loading.d.ts.map +1 -0
  70. package/dist/components/Loading/styles.css +386 -0
  71. package/dist/components/Loading/types.d.ts +74 -0
  72. package/dist/components/Loading/types.d.ts.map +1 -0
  73. package/dist/components/Loading/useLoading.d.ts +11 -0
  74. package/dist/components/Loading/useLoading.d.ts.map +1 -0
  75. package/dist/components/Menu/styles.css +4 -1
  76. package/dist/components/Page/PageContent.vue.d.ts +2 -2
  77. package/dist/components/ProgressSpinner/ProgressSpinner.vue.d.ts +1 -1
  78. package/dist/components/Rating/Rating.vue.d.ts +1 -1
  79. package/dist/components/Table/Table.vue.d.ts +1 -1
  80. package/dist/components/Textarea/styles.css +15 -1
  81. package/dist/config-provider/style.css +198 -56
  82. package/dist/confirm-dialog/index.js +11 -11
  83. package/dist/confirm-dialog/style.css +26 -23
  84. package/dist/confirm-popup/index.js +2 -2
  85. package/dist/confirm-popup/style.css +26 -23
  86. package/dist/content-h8POj44-.js +28 -0
  87. package/dist/context-menu/index.js +2 -2
  88. package/dist/context-menu/style.css +26 -23
  89. package/dist/data-view/index.js +1 -1
  90. package/dist/data-view/style.css +26 -23
  91. package/dist/date-picker/index.js +1 -1
  92. package/dist/date-picker/style.css +91 -44
  93. package/dist/dialog/index.js +2 -2
  94. package/dist/dialog/style.css +26 -23
  95. package/dist/divider/style.css +26 -23
  96. package/dist/dock/index.js +2 -2
  97. package/dist/dock/style.css +26 -23
  98. package/dist/drawer/index.js +1 -1
  99. package/dist/drawer/style.css +26 -23
  100. package/dist/dropdown/index.js +2 -2
  101. package/dist/dropdown/style.css +26 -23
  102. package/dist/empty/index.js +1 -1
  103. package/dist/empty/style.css +26 -23
  104. package/dist/fieldset/index.js +1 -1
  105. package/dist/fieldset/style.css +26 -23
  106. package/dist/file-upload/index.js +1 -1
  107. package/dist/file-upload/style.css +26 -23
  108. package/dist/flex/style.css +26 -23
  109. package/dist/float-label/style.css +26 -23
  110. package/dist/fluid/style.css +26 -23
  111. package/dist/form/style.css +26 -23
  112. package/dist/gallery/index.js +1 -1
  113. package/dist/gallery/style.css +26 -23
  114. package/dist/grid/style.css +26 -23
  115. package/dist/icon/index.js +212 -2
  116. package/dist/icon/style.css +26 -23
  117. package/dist/icon-field/index.js +41 -7
  118. package/dist/icon-field/style.css +672 -54
  119. package/dist/icon-field/style.js +1 -0
  120. package/dist/{icon-xUOyawgJ.js → icon-iOBeyIRp.js} +1 -1
  121. package/dist/index.d.ts +10 -1
  122. package/dist/index.d.ts.map +1 -1
  123. package/dist/index.js +4722 -3962
  124. package/dist/inplace/style.css +26 -23
  125. package/dist/input/index.js +78 -80
  126. package/dist/input/style.css +198 -56
  127. package/dist/input-color/style.css +26 -23
  128. package/dist/input-group/style.css +26 -23
  129. package/dist/input-number/index.js +1 -1
  130. package/dist/input-number/style.css +129 -63
  131. package/dist/input-otp/style.css +26 -23
  132. package/dist/input-password/index.js +83 -82
  133. package/dist/input-password/style.css +105 -102
  134. package/dist/input-tags/index.js +1 -1
  135. package/dist/input-tags/style.css +26 -23
  136. package/dist/knob/style.css +26 -23
  137. package/dist/label/style.css +26 -23
  138. package/dist/layout/index.js +60 -83
  139. package/dist/layout/style.css +33 -65
  140. package/dist/listbox/style.css +26 -23
  141. package/dist/loading/index.js +467 -0
  142. package/dist/loading/style.css +1380 -0
  143. package/dist/loading/style.js +3 -0
  144. package/dist/mega-menu/index.js +2 -2
  145. package/dist/mega-menu/style.css +26 -23
  146. package/dist/menu/index.js +2 -2
  147. package/dist/menu/style.css +30 -24
  148. package/dist/menubar/index.js +2 -2
  149. package/dist/menubar/style.css +26 -23
  150. package/dist/message/index.js +8 -7
  151. package/dist/message/style.css +26 -23
  152. package/dist/meter-group/style.css +26 -23
  153. package/dist/order-list/index.js +1 -1
  154. package/dist/order-list/style.css +26 -23
  155. package/dist/page/index.js +1 -1
  156. package/dist/page/style.css +26 -23
  157. package/dist/pagination/index.js +1 -1
  158. package/dist/pagination/style.css +26 -23
  159. package/dist/panel/index.js +1 -1
  160. package/dist/panel/style.css +26 -23
  161. package/dist/pick-list/index.js +1 -1
  162. package/dist/pick-list/style.css +26 -23
  163. package/dist/popover/style.css +26 -23
  164. package/dist/progress-bar/style.css +26 -23
  165. package/dist/progress-spinner/style.css +26 -23
  166. package/dist/radio/style.css +26 -23
  167. package/dist/rating/index.js +1 -1
  168. package/dist/rating/style.css +26 -23
  169. package/dist/resolver-map.d.ts.map +1 -1
  170. package/dist/resolver.js +1 -0
  171. package/dist/result/index.js +1 -1
  172. package/dist/result/style.css +26 -23
  173. package/dist/scroll-top/index.js +1 -1
  174. package/dist/scroll-top/style.css +26 -23
  175. package/dist/scrollbar/style.css +26 -23
  176. package/dist/select/index.js +1 -1
  177. package/dist/select/style.css +27 -24
  178. package/dist/select-button/style.css +26 -23
  179. package/dist/shared/config.d.ts.map +1 -1
  180. package/dist/shared/styles/control-suffix.css +1 -1
  181. package/dist/sidebar/index.js +2 -2
  182. package/dist/sidebar/style.css +26 -23
  183. package/dist/skeleton/style.css +26 -23
  184. package/dist/slider/style.css +26 -23
  185. package/dist/space/style.css +26 -23
  186. package/dist/speed-dial/index.js +2 -2
  187. package/dist/speed-dial/style.css +26 -23
  188. package/dist/split-button/index.js +1 -1
  189. package/dist/split-button/style.css +26 -23
  190. package/dist/splitter/style.css +26 -23
  191. package/dist/status/index.js +1 -1
  192. package/dist/status/style.css +26 -23
  193. package/dist/stepper/index.js +1 -1
  194. package/dist/stepper/style.css +26 -23
  195. package/dist/styles/base.css +26 -23
  196. package/dist/styles.css +1 -1
  197. package/dist/switch/style.css +26 -23
  198. package/dist/table/index.js +2 -2
  199. package/dist/table/style.css +26 -23
  200. package/dist/tabs/index.js +1 -1
  201. package/dist/tabs/style.css +26 -23
  202. package/dist/tag/index.js +1 -1
  203. package/dist/tag/style.css +26 -23
  204. package/dist/terminal/style.css +26 -23
  205. package/dist/textarea/index.js +1 -1
  206. package/dist/textarea/style.css +41 -24
  207. package/dist/tiered-menu/index.js +1 -1
  208. package/dist/tiered-menu/style.css +26 -23
  209. package/dist/timeline/index.js +1 -1
  210. package/dist/timeline/style.css +26 -23
  211. package/dist/toast/index.js +13 -12
  212. package/dist/toast/style.css +26 -23
  213. package/dist/toggle-button/index.js +2 -2
  214. package/dist/toggle-button/style.css +26 -23
  215. package/dist/toolbar/style.css +26 -23
  216. package/dist/tooltip/style.css +26 -23
  217. package/dist/tree/index.js +1 -1
  218. package/dist/tree/style.css +26 -23
  219. package/dist/tree-select/index.js +1 -1
  220. package/dist/tree-select/style.css +27 -24
  221. package/dist/tree-table/index.js +1 -1
  222. package/dist/tree-table/style.css +26 -23
  223. package/dist/virtual-scroller/style.css +26 -23
  224. package/package.json +9 -2
  225. package/dist/Icon-DfpIfo2L.js +0 -521
  226. package/dist/Renderable-BaaCI4tS.js +0 -45
@@ -0,0 +1,386 @@
1
+ /* —— Feedback: Loading —— */
2
+
3
+ .m-loading {
4
+ position: relative;
5
+ }
6
+
7
+ .m-loading--fullscreen {
8
+ inset: 0;
9
+ position: fixed;
10
+ z-index: var(--m-loading-z-index, calc(var(--m-z-base) + 200));
11
+ }
12
+
13
+ .m-loading__content {
14
+ position: relative;
15
+ }
16
+
17
+ .m-loading--active .m-loading__content {
18
+ pointer-events: none;
19
+ user-select: none;
20
+ }
21
+
22
+ .m-loading-parent--relative {
23
+ position: relative;
24
+ }
25
+
26
+ .m-loading-mask {
27
+ --m-loading-z-index: calc(var(--m-z-base) + 200);
28
+ --m-loading-mask-bg: color-mix(in srgb, var(--m-color-surface) 80%, transparent);
29
+ align-items: center;
30
+ background: var(--m-loading-mask-bg);
31
+ display: flex;
32
+ inset: 0;
33
+ justify-content: center;
34
+ position: absolute;
35
+ z-index: 10;
36
+ }
37
+
38
+ .m-loading-mask--fullscreen,
39
+ .m-loading-mask--body {
40
+ position: fixed;
41
+ z-index: var(--m-loading-z-index);
42
+ }
43
+
44
+ .m-loading-mask--body {
45
+ inset: auto;
46
+ }
47
+
48
+ .m-loading-enter-active {
49
+ transition: opacity var(--m-motion-enter) var(--m-motion-ease);
50
+ }
51
+
52
+ .m-loading-leave-active {
53
+ transition: opacity var(--m-motion-exit) var(--m-motion-ease);
54
+ }
55
+
56
+ .m-loading-enter-from,
57
+ .m-loading-leave-to {
58
+ opacity: 0;
59
+ }
60
+
61
+ .m-loading-indicator {
62
+ --m-loading-c1: var(--m-color-primary);
63
+ --m-loading-c2: color-mix(in srgb, var(--m-color-primary) 62%, white);
64
+ --m-loading-c3: var(--m-color-success);
65
+ --m-loading-c4: var(--m-color-warning);
66
+ --m-loading-c5: var(--m-color-danger);
67
+ --m-loading-c6: var(--m-color-text-muted);
68
+ --m-loading-spin: var(--m-motion-spin);
69
+ --m-loading-aurora-glow: 3s;
70
+ --m-loading-bounce: 0.6s;
71
+ --m-loading-wave: var(--m-motion-spin-medium);
72
+ --m-loading-pulse: 1.8s;
73
+ --m-loading-stardust: 1.6s;
74
+ --m-loading-circular-rotate: 2s;
75
+ --m-loading-circular-dash: var(--m-motion-spin-dash);
76
+ --m-loading-scale: 1;
77
+
78
+ align-items: center;
79
+ display: inline-flex;
80
+ flex-direction: column;
81
+ font-family: var(--m-font-sans);
82
+ gap: var(--m-space-3);
83
+ justify-content: center;
84
+ }
85
+
86
+ .m-loading-indicator__graphic {
87
+ align-items: center;
88
+ display: inline-flex;
89
+ justify-content: center;
90
+ transform: scale(var(--m-loading-scale));
91
+ }
92
+
93
+ .m-loading-indicator__tip {
94
+ color: var(--m-color-text-muted);
95
+ font-size: var(--m-font-size-sm);
96
+ line-height: 1;
97
+ margin: 0;
98
+ }
99
+
100
+ .m-loading-indicator--small {
101
+ --m-loading-scale: 0.85;
102
+ }
103
+
104
+ .m-loading-indicator--large {
105
+ --m-loading-scale: 1.15;
106
+ }
107
+
108
+ .m-loading-aurora,
109
+ .m-loading-pulse,
110
+ .m-loading-stardust {
111
+ height: 3.75rem;
112
+ position: relative;
113
+ width: 3.75rem;
114
+ }
115
+
116
+ .m-loading-aurora__ring {
117
+ animation: m-loading-spin var(--m-loading-spin) cubic-bezier(0.5, 0, 0.5, 1) infinite;
118
+ border: 4px solid transparent;
119
+ border-bottom-color: var(--m-loading-c2);
120
+ border-left-color: var(--m-loading-c3);
121
+ border-radius: 50%;
122
+ border-right-color: var(--m-loading-c5);
123
+ border-top-color: var(--m-loading-c1);
124
+ box-sizing: border-box;
125
+ height: 100%;
126
+ position: relative;
127
+ width: 100%;
128
+ z-index: 2;
129
+ }
130
+
131
+ .m-loading-aurora__glow {
132
+ animation: m-loading-spin var(--m-loading-aurora-glow) linear infinite reverse;
133
+ background: conic-gradient(
134
+ from 0deg,
135
+ var(--m-loading-c1),
136
+ var(--m-loading-c5),
137
+ var(--m-loading-c2),
138
+ var(--m-loading-c3),
139
+ var(--m-loading-c1)
140
+ );
141
+ border-radius: 50%;
142
+ filter: blur(10px);
143
+ inset: -6px;
144
+ opacity: 0.22;
145
+ position: absolute;
146
+ z-index: 1;
147
+ }
148
+
149
+ .m-loading-bounce {
150
+ align-items: flex-end;
151
+ display: flex;
152
+ gap: var(--m-space-3);
153
+ height: 3.125rem;
154
+ }
155
+
156
+ .m-loading-bounce__ball {
157
+ animation: m-loading-bounce var(--m-loading-bounce) cubic-bezier(0.34, 1.2, 0.64, 1) infinite alternate;
158
+ background: var(--m-loading-c1);
159
+ border-radius: 50%;
160
+ display: block;
161
+ height: 1rem;
162
+ width: 1rem;
163
+ }
164
+
165
+ .m-loading-bounce__ball:nth-child(1) {
166
+ animation-delay: 0s;
167
+ background: var(--m-loading-c5);
168
+ }
169
+
170
+ .m-loading-bounce__ball:nth-child(2) {
171
+ animation-delay: 0.15s;
172
+ background: var(--m-loading-c2);
173
+ }
174
+
175
+ .m-loading-bounce__ball:nth-child(3) {
176
+ animation-delay: 0.3s;
177
+ background: var(--m-loading-c6);
178
+ }
179
+
180
+ .m-loading-wave {
181
+ align-items: center;
182
+ display: flex;
183
+ gap: 0.375rem;
184
+ height: 3.125rem;
185
+ }
186
+
187
+ .m-loading-wave__bar {
188
+ animation: m-loading-wave var(--m-loading-wave) ease-in-out infinite alternate;
189
+ background: var(--m-loading-c1);
190
+ border-radius: 0.375rem;
191
+ display: block;
192
+ height: 2.875rem;
193
+ transform-origin: center center;
194
+ width: 0.5rem;
195
+ }
196
+
197
+ .m-loading-wave__bar:nth-child(1) {
198
+ animation-delay: 0s;
199
+ background: var(--m-loading-c1);
200
+ }
201
+
202
+ .m-loading-wave__bar:nth-child(2) {
203
+ animation-delay: 0.09s;
204
+ background: var(--m-loading-c5);
205
+ }
206
+
207
+ .m-loading-wave__bar:nth-child(3) {
208
+ animation-delay: 0.18s;
209
+ background: var(--m-loading-c2);
210
+ }
211
+
212
+ .m-loading-wave__bar:nth-child(4) {
213
+ animation-delay: 0.27s;
214
+ background: var(--m-loading-c3);
215
+ }
216
+
217
+ .m-loading-wave__bar:nth-child(5) {
218
+ animation-delay: 0.36s;
219
+ background: var(--m-loading-c6);
220
+ }
221
+
222
+ .m-loading-pulse__ring {
223
+ animation: m-loading-pulse var(--m-loading-pulse) ease-out infinite;
224
+ border: 3px solid var(--m-loading-c2);
225
+ border-radius: 50%;
226
+ box-sizing: border-box;
227
+ inset: 0;
228
+ position: absolute;
229
+ }
230
+
231
+ .m-loading-pulse__ring:nth-child(1) {
232
+ animation-delay: 0s;
233
+ border-color: var(--m-loading-c1);
234
+ }
235
+
236
+ .m-loading-pulse__ring:nth-child(2) {
237
+ animation-delay: 0.45s;
238
+ border-color: var(--m-loading-c5);
239
+ }
240
+
241
+ .m-loading-pulse__ring:nth-child(3) {
242
+ animation-delay: 0.9s;
243
+ border-color: var(--m-loading-c2);
244
+ }
245
+
246
+ .m-loading-pulse__ring:nth-child(4) {
247
+ animation-delay: 1.35s;
248
+ border-color: var(--m-loading-c3);
249
+ }
250
+
251
+ .m-loading-stardust__dot {
252
+ --i: 0;
253
+ animation: m-loading-stardust var(--m-loading-stardust) ease-in-out infinite;
254
+ background: var(--m-loading-c1);
255
+ border-radius: 50%;
256
+ height: 0.5rem;
257
+ left: 50%;
258
+ position: absolute;
259
+ top: 50%;
260
+ transform: translate(-50%, -50%) rotate(calc(var(--i) * 45deg)) translateX(22px);
261
+ width: 0.5rem;
262
+ }
263
+
264
+ .m-loading-stardust__dot:nth-child(1) { animation-delay: 0s; background: var(--m-loading-c1); }
265
+ .m-loading-stardust__dot:nth-child(2) { animation-delay: 0.08s; background: var(--m-loading-c5); }
266
+ .m-loading-stardust__dot:nth-child(3) { animation-delay: 0.16s; background: var(--m-loading-c4); }
267
+ .m-loading-stardust__dot:nth-child(4) { animation-delay: 0.24s; background: var(--m-loading-c2); }
268
+ .m-loading-stardust__dot:nth-child(5) { animation-delay: 0.32s; background: var(--m-loading-c3); }
269
+ .m-loading-stardust__dot:nth-child(6) { animation-delay: 0.4s; background: var(--m-loading-c6); }
270
+ .m-loading-stardust__dot:nth-child(7) { animation-delay: 0.48s; background: color-mix(in srgb, var(--m-loading-c1) 55%, white); }
271
+ .m-loading-stardust__dot:nth-child(8) { animation-delay: 0.56s; background: var(--m-loading-c2); }
272
+
273
+ .m-loading-circular {
274
+ align-items: center;
275
+ display: inline-flex;
276
+ justify-content: center;
277
+ }
278
+
279
+ .m-loading-circular__svg {
280
+ animation: m-loading-circular-rotate var(--m-loading-circular-rotate) linear infinite;
281
+ display: inline-block;
282
+ height: 2.625rem;
283
+ width: 2.625rem;
284
+ }
285
+
286
+ .m-loading-circular__path {
287
+ animation: m-loading-circular-dash var(--m-loading-circular-dash) ease-in-out infinite;
288
+ fill: none;
289
+ stroke: var(--m-loading-c1);
290
+ stroke-linecap: round;
291
+ stroke-width: 2;
292
+ }
293
+
294
+ @keyframes m-loading-spin {
295
+ from { transform: rotate(0deg); }
296
+ to { transform: rotate(360deg); }
297
+ }
298
+
299
+ @keyframes m-loading-bounce {
300
+ from { transform: translateY(0) scale(1); }
301
+ to { transform: translateY(-34px) scale(1.1); }
302
+ }
303
+
304
+ @keyframes m-loading-wave {
305
+ from { transform: scaleY(0.26); }
306
+ to { transform: scaleY(1); }
307
+ }
308
+
309
+ @keyframes m-loading-pulse {
310
+ from { opacity: 1; transform: scale(0.15); }
311
+ to { opacity: 0; transform: scale(1.6); }
312
+ }
313
+
314
+ @keyframes m-loading-stardust {
315
+ 0%,
316
+ 100% {
317
+ opacity: 0.2;
318
+ transform: translate(-50%, -50%) rotate(calc(var(--i) * 45deg)) translateX(22px) scale(0.3);
319
+ }
320
+
321
+ 50% {
322
+ opacity: 1;
323
+ transform: translate(-50%, -50%) rotate(calc(var(--i) * 45deg + 180deg)) translateX(28px) scale(1.2);
324
+ }
325
+ }
326
+
327
+ @keyframes m-loading-circular-rotate {
328
+ to { transform: rotate(360deg); }
329
+ }
330
+
331
+ @keyframes m-loading-circular-dash {
332
+ 0% {
333
+ stroke-dasharray: 1, 200;
334
+ stroke-dashoffset: 0;
335
+ }
336
+
337
+ 50% {
338
+ stroke-dasharray: 90, 150;
339
+ stroke-dashoffset: -40px;
340
+ }
341
+
342
+ 100% {
343
+ stroke-dasharray: 90, 150;
344
+ stroke-dashoffset: -120px;
345
+ }
346
+ }
347
+
348
+ @media (prefers-reduced-motion: reduce) {
349
+ html:not([data-m-ignore-reduced-motion]) .m-loading-aurora__ring,
350
+ html:not([data-m-ignore-reduced-motion]) .m-loading-aurora__glow,
351
+ html:not([data-m-ignore-reduced-motion]) .m-loading-bounce__ball,
352
+ html:not([data-m-ignore-reduced-motion]) .m-loading-wave__bar,
353
+ html:not([data-m-ignore-reduced-motion]) .m-loading-pulse__ring,
354
+ html:not([data-m-ignore-reduced-motion]) .m-loading-stardust__dot,
355
+ html:not([data-m-ignore-reduced-motion]) .m-loading-circular__svg,
356
+ html:not([data-m-ignore-reduced-motion]) .m-loading-circular__path,
357
+ html:not([data-m-ignore-reduced-motion]) .m-loading-enter-active,
358
+ html:not([data-m-ignore-reduced-motion]) .m-loading-leave-active {
359
+ animation: none;
360
+ transition: none;
361
+ }
362
+ }
363
+
364
+ [data-m-motion="reduced"] .m-loading-aurora__ring,
365
+ [data-m-motion="reduced"] .m-loading-aurora__glow,
366
+ [data-m-motion="reduced"] .m-loading-bounce__ball,
367
+ [data-m-motion="reduced"] .m-loading-wave__bar,
368
+ [data-m-motion="reduced"] .m-loading-pulse__ring,
369
+ [data-m-motion="reduced"] .m-loading-stardust__dot,
370
+ [data-m-motion="reduced"] .m-loading-circular__svg,
371
+ [data-m-motion="reduced"] .m-loading-circular__path,
372
+ [data-m-motion="reduced"] .m-loading-enter-active,
373
+ [data-m-motion="reduced"] .m-loading-leave-active,
374
+ [data-m-motion="none"] .m-loading-aurora__ring,
375
+ [data-m-motion="none"] .m-loading-aurora__glow,
376
+ [data-m-motion="none"] .m-loading-bounce__ball,
377
+ [data-m-motion="none"] .m-loading-wave__bar,
378
+ [data-m-motion="none"] .m-loading-pulse__ring,
379
+ [data-m-motion="none"] .m-loading-stardust__dot,
380
+ [data-m-motion="none"] .m-loading-circular__svg,
381
+ [data-m-motion="none"] .m-loading-circular__path,
382
+ [data-m-motion="none"] .m-loading-enter-active,
383
+ [data-m-motion="none"] .m-loading-leave-active {
384
+ animation: none;
385
+ transition: none;
386
+ }
@@ -0,0 +1,74 @@
1
+ import { MRenderable } from '../../shared/content';
2
+ import { RootPassThrough } from '../../shared/passThrough';
3
+ import { MSizeInput } from '../../shared/types';
4
+ /** Built-in spinner graphics. */
5
+ export declare const LOADING_EFFECTS: readonly ["circular", "aurora", "bounce", "wave", "pulse", "stardust"];
6
+ export type LoadingEffect = (typeof LOADING_EFFECTS)[number];
7
+ export declare function isLoadingEffect(value: unknown): value is LoadingEffect;
8
+ export declare function normalizeLoadingEffect(value: unknown): LoadingEffect;
9
+ export interface LoadingProps {
10
+ pt?: RootPassThrough;
11
+ /**
12
+ * Whether the mask is visible when wrapping content or using `fullscreen`.
13
+ * A bare indicator (no default slot and not fullscreen) is always shown.
14
+ */
15
+ loading?: boolean;
16
+ /** Spinner graphic. Defaults to `circular`. */
17
+ effect?: LoadingEffect;
18
+ /** Caption under the spinner. Hidden when omitted. */
19
+ text?: string;
20
+ /** Accessible name. Falls back to `text`, then the locale `loading` string. */
21
+ ariaLabel?: string;
22
+ size?: MSizeInput;
23
+ /** Mask background. Any CSS color. */
24
+ background?: string;
25
+ /** Extra class on the mask. */
26
+ customClass?: string;
27
+ /** Cover the viewport (teleported to `body`). */
28
+ fullscreen?: boolean;
29
+ /** Prevent document scrolling while the mask is visible. */
30
+ lock?: boolean;
31
+ /** Delay in ms before showing the mask. */
32
+ delay?: number;
33
+ }
34
+ /** Options for `v-loading` when the binding is an object. */
35
+ export interface LoadingBinding {
36
+ loading?: boolean;
37
+ text?: string;
38
+ effect?: LoadingEffect;
39
+ background?: string;
40
+ customClass?: string;
41
+ size?: MSizeInput;
42
+ fullscreen?: boolean;
43
+ lock?: boolean;
44
+ body?: boolean;
45
+ delay?: number;
46
+ /** Custom indicator content. */
47
+ spinner?: MRenderable;
48
+ }
49
+ /** Options for `loading.service()`. */
50
+ export interface LoadingServiceOptions {
51
+ /** Element or selector to cover. Omitted means fullscreen. */
52
+ target?: string | HTMLElement;
53
+ /** Mount the mask on `document.body`, positioned over `target`. */
54
+ body?: boolean;
55
+ /** Cover the viewport. Defaults to `true` when `target` is omitted. */
56
+ fullscreen?: boolean;
57
+ /** Prevent document scrolling while open. */
58
+ lock?: boolean;
59
+ text?: string;
60
+ effect?: LoadingEffect;
61
+ background?: string;
62
+ customClass?: string;
63
+ size?: MSizeInput;
64
+ delay?: number;
65
+ /** Custom indicator content. When set, built-in effects are skipped. */
66
+ spinner?: MRenderable;
67
+ }
68
+ export interface LoadingServiceInstance {
69
+ close: () => void;
70
+ setText: (text: string) => void;
71
+ /** Immediate teardown without the leave transition. */
72
+ destroy: () => void;
73
+ }
74
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/Loading/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AACvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAC/D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAEpD,iCAAiC;AACjC,eAAO,MAAM,eAAe,wEAAyE,CAAA;AAErG,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAA;AAI5D,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,aAAa,CAEtE;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,GAAG,aAAa,CAEpE;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,CAAC,EAAE,eAAe,CAAA;IACpB;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,+CAA+C;IAC/C,MAAM,CAAC,EAAE,aAAa,CAAA;IACtB,sDAAsD;IACtD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,+EAA+E;IAC/E,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,UAAU,CAAA;IACjB,sCAAsC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,+BAA+B;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,iDAAiD;IACjD,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,4DAA4D;IAC5D,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,2CAA2C;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,6DAA6D;AAC7D,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,aAAa,CAAA;IACtB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,CAAC,EAAE,UAAU,CAAA;IACjB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,gCAAgC;IAChC,OAAO,CAAC,EAAE,WAAW,CAAA;CACtB;AAED,uCAAuC;AACvC,MAAM,WAAW,qBAAqB;IACpC,8DAA8D;IAC9D,MAAM,CAAC,EAAE,MAAM,GAAG,WAAW,CAAA;IAC7B,mEAAmE;IACnE,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,uEAAuE;IACvE,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,6CAA6C;IAC7C,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,aAAa,CAAA;IACtB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,CAAC,EAAE,UAAU,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,wEAAwE;IACxE,OAAO,CAAC,EAAE,WAAW,CAAA;CACtB;AAED,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,MAAM,IAAI,CAAA;IACjB,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IAC/B,uDAAuD;IACvD,OAAO,EAAE,MAAM,IAAI,CAAA;CACpB"}
@@ -0,0 +1,11 @@
1
+ import { LoadingServiceInstance, LoadingServiceOptions } from './types';
2
+ export interface UseLoadingReturn {
3
+ open: (options?: LoadingServiceOptions) => LoadingServiceInstance;
4
+ close: () => void;
5
+ setText: (text: string) => void;
6
+ }
7
+ /**
8
+ * Imperative loading helper that closes automatically when the caller unmounts.
9
+ */
10
+ export declare function useLoading(defaults?: LoadingServiceOptions): UseLoadingReturn;
11
+ //# sourceMappingURL=useLoading.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useLoading.d.ts","sourceRoot":"","sources":["../../../src/components/Loading/useLoading.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAA;AAI5E,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE,qBAAqB,KAAK,sBAAsB,CAAA;IACjE,KAAK,EAAE,MAAM,IAAI,CAAA;IACjB,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;CAChC;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,QAAQ,GAAE,qBAA0B,GAAG,gBAAgB,CAwBjF"}
@@ -42,7 +42,10 @@
42
42
  border: 0;
43
43
  border-radius: 0;
44
44
  min-width: 0;
45
- padding: 0;
45
+ /* Keep a block inset so the first item does not sit on a brand rule or sider edge.
46
+ Horizontal embed resets this below. */
47
+ padding-block: var(--m-space-2);
48
+ padding-inline: 0;
46
49
  width: 100%;
47
50
  }
48
51
 
@@ -1,12 +1,12 @@
1
- import { PageContentProps, PageContentDensity, PageContentWidth } from './types';
1
+ import { PageContentProps, PageContentWidth, PageContentDensity } from './types';
2
2
  import { DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
3
3
  declare var __VLS_1: {};
4
4
  type __VLS_Slots = {} & {
5
5
  default?: (props: typeof __VLS_1) => any;
6
6
  };
7
7
  declare const __VLS_base: DefineComponent<PageContentProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<PageContentProps> & Readonly<{}>, {
8
- density: PageContentDensity;
9
8
  width: PageContentWidth;
9
+ density: PageContentDensity;
10
10
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
11
11
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
12
12
  declare const _default: typeof __VLS_export;
@@ -5,10 +5,10 @@ type __VLS_Slots = {} & {
5
5
  default?: (props: typeof __VLS_1) => any;
6
6
  };
7
7
  declare const __VLS_base: DefineComponent<ProgressSpinnerProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<ProgressSpinnerProps> & Readonly<{}>, {
8
+ delay: number;
8
9
  show: boolean;
9
10
  strokeWidth: string;
10
11
  animationDuration: string;
11
- delay: number;
12
12
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
13
13
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
14
14
  declare const _default: typeof __VLS_export;
@@ -16,8 +16,8 @@ declare const __VLS_base: DefineComponent<RatingProps, {}, {}, {}, {}, Component
16
16
  modelValue: number;
17
17
  disabled: boolean;
18
18
  invalid: boolean;
19
- cancel: boolean;
20
19
  ariaLabel: string;
20
+ cancel: boolean;
21
21
  readonly: boolean;
22
22
  stars: number;
23
23
  allowClear: boolean | null;
@@ -1028,9 +1028,9 @@ declare const __VLS_base: DefineComponent<TableProps, {
1028
1028
  loading: boolean;
1029
1029
  page: number;
1030
1030
  filterOptions: TableFilterOption[] | null;
1031
+ ariaLabel: string;
1031
1032
  filters: Record<string, unknown> | null;
1032
1033
  maxHeight: number | null;
1033
- ariaLabel: string;
1034
1034
  bordered: boolean;
1035
1035
  paginator: boolean;
1036
1036
  rowsPerPage: number;
@@ -47,6 +47,20 @@
47
47
  padding: var(--m-space-4) var(--m-control-padding-x-large);
48
48
  }
49
49
 
50
+ .m-textarea-field__control--clearable .m-textarea {
51
+ padding-right: var(--m-control-affix-gap);
52
+ }
53
+
54
+ .m-textarea-field__control--clearable .m-textarea--small,
55
+ .m-textarea-field__control--clearable .m-textarea--sm {
56
+ padding-right: var(--m-control-affix-gap);
57
+ }
58
+
59
+ .m-textarea-field__control--clearable .m-textarea--large,
60
+ .m-textarea-field__control--clearable .m-textarea--lg {
61
+ padding-right: calc(var(--m-control-affix-gap) + var(--m-space-1));
62
+ }
63
+
50
64
  .m-textarea--auto-resize {
51
65
  overflow: hidden;
52
66
  }
@@ -68,8 +82,8 @@
68
82
  justify-content: center;
69
83
  padding: 0;
70
84
  position: absolute;
71
- right: var(--m-space-1);
72
85
  top: var(--m-space-2);
86
+ right: 0;
73
87
  width: var(--m-control-affix-size);
74
88
  z-index: 1;
75
89
  }