niuma-ui 2.1.0 → 2.1.2
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/CHANGELOG.md +19 -0
- package/dist/components/auto-complete/src/RsAutoComplete.d.ts +2 -2
- package/dist/components/code-block/src/RsCodeBlock.css +26 -26
- package/dist/components/code-block/src/RsCodeBlock.impl.js +2 -2
- package/dist/components/code-block/src/RsCodeBlock.js +1 -1
- package/dist/components/context-menu/src/RsContextMenu.css +19 -19
- package/dist/components/date-picker/src/RsDatePicker.d.ts +2 -2
- package/dist/components/date-picker/src/RsDateTimePicker.d.ts +2 -2
- package/dist/components/dialog/src/RsConfirmDialog.css +25 -25
- package/dist/components/dialog/src/RsConfirmDialog.impl.js +4 -4
- package/dist/components/dialog/src/RsConfirmDialog.js +1 -1
- package/dist/components/dialog/src/RsDialog.css +63 -63
- package/dist/components/dialog/src/RsDialog.impl.js +56 -11
- package/dist/components/dialog/src/RsDialog.js +1 -1
- package/dist/components/dialog/src/dialog-window.d.ts +1 -0
- package/dist/components/dialog/src/dialog-window.js +1 -0
- package/dist/components/dynamic-tags/src/RsDynamicTags.d.ts +2 -2
- package/dist/components/icon/src/RsIcon.css +5 -5
- package/dist/components/icon/src/RsIcon.d.ts +1 -1
- package/dist/components/icon/src/RsIcon.impl.js +1 -1
- package/dist/components/icon/src/RsIcon.js +1 -1
- package/dist/components/input/src/RsInput.d.ts +2 -2
- package/dist/components/mentions/src/RsMentions.d.ts +2 -2
- package/dist/components/select/src/RsSelect.d.ts +2 -2
- package/dist/components/tabs/src/RsTabs.d.ts +3 -3
- package/dist/components/tabs/src/RsTabs.impl.js +1 -1
- package/dist/components/textarea/src/RsTextarea.d.ts +2 -2
- package/dist/components/time-picker/src/RsTimePicker.d.ts +2 -2
- package/dist/components/tree/src/RsTree.css +74 -74
- package/dist/components/tree/src/RsTree.js +1 -1
- package/dist/components/tree-select/src/RsTreeSelect.d.ts +2 -2
- package/dist/icons/host.d.ts +11 -0
- package/dist/icons/host.js +30 -0
- package/dist/icons/lucide.js +10 -3
- package/dist/icons/registry.js +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/styles.css +27 -11
- package/dist/utils/rs-clipboard.d.ts +1 -1
- package/dist/utils/rs-clipboard.js +17 -7
- package/dist/vite-plugins/niuma-ui-host.d.ts +2 -1
- package/dist/vite-plugins/niuma-ui-host.js +25 -6
- package/package.json +1 -1
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
|
|
2
|
-
.rs-dialog[data-v-
|
|
2
|
+
.rs-dialog[data-v-b62d3cc1] {
|
|
3
3
|
display: contents;
|
|
4
4
|
}
|
|
5
|
-
.rs-dialog__anchor[data-v-
|
|
5
|
+
.rs-dialog__anchor[data-v-b62d3cc1] {
|
|
6
6
|
display: none;
|
|
7
7
|
}
|
|
8
|
-
.rs-dialog__backdrop[data-v-
|
|
8
|
+
.rs-dialog__backdrop[data-v-b62d3cc1] {
|
|
9
9
|
position: fixed;
|
|
10
10
|
inset: 0;
|
|
11
11
|
z-index: var(--rs-z-modal);
|
|
12
12
|
background: transparent;
|
|
13
13
|
}
|
|
14
|
-
.rs-dialog__overlay[data-v-
|
|
14
|
+
.rs-dialog__overlay[data-v-b62d3cc1] {
|
|
15
15
|
background: var(--rs-dialog-overlay-bg);
|
|
16
16
|
backdrop-filter: blur(var(--rs-dialog-overlay-blur)) saturate(120%);
|
|
17
17
|
-webkit-backdrop-filter: blur(var(--rs-dialog-overlay-blur)) saturate(120%);
|
|
18
|
-
animation: rs-dialog-overlay-in-
|
|
18
|
+
animation: rs-dialog-overlay-in-b62d3cc1 220ms ease;
|
|
19
19
|
}
|
|
20
|
-
.rs-dialog__content[data-v-
|
|
20
|
+
.rs-dialog__content[data-v-b62d3cc1] {
|
|
21
21
|
position: fixed;
|
|
22
22
|
left: 50%;
|
|
23
23
|
top: calc(
|
|
@@ -45,40 +45,40 @@
|
|
|
45
45
|
outline: none;
|
|
46
46
|
color: var(--rs-dialog-title-fg);
|
|
47
47
|
}
|
|
48
|
-
.rs-dialog__content[data-v-
|
|
48
|
+
.rs-dialog__content[data-v-b62d3cc1]:focus-visible {
|
|
49
49
|
box-shadow:
|
|
50
50
|
var(--rs-dialog-shadow),
|
|
51
51
|
0 0 0 var(--rs-focus-ring-width) var(--rs-focus-ring);
|
|
52
52
|
}
|
|
53
|
-
[data-rs-theme='light'] .rs-dialog__content--form[data-v-
|
|
54
|
-
[data-rs-theme='light'] .rs-dialog__content--confirm[data-v-
|
|
53
|
+
[data-rs-theme='light'] .rs-dialog__content--form[data-v-b62d3cc1],
|
|
54
|
+
[data-rs-theme='light'] .rs-dialog__content--confirm[data-v-b62d3cc1] {
|
|
55
55
|
background: color-mix(in srgb, var(--rs-dialog-bg) 94%, transparent);
|
|
56
56
|
backdrop-filter: blur(24px) saturate(180%);
|
|
57
57
|
-webkit-backdrop-filter: blur(24px) saturate(180%);
|
|
58
58
|
}
|
|
59
|
-
[data-rs-theme='light'] .rs-dialog__content--window[data-v-
|
|
59
|
+
[data-rs-theme='light'] .rs-dialog__content--window[data-v-b62d3cc1] {
|
|
60
60
|
background: var(--rs-dialog-bg);
|
|
61
61
|
}
|
|
62
|
-
.rs-dialog__content--form[data-state='open'][data-v-
|
|
63
|
-
.rs-dialog__content--confirm[data-state='open'][data-v-
|
|
64
|
-
animation: rs-dialog-pop-in-
|
|
62
|
+
.rs-dialog__content--form[data-state='open'][data-v-b62d3cc1],
|
|
63
|
+
.rs-dialog__content--confirm[data-state='open'][data-v-b62d3cc1] {
|
|
64
|
+
animation: rs-dialog-pop-in-b62d3cc1 240ms cubic-bezier(0.32, 0.72, 0, 1);
|
|
65
65
|
}
|
|
66
|
-
.rs-dialog__content--window[data-state='open'][data-v-
|
|
67
|
-
animation: rs-dialog-fade-in-
|
|
66
|
+
.rs-dialog__content--window[data-state='open'][data-v-b62d3cc1] {
|
|
67
|
+
animation: rs-dialog-fade-in-b62d3cc1 220ms ease;
|
|
68
68
|
}
|
|
69
|
-
.rs-dialog__content--tone-info[data-v-
|
|
69
|
+
.rs-dialog__content--tone-info[data-v-b62d3cc1] {
|
|
70
70
|
border-color: color-mix(in srgb, var(--rs-info) 46%, var(--rs-dialog-border));
|
|
71
71
|
}
|
|
72
|
-
.rs-dialog__content--tone-success[data-v-
|
|
72
|
+
.rs-dialog__content--tone-success[data-v-b62d3cc1] {
|
|
73
73
|
border-color: color-mix(in srgb, var(--rs-success) 46%, var(--rs-dialog-border));
|
|
74
74
|
}
|
|
75
|
-
.rs-dialog__content--tone-warning[data-v-
|
|
75
|
+
.rs-dialog__content--tone-warning[data-v-b62d3cc1] {
|
|
76
76
|
border-color: color-mix(in srgb, var(--rs-warning) 52%, var(--rs-dialog-border));
|
|
77
77
|
}
|
|
78
|
-
.rs-dialog__content--tone-danger[data-v-
|
|
78
|
+
.rs-dialog__content--tone-danger[data-v-b62d3cc1] {
|
|
79
79
|
border-color: color-mix(in srgb, var(--rs-danger) 52%, var(--rs-dialog-border));
|
|
80
80
|
}
|
|
81
|
-
@keyframes rs-dialog-overlay-in-
|
|
81
|
+
@keyframes rs-dialog-overlay-in-b62d3cc1 {
|
|
82
82
|
from {
|
|
83
83
|
opacity: 0;
|
|
84
84
|
}
|
|
@@ -86,7 +86,7 @@ to {
|
|
|
86
86
|
opacity: 1;
|
|
87
87
|
}
|
|
88
88
|
}
|
|
89
|
-
@keyframes rs-dialog-pop-in-
|
|
89
|
+
@keyframes rs-dialog-pop-in-b62d3cc1 {
|
|
90
90
|
from {
|
|
91
91
|
opacity: 0;
|
|
92
92
|
transform: translate(-50%, -46%) scale(0.96);
|
|
@@ -96,7 +96,7 @@ to {
|
|
|
96
96
|
transform: translate(-50%, -50%) scale(1);
|
|
97
97
|
}
|
|
98
98
|
}
|
|
99
|
-
@keyframes rs-dialog-fade-in-
|
|
99
|
+
@keyframes rs-dialog-fade-in-b62d3cc1 {
|
|
100
100
|
from {
|
|
101
101
|
opacity: 0;
|
|
102
102
|
}
|
|
@@ -104,14 +104,14 @@ to {
|
|
|
104
104
|
opacity: 1;
|
|
105
105
|
}
|
|
106
106
|
}
|
|
107
|
-
.rs-dialog__content--window[data-v-
|
|
107
|
+
.rs-dialog__content--window[data-v-b62d3cc1] {
|
|
108
108
|
left: 50%;
|
|
109
109
|
top: 50%;
|
|
110
110
|
max-width: none;
|
|
111
111
|
max-height: none;
|
|
112
112
|
transform: none;
|
|
113
113
|
}
|
|
114
|
-
.rs-dialog__content--window.rs-dialog__content--bounds-transition[data-v-
|
|
114
|
+
.rs-dialog__content--window.rs-dialog__content--bounds-transition[data-v-b62d3cc1] {
|
|
115
115
|
transition:
|
|
116
116
|
left 220ms cubic-bezier(0.32, 0.72, 0, 1),
|
|
117
117
|
top 220ms cubic-bezier(0.32, 0.72, 0, 1),
|
|
@@ -119,25 +119,25 @@ to {
|
|
|
119
119
|
height 220ms cubic-bezier(0.32, 0.72, 0, 1),
|
|
120
120
|
border-radius 220ms cubic-bezier(0.32, 0.72, 0, 1);
|
|
121
121
|
}
|
|
122
|
-
.rs-dialog__content--sm[data-v-
|
|
122
|
+
.rs-dialog__content--sm[data-v-b62d3cc1] {
|
|
123
123
|
max-width: 24rem;
|
|
124
124
|
}
|
|
125
|
-
.rs-dialog__content--md[data-v-
|
|
125
|
+
.rs-dialog__content--md[data-v-b62d3cc1] {
|
|
126
126
|
max-width: 32rem;
|
|
127
127
|
}
|
|
128
|
-
.rs-dialog__content--lg[data-v-
|
|
128
|
+
.rs-dialog__content--lg[data-v-b62d3cc1] {
|
|
129
129
|
max-width: 42rem;
|
|
130
130
|
}
|
|
131
|
-
.rs-dialog__content--window.rs-dialog__content--sm[data-v-
|
|
132
|
-
.rs-dialog__content--window.rs-dialog__content--md[data-v-
|
|
133
|
-
.rs-dialog__content--window.rs-dialog__content--lg[data-v-
|
|
134
|
-
.rs-dialog__content--window.rs-dialog__content--custom-width[data-v-
|
|
131
|
+
.rs-dialog__content--window.rs-dialog__content--sm[data-v-b62d3cc1],
|
|
132
|
+
.rs-dialog__content--window.rs-dialog__content--md[data-v-b62d3cc1],
|
|
133
|
+
.rs-dialog__content--window.rs-dialog__content--lg[data-v-b62d3cc1],
|
|
134
|
+
.rs-dialog__content--window.rs-dialog__content--custom-width[data-v-b62d3cc1] {
|
|
135
135
|
max-width: none;
|
|
136
136
|
}
|
|
137
|
-
.rs-dialog__content--fullscreen[data-v-
|
|
137
|
+
.rs-dialog__content--fullscreen[data-v-b62d3cc1] {
|
|
138
138
|
border-radius: var(--rs-radius);
|
|
139
139
|
}
|
|
140
|
-
.rs-dialog__header[data-v-
|
|
140
|
+
.rs-dialog__header[data-v-b62d3cc1] {
|
|
141
141
|
display: flex;
|
|
142
142
|
align-items: center;
|
|
143
143
|
justify-content: space-between;
|
|
@@ -151,7 +151,7 @@ to {
|
|
|
151
151
|
background: var(--rs-dialog-header-bg);
|
|
152
152
|
border-block-end: 1px solid var(--rs-dialog-separator);
|
|
153
153
|
}
|
|
154
|
-
.rs-dialog__heading[data-v-
|
|
154
|
+
.rs-dialog__heading[data-v-b62d3cc1] {
|
|
155
155
|
min-width: 0;
|
|
156
156
|
flex: 1;
|
|
157
157
|
display: flex;
|
|
@@ -159,11 +159,11 @@ to {
|
|
|
159
159
|
justify-content: center;
|
|
160
160
|
gap: var(--rs-space-xs);
|
|
161
161
|
}
|
|
162
|
-
.rs-dialog__content--window.rs-dialog__content--draggable .rs-dialog__header[data-v-
|
|
162
|
+
.rs-dialog__content--window.rs-dialog__content--draggable .rs-dialog__header[data-v-b62d3cc1] {
|
|
163
163
|
cursor: move;
|
|
164
164
|
user-select: none;
|
|
165
165
|
}
|
|
166
|
-
.rs-dialog__title[data-v-
|
|
166
|
+
.rs-dialog__title[data-v-b62d3cc1] {
|
|
167
167
|
margin: 0;
|
|
168
168
|
display: inline-flex;
|
|
169
169
|
align-items: center;
|
|
@@ -175,14 +175,14 @@ to {
|
|
|
175
175
|
color: var(--rs-dialog-title-fg);
|
|
176
176
|
text-align: start;
|
|
177
177
|
}
|
|
178
|
-
.rs-dialog__description[data-v-
|
|
178
|
+
.rs-dialog__description[data-v-b62d3cc1] {
|
|
179
179
|
margin: 0;
|
|
180
180
|
font-size: var(--rs-font-size-sm);
|
|
181
181
|
color: var(--rs-dialog-description-fg);
|
|
182
182
|
line-height: var(--rs-line-height-normal);
|
|
183
183
|
text-align: start;
|
|
184
184
|
}
|
|
185
|
-
.rs-dialog__body[data-v-
|
|
185
|
+
.rs-dialog__body[data-v-b62d3cc1] {
|
|
186
186
|
flex: 1;
|
|
187
187
|
min-height: 0;
|
|
188
188
|
overflow: auto;
|
|
@@ -192,15 +192,15 @@ to {
|
|
|
192
192
|
padding-inline: var(--rs-dialog-body-padding-x);
|
|
193
193
|
background: var(--rs-dialog-body-bg);
|
|
194
194
|
}
|
|
195
|
-
.rs-dialog__content--window .rs-dialog__body[data-v-
|
|
195
|
+
.rs-dialog__content--window .rs-dialog__body[data-v-b62d3cc1] {
|
|
196
196
|
display: flex;
|
|
197
197
|
flex-direction: column;
|
|
198
198
|
}
|
|
199
|
-
.rs-dialog__body-placeholder[data-v-
|
|
199
|
+
.rs-dialog__body-placeholder[data-v-b62d3cc1] {
|
|
200
200
|
flex: 1;
|
|
201
201
|
min-height: 0;
|
|
202
202
|
}
|
|
203
|
-
.rs-dialog__footer[data-v-
|
|
203
|
+
.rs-dialog__footer[data-v-b62d3cc1] {
|
|
204
204
|
display: flex;
|
|
205
205
|
align-items: center;
|
|
206
206
|
justify-content: flex-end;
|
|
@@ -215,77 +215,77 @@ to {
|
|
|
215
215
|
background: var(--rs-dialog-footer-bg);
|
|
216
216
|
border-block-start: 1px solid var(--rs-dialog-footer-border);
|
|
217
217
|
}
|
|
218
|
-
.rs-dialog__actions[data-v-
|
|
218
|
+
.rs-dialog__actions[data-v-b62d3cc1] {
|
|
219
219
|
display: inline-flex;
|
|
220
220
|
align-items: center;
|
|
221
221
|
gap: var(--rs-space-xs);
|
|
222
222
|
flex-shrink: 0;
|
|
223
223
|
}
|
|
224
|
-
.rs-dialog__resize-handle[data-v-
|
|
224
|
+
.rs-dialog__resize-handle[data-v-b62d3cc1] {
|
|
225
225
|
position: absolute;
|
|
226
226
|
z-index: 2;
|
|
227
227
|
}
|
|
228
|
-
.rs-dialog__resize-handle--n[data-v-
|
|
229
|
-
.rs-dialog__resize-handle--s[data-v-
|
|
228
|
+
.rs-dialog__resize-handle--n[data-v-b62d3cc1],
|
|
229
|
+
.rs-dialog__resize-handle--s[data-v-b62d3cc1] {
|
|
230
230
|
inset-inline: 0.5rem;
|
|
231
231
|
height: 0.5rem;
|
|
232
232
|
cursor: ns-resize;
|
|
233
233
|
}
|
|
234
|
-
.rs-dialog__resize-handle--n[data-v-
|
|
234
|
+
.rs-dialog__resize-handle--n[data-v-b62d3cc1] {
|
|
235
235
|
top: -0.25rem;
|
|
236
236
|
}
|
|
237
|
-
.rs-dialog__resize-handle--s[data-v-
|
|
237
|
+
.rs-dialog__resize-handle--s[data-v-b62d3cc1] {
|
|
238
238
|
bottom: -0.25rem;
|
|
239
239
|
}
|
|
240
|
-
.rs-dialog__resize-handle--e[data-v-
|
|
241
|
-
.rs-dialog__resize-handle--w[data-v-
|
|
240
|
+
.rs-dialog__resize-handle--e[data-v-b62d3cc1],
|
|
241
|
+
.rs-dialog__resize-handle--w[data-v-b62d3cc1] {
|
|
242
242
|
top: 0.5rem;
|
|
243
243
|
bottom: 0.5rem;
|
|
244
244
|
width: 0.5rem;
|
|
245
245
|
cursor: ew-resize;
|
|
246
246
|
}
|
|
247
|
-
.rs-dialog__resize-handle--e[data-v-
|
|
247
|
+
.rs-dialog__resize-handle--e[data-v-b62d3cc1] {
|
|
248
248
|
right: -0.25rem;
|
|
249
249
|
}
|
|
250
|
-
.rs-dialog__resize-handle--w[data-v-
|
|
250
|
+
.rs-dialog__resize-handle--w[data-v-b62d3cc1] {
|
|
251
251
|
left: -0.25rem;
|
|
252
252
|
}
|
|
253
|
-
.rs-dialog__resize-handle--ne[data-v-
|
|
254
|
-
.rs-dialog__resize-handle--nw[data-v-
|
|
255
|
-
.rs-dialog__resize-handle--se[data-v-
|
|
256
|
-
.rs-dialog__resize-handle--sw[data-v-
|
|
253
|
+
.rs-dialog__resize-handle--ne[data-v-b62d3cc1],
|
|
254
|
+
.rs-dialog__resize-handle--nw[data-v-b62d3cc1],
|
|
255
|
+
.rs-dialog__resize-handle--se[data-v-b62d3cc1],
|
|
256
|
+
.rs-dialog__resize-handle--sw[data-v-b62d3cc1] {
|
|
257
257
|
width: 0.75rem;
|
|
258
258
|
height: 0.75rem;
|
|
259
259
|
}
|
|
260
|
-
.rs-dialog__resize-handle--ne[data-v-
|
|
260
|
+
.rs-dialog__resize-handle--ne[data-v-b62d3cc1] {
|
|
261
261
|
top: -0.25rem;
|
|
262
262
|
right: -0.25rem;
|
|
263
263
|
cursor: nesw-resize;
|
|
264
264
|
}
|
|
265
|
-
.rs-dialog__resize-handle--nw[data-v-
|
|
265
|
+
.rs-dialog__resize-handle--nw[data-v-b62d3cc1] {
|
|
266
266
|
top: -0.25rem;
|
|
267
267
|
left: -0.25rem;
|
|
268
268
|
cursor: nwse-resize;
|
|
269
269
|
}
|
|
270
|
-
.rs-dialog__resize-handle--se[data-v-
|
|
270
|
+
.rs-dialog__resize-handle--se[data-v-b62d3cc1] {
|
|
271
271
|
right: -0.25rem;
|
|
272
272
|
bottom: -0.25rem;
|
|
273
273
|
cursor: nwse-resize;
|
|
274
274
|
}
|
|
275
|
-
.rs-dialog__resize-handle--sw[data-v-
|
|
275
|
+
.rs-dialog__resize-handle--sw[data-v-b62d3cc1] {
|
|
276
276
|
left: -0.25rem;
|
|
277
277
|
bottom: -0.25rem;
|
|
278
278
|
cursor: nesw-resize;
|
|
279
279
|
}
|
|
280
280
|
@media (prefers-reduced-motion: reduce) {
|
|
281
|
-
[data-rs-theme='light'] .rs-dialog__content--form[data-v-
|
|
282
|
-
[data-rs-theme='light'] .rs-dialog__content--confirm[data-v-
|
|
283
|
-
.rs-dialog__overlay[data-v-
|
|
281
|
+
[data-rs-theme='light'] .rs-dialog__content--form[data-v-b62d3cc1],
|
|
282
|
+
[data-rs-theme='light'] .rs-dialog__content--confirm[data-v-b62d3cc1],
|
|
283
|
+
.rs-dialog__overlay[data-v-b62d3cc1] {
|
|
284
284
|
backdrop-filter: none;
|
|
285
285
|
-webkit-backdrop-filter: none;
|
|
286
286
|
background: var(--rs-dialog-bg);
|
|
287
287
|
}
|
|
288
|
-
.rs-dialog__overlay[data-v-
|
|
288
|
+
.rs-dialog__overlay[data-v-b62d3cc1] {
|
|
289
289
|
background: var(--rs-dialog-overlay-bg);
|
|
290
290
|
}
|
|
291
291
|
}
|
|
@@ -3,7 +3,7 @@ import RsButton_default from "../../button/src/RsButton.js";
|
|
|
3
3
|
import { dialogViewportSize } from "./dialog-viewport.js";
|
|
4
4
|
import { acquireDialogScrollLock, claimDialogInert, dialogLayerTick, dialogTargetOwnsTab, isRsDialogWidthPreset, isTopDialogLayer, pushDialogLayer, releaseDialogInert, removeDialogLayer, resolveDialogOverlayStyle, resolveDialogTabTarget, resolveRsDialogCssWidth, resolveRsDialogWidthPx, runRsDialogBeforeClose } from "./dialog-utils.js";
|
|
5
5
|
import { useRsDialogWindow } from "./dialog-window.js";
|
|
6
|
-
import { Fragment, Teleport, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, defineComponent, getCurrentInstance, mergeModels, mergeProps, nextTick, normalizeClass, normalizeStyle, onBeforeUnmount, onMounted, openBlock, ref, renderList, renderSlot, toDisplayString, toRef, unref, useAttrs, useId, useModel, useSlots, watch, withCtx, withModifiers } from "vue";
|
|
6
|
+
import { Fragment, Teleport, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, defineComponent, getCurrentInstance, mergeModels, mergeProps, nextTick, normalizeClass, normalizeStyle, onActivated, onBeforeUnmount, onDeactivated, onMounted, openBlock, ref, renderList, renderSlot, toDisplayString, toRef, unref, useAttrs, useId, useModel, useSlots, watch, withCtx, withModifiers } from "vue";
|
|
7
7
|
//#region src/components/dialog/src/RsDialog.vue?vue&type=script&setup=true&lang.ts
|
|
8
8
|
var _hoisted_1 = [
|
|
9
9
|
"data-rs-theme",
|
|
@@ -348,8 +348,16 @@ var RsDialog_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineC
|
|
|
348
348
|
const active = typeof document === "undefined" ? null : document.activeElement;
|
|
349
349
|
if (!root || active === root || !(active instanceof Node) || !root.contains(active)) queueFocus();
|
|
350
350
|
});
|
|
351
|
+
/** KeepAlive 切走时为 false。必须在 open 的 immediate watch 之前声明。 */
|
|
352
|
+
const pageActive = ref(true);
|
|
353
|
+
let presentedSuspended = false;
|
|
351
354
|
watch(open, (isOpen, wasOpen) => {
|
|
352
355
|
if (isOpen) {
|
|
356
|
+
if (!pageActive.value) {
|
|
357
|
+
presentedSuspended = true;
|
|
358
|
+
if (wasOpen === false) emit("openChange", true);
|
|
359
|
+
return;
|
|
360
|
+
}
|
|
353
361
|
if (wasOpen !== true) {
|
|
354
362
|
rememberTrigger();
|
|
355
363
|
syncChrome();
|
|
@@ -364,6 +372,7 @@ var RsDialog_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineC
|
|
|
364
372
|
syncInert();
|
|
365
373
|
return;
|
|
366
374
|
}
|
|
375
|
+
presentedSuspended = false;
|
|
367
376
|
clearAfterOpenTimer();
|
|
368
377
|
removeDialogLayer(layerId);
|
|
369
378
|
unbindKey();
|
|
@@ -383,7 +392,7 @@ var RsDialog_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineC
|
|
|
383
392
|
props.closeOnOverlayClick,
|
|
384
393
|
dialogLayerTick.value
|
|
385
394
|
], () => {
|
|
386
|
-
if (!open.value || disposed) return;
|
|
395
|
+
if (!open.value || !pageActive.value || disposed) return;
|
|
387
396
|
syncScrollLock();
|
|
388
397
|
syncOutside();
|
|
389
398
|
syncInert();
|
|
@@ -495,7 +504,7 @@ var RsDialog_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineC
|
|
|
495
504
|
emit("confirm");
|
|
496
505
|
if (props.autoCloseOnConfirm) await requestClose("confirm");
|
|
497
506
|
}
|
|
498
|
-
const { isFullscreen, boundsTransitionEnabled, dialogStyle, resizeHandles, setPanelEl, toggleFullscreen, onHeaderPointerDown, onResizePointerDown } = useRsDialogWindow({
|
|
507
|
+
const { isFullscreen, boundsTransitionEnabled, dialogStyle, resizeHandles, setPanelEl, stopInteractions, toggleFullscreen, onHeaderPointerDown, onResizePointerDown } = useRsDialogWindow({
|
|
499
508
|
open,
|
|
500
509
|
widthPreset,
|
|
501
510
|
initialWidth: initialWidthPx,
|
|
@@ -506,11 +515,47 @@ var RsDialog_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineC
|
|
|
506
515
|
boundsTransition: toRef(props, "boundsTransition")
|
|
507
516
|
});
|
|
508
517
|
/**
|
|
509
|
-
*
|
|
510
|
-
*
|
|
518
|
+
* 全屏或可拖动窗口跳出业务挂载点,挂到 body。
|
|
519
|
+
* 挂载点常有 overflow: hidden,拖出后背景会被裁成透明。
|
|
520
|
+
* 还原全屏后,不可拖的对话框仍回到 props.teleportTo。
|
|
521
|
+
* KeepAlive 切走页签时卸掉 body 上的浮层,并放开滚动锁、inert 和 document 监听。
|
|
511
522
|
*/
|
|
523
|
+
function suspendPresentedDialog() {
|
|
524
|
+
if (presentedSuspended || !open.value || disposed) return;
|
|
525
|
+
presentedSuspended = true;
|
|
526
|
+
stopInteractions();
|
|
527
|
+
clearAfterOpenTimer();
|
|
528
|
+
removeDialogLayer(layerId);
|
|
529
|
+
unbindKey();
|
|
530
|
+
unbindOutside();
|
|
531
|
+
releaseScroll?.();
|
|
532
|
+
releaseScroll = null;
|
|
533
|
+
inertGeneration += 1;
|
|
534
|
+
releaseDialogInert(layerId);
|
|
535
|
+
}
|
|
536
|
+
function resumePresentedDialog() {
|
|
537
|
+
if (!presentedSuspended || disposed) return;
|
|
538
|
+
presentedSuspended = false;
|
|
539
|
+
if (!open.value || !pageActive.value) return;
|
|
540
|
+
syncChrome();
|
|
541
|
+
pushDialogLayer(layerId);
|
|
542
|
+
bindKey();
|
|
543
|
+
syncScrollLock();
|
|
544
|
+
syncOutside();
|
|
545
|
+
syncInert();
|
|
546
|
+
queueFocus();
|
|
547
|
+
}
|
|
548
|
+
onActivated(() => {
|
|
549
|
+
pageActive.value = true;
|
|
550
|
+
resumePresentedDialog();
|
|
551
|
+
});
|
|
552
|
+
onDeactivated(() => {
|
|
553
|
+
pageActive.value = false;
|
|
554
|
+
suspendPresentedDialog();
|
|
555
|
+
});
|
|
512
556
|
const resolvedTeleportTo = computed(() => {
|
|
513
|
-
if (
|
|
557
|
+
if (props.teleportTo === false) return false;
|
|
558
|
+
if (isFullscreen.value || enableDraggable.value) return void 0;
|
|
514
559
|
return props.teleportTo;
|
|
515
560
|
});
|
|
516
561
|
const teleportDisabled = computed(() => resolvedTeleportTo.value === false);
|
|
@@ -520,7 +565,7 @@ var RsDialog_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineC
|
|
|
520
565
|
return target;
|
|
521
566
|
});
|
|
522
567
|
watch(resolvedTeleportTo, () => {
|
|
523
|
-
if (!open.value || disposed) return;
|
|
568
|
+
if (!open.value || !pageActive.value || disposed) return;
|
|
524
569
|
syncInert();
|
|
525
570
|
});
|
|
526
571
|
watch(contentRef, (el) => {
|
|
@@ -540,12 +585,12 @@ var RsDialog_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineC
|
|
|
540
585
|
hidden: "",
|
|
541
586
|
class: "rs-dialog__anchor",
|
|
542
587
|
"aria-hidden": "true"
|
|
543
|
-
}, null, 512), (openBlock(), createBlock(Teleport, {
|
|
588
|
+
}, null, 512), open.value && pageActive.value ? (openBlock(), createBlock(Teleport, {
|
|
589
|
+
key: 0,
|
|
544
590
|
defer: "",
|
|
545
591
|
to: teleportTarget.value,
|
|
546
592
|
disabled: teleportDisabled.value
|
|
547
|
-
}, [
|
|
548
|
-
key: 0,
|
|
593
|
+
}, [createElementVNode("div", {
|
|
549
594
|
ref_key: "shellRef",
|
|
550
595
|
ref: shellRef,
|
|
551
596
|
class: "rs-dialog",
|
|
@@ -639,7 +684,7 @@ var RsDialog_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineC
|
|
|
639
684
|
default: withCtx(() => [createTextVNode(toDisplayString(__props.confirmText ?? unref(t)("common.confirm")), 1)]),
|
|
640
685
|
_: 1
|
|
641
686
|
}, 8, ["variant", "loading"])) : createCommentVNode("", true)], 64)) : createCommentVNode("", true)], true)])) : createCommentVNode("", true)
|
|
642
|
-
], 16, _hoisted_2)], 8, _hoisted_1)
|
|
687
|
+
], 16, _hoisted_2)], 8, _hoisted_1)], 8, ["to", "disabled"])) : createCommentVNode("", true)], 64);
|
|
643
688
|
};
|
|
644
689
|
}
|
|
645
690
|
});
|
|
@@ -3,6 +3,6 @@ import _plugin_vue_export_helper_default from "../../../_virtual/_plugin-vue_exp
|
|
|
3
3
|
import RsDialog_vue_vue_type_script_setup_true_lang_default from "./RsDialog.impl.js";
|
|
4
4
|
|
|
5
5
|
//#region src/components/dialog/src/RsDialog.vue
|
|
6
|
-
var RsDialog_default = /*#__PURE__*/ _plugin_vue_export_helper_default(RsDialog_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-
|
|
6
|
+
var RsDialog_default = /*#__PURE__*/ _plugin_vue_export_helper_default(RsDialog_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-b62d3cc1"]]);
|
|
7
7
|
//#endregion
|
|
8
8
|
export { RsDialog_default as default };
|
|
@@ -41,6 +41,7 @@ export declare function useRsDialogWindow(options: {
|
|
|
41
41
|
}>;
|
|
42
42
|
resizeHandles: RsDialogResizeHandle[];
|
|
43
43
|
setPanelEl: (el: HTMLElement | null) => void;
|
|
44
|
+
stopInteractions: () => void;
|
|
44
45
|
toggleFullscreen: () => void;
|
|
45
46
|
onHeaderPointerDown: (event: PointerEvent) => void;
|
|
46
47
|
onResizePointerDown: (handle: RsDialogResizeHandle, event: PointerEvent) => void;
|
|
@@ -76,17 +76,17 @@ type __VLS_Slots = {} & {
|
|
|
76
76
|
trigger?: (props: typeof __VLS_11) => any;
|
|
77
77
|
};
|
|
78
78
|
declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, RsDynamicTagsExpose, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
79
|
+
clear: () => any;
|
|
79
80
|
blur: (event: FocusEvent) => any;
|
|
80
81
|
focus: (event: FocusEvent) => any;
|
|
81
|
-
clear: () => any;
|
|
82
82
|
"update:modelValue": (value: string[]) => any;
|
|
83
83
|
create: (value: string) => any;
|
|
84
84
|
remove: (value: string, index: number) => any;
|
|
85
85
|
reject: (reason: RsDynamicTagsRejectReason, value: string) => any;
|
|
86
86
|
}, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
|
|
87
|
+
onClear?: (() => any) | undefined;
|
|
87
88
|
onBlur?: ((event: FocusEvent) => any) | undefined;
|
|
88
89
|
onFocus?: ((event: FocusEvent) => any) | undefined;
|
|
89
|
-
onClear?: (() => any) | undefined;
|
|
90
90
|
"onUpdate:modelValue"?: ((value: string[]) => any) | undefined;
|
|
91
91
|
onCreate?: ((value: string) => any) | undefined;
|
|
92
92
|
onRemove?: ((value: string, index: number) => any) | undefined;
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
|
|
2
|
-
.rs-icon[data-v-
|
|
2
|
+
.rs-icon[data-v-8513cc7f] {
|
|
3
3
|
display: inline-block;
|
|
4
4
|
flex-shrink: 0;
|
|
5
5
|
vertical-align: middle;
|
|
6
6
|
}
|
|
7
|
-
.rs-icon--spin[data-v-
|
|
8
|
-
animation: rs-icon-spin-
|
|
7
|
+
.rs-icon--spin[data-v-8513cc7f] {
|
|
8
|
+
animation: rs-icon-spin-8513cc7f 0.8s linear infinite;
|
|
9
9
|
}
|
|
10
|
-
@keyframes rs-icon-spin-
|
|
10
|
+
@keyframes rs-icon-spin-8513cc7f {
|
|
11
11
|
to {
|
|
12
12
|
transform: rotate(360deg);
|
|
13
13
|
}
|
|
14
14
|
}
|
|
15
15
|
@media (prefers-reduced-motion: reduce) {
|
|
16
|
-
.rs-icon--spin[data-v-
|
|
16
|
+
.rs-icon--spin[data-v-8513cc7f] {
|
|
17
17
|
animation: none;
|
|
18
18
|
}
|
|
19
19
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { RsComponentSize } from '../../../theme/types';
|
|
2
2
|
import { type RsIconFlip } from './icon-utils';
|
|
3
3
|
type __VLS_Props = {
|
|
4
|
-
/** Lucide kebab-case
|
|
4
|
+
/** Lucide kebab-case(如 `house`)、内置品牌 mark,或 `registerRsIcon` 登记的名字 */
|
|
5
5
|
name: string;
|
|
6
6
|
/** 数字 px、CSS 长度,或与控件同一套 ssm / sm / md / lg */
|
|
7
7
|
size?: number | string | RsComponentSize;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { resolveLucideIcon } from "../../../icons/lucide.js";
|
|
2
1
|
import { isRsBrandIconName } from "../../../icons/brand.js";
|
|
2
|
+
import { resolveLucideIcon } from "../../../icons/lucide.js";
|
|
3
3
|
import { buildRsIconStyle, resolveRsIconPixelSize } from "./icon-utils.js";
|
|
4
4
|
import { computed, createBlock, createCommentVNode, defineComponent, normalizeClass, normalizeStyle, openBlock, resolveDynamicComponent } from "vue";
|
|
5
5
|
//#region src/components/icon/src/RsIcon.vue?vue&type=script&setup=true&lang.ts
|
|
@@ -3,6 +3,6 @@ import _plugin_vue_export_helper_default from "../../../_virtual/_plugin-vue_exp
|
|
|
3
3
|
import RsIcon_vue_vue_type_script_setup_true_lang_default from "./RsIcon.impl.js";
|
|
4
4
|
|
|
5
5
|
//#region src/components/icon/src/RsIcon.vue
|
|
6
|
-
var RsIcon_default = /*#__PURE__*/ _plugin_vue_export_helper_default(RsIcon_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-
|
|
6
|
+
var RsIcon_default = /*#__PURE__*/ _plugin_vue_export_helper_default(RsIcon_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-8513cc7f"]]);
|
|
7
7
|
//#endregion
|
|
8
8
|
export { RsIcon_default as default };
|
|
@@ -106,9 +106,9 @@ type __VLS_Slots = {} & {
|
|
|
106
106
|
error?: (props: typeof __VLS_24) => any;
|
|
107
107
|
};
|
|
108
108
|
declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, RsInputExpose, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
109
|
+
clear: () => any;
|
|
109
110
|
blur: (event: FocusEvent) => any;
|
|
110
111
|
focus: (event: FocusEvent) => any;
|
|
111
|
-
clear: () => any;
|
|
112
112
|
"update:modelValue": (value: string) => any;
|
|
113
113
|
validate: (payload: {
|
|
114
114
|
valid: boolean;
|
|
@@ -117,9 +117,9 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, RsInp
|
|
|
117
117
|
pressEnter: (event: KeyboardEvent) => any;
|
|
118
118
|
addonAfterClick: (event: MouseEvent) => any;
|
|
119
119
|
}, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
|
|
120
|
+
onClear?: (() => any) | undefined;
|
|
120
121
|
onBlur?: ((event: FocusEvent) => any) | undefined;
|
|
121
122
|
onFocus?: ((event: FocusEvent) => any) | undefined;
|
|
122
|
-
onClear?: (() => any) | undefined;
|
|
123
123
|
"onUpdate:modelValue"?: ((value: string) => any) | undefined;
|
|
124
124
|
onValidate?: ((payload: {
|
|
125
125
|
valid: boolean;
|
|
@@ -50,16 +50,16 @@ type __VLS_Slots = {} & {
|
|
|
50
50
|
declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, RsMentionsExpose, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
51
51
|
search: (query: string) => any;
|
|
52
52
|
select: (value: string) => any;
|
|
53
|
+
clear: () => any;
|
|
53
54
|
blur: (event: FocusEvent) => any;
|
|
54
55
|
focus: (event: FocusEvent) => any;
|
|
55
|
-
clear: () => any;
|
|
56
56
|
"update:modelValue": (value: string) => any;
|
|
57
57
|
}, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
|
|
58
58
|
onSearch?: ((query: string) => any) | undefined;
|
|
59
59
|
onSelect?: ((value: string) => any) | undefined;
|
|
60
|
+
onClear?: (() => any) | undefined;
|
|
60
61
|
onBlur?: ((event: FocusEvent) => any) | undefined;
|
|
61
62
|
onFocus?: ((event: FocusEvent) => any) | undefined;
|
|
62
|
-
onClear?: (() => any) | undefined;
|
|
63
63
|
"onUpdate:modelValue"?: ((value: string) => any) | undefined;
|
|
64
64
|
}>, {
|
|
65
65
|
split: string;
|
|
@@ -102,9 +102,9 @@ declare const __VLS_export: <Value extends string | number = string, Multiple ex
|
|
|
102
102
|
}) & {
|
|
103
103
|
onSearch?: ((query: string) => any) | undefined;
|
|
104
104
|
onSelect?: ((value: RsSelectValue, option?: RsSelectOption | undefined) => any) | undefined;
|
|
105
|
+
onClear?: (() => any) | undefined;
|
|
105
106
|
onBlur?: ((event: FocusEvent) => any) | undefined;
|
|
106
107
|
onFocus?: ((event: FocusEvent) => any) | undefined;
|
|
107
|
-
onClear?: (() => any) | undefined;
|
|
108
108
|
"onUpdate:modelValue"?: ((value: RsSelectModelValue) => any) | undefined;
|
|
109
109
|
"onUpdate:open"?: ((value: boolean) => any) | undefined;
|
|
110
110
|
onDeselect?: ((value: RsSelectValue, option?: RsSelectOption | undefined) => any) | undefined;
|
|
@@ -172,7 +172,7 @@ declare const __VLS_export: <Value extends string | number = string, Multiple ex
|
|
|
172
172
|
} & {
|
|
173
173
|
footer?: (props: {}) => any;
|
|
174
174
|
};
|
|
175
|
-
emit: (((evt: "search", query: string) => void) & ((evt: "select", value: RsSelectValue, option?: RsSelectOption | undefined) => void) & ((evt: "
|
|
175
|
+
emit: (((evt: "search", query: string) => void) & ((evt: "select", value: RsSelectValue, option?: RsSelectOption | undefined) => void) & ((evt: "clear") => void) & ((evt: "blur", event: FocusEvent) => void) & ((evt: "focus", event: FocusEvent) => void) & ((evt: "deselect", value: RsSelectValue, option?: RsSelectOption | undefined) => void) & ((evt: "dropdownVisibleChange", open: boolean) => void) & ((evt: "popupScroll", event: Event) => void)) & (((event: "update:modelValue", value: RsSelectModelValue) => void) & ((event: "update:open", value: boolean) => void) & ((event: "update:searchValue", value: string) => void));
|
|
176
176
|
}>) => import("vue").VNode & {
|
|
177
177
|
__ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
|
|
178
178
|
};
|
|
@@ -35,7 +35,7 @@ type __VLS_Props = {
|
|
|
35
35
|
renamable?: boolean;
|
|
36
36
|
/** 按住标签拖动排序(整项可拖) */
|
|
37
37
|
draggable?: boolean;
|
|
38
|
-
/** 可拖时是否画左侧六点 grip
|
|
38
|
+
/** 可拖时是否画左侧六点 grip。默认不画,整项仍可拖。 */
|
|
39
39
|
showDragHandle?: boolean;
|
|
40
40
|
/** 标签过多:scroll 横向/纵向滚动 · dropdown 折叠到「更多」 */
|
|
41
41
|
overflow?: RsTabsOverflow | false;
|
|
@@ -77,8 +77,8 @@ type __VLS_Slots = {} & {
|
|
|
77
77
|
};
|
|
78
78
|
declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, RsTabsExpose, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
79
79
|
change: (value: string) => any;
|
|
80
|
-
close: (value: string) => any;
|
|
81
80
|
add: () => any;
|
|
81
|
+
close: (value: string) => any;
|
|
82
82
|
"update:modelValue": (value: string) => any;
|
|
83
83
|
contextMenu: (action: RsTabsCloseAction, value: string) => any;
|
|
84
84
|
closeBatch: (values: string[], action: RsTabsCloseAction, anchor?: string | undefined) => any;
|
|
@@ -86,8 +86,8 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, RsTab
|
|
|
86
86
|
reorder: (dragValue: string, dropValue: string) => any;
|
|
87
87
|
}, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
|
|
88
88
|
onChange?: ((value: string) => any) | undefined;
|
|
89
|
-
onClose?: ((value: string) => any) | undefined;
|
|
90
89
|
onAdd?: (() => any) | undefined;
|
|
90
|
+
onClose?: ((value: string) => any) | undefined;
|
|
91
91
|
"onUpdate:modelValue"?: ((value: string) => any) | undefined;
|
|
92
92
|
onContextMenu?: ((action: RsTabsCloseAction, value: string) => any) | undefined;
|
|
93
93
|
onCloseBatch?: ((values: string[], action: RsTabsCloseAction, anchor?: string | undefined) => any) | undefined;
|