robot-toast 1.0.0-beta.0
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/README.md +200 -0
- package/dist/index.d.mts +250 -0
- package/dist/index.d.ts +250 -0
- package/dist/index.js +980 -0
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +980 -0
- package/dist/index.mjs.map +1 -0
- package/package.json +67 -0
package/dist/index.mjs
ADDED
|
@@ -0,0 +1,980 @@
|
|
|
1
|
+
var m=class m{constructor(){typeof document>"u"||m.injected||(m.injected=true,this.injectCSS());}injectCSS(){let t="robot-toast-styles";if(document.getElementById(t))return;let o=`
|
|
2
|
+
/* RobotToast v2 - CSS Styles */
|
|
3
|
+
|
|
4
|
+
/* \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 */
|
|
5
|
+
/* WRAPPER - Fixed positioning container for each toast */
|
|
6
|
+
/* \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 */
|
|
7
|
+
|
|
8
|
+
.robot-toast-wrapper {
|
|
9
|
+
position: fixed;
|
|
10
|
+
display: flex;
|
|
11
|
+
align-items: center;
|
|
12
|
+
gap: 12px;
|
|
13
|
+
opacity: 0;
|
|
14
|
+
z-index: 99999;
|
|
15
|
+
pointer-events: auto;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
.robot-toast-wrapper.robot-toast-visible {
|
|
19
|
+
opacity: 1;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
/* Position presets */
|
|
23
|
+
.robot-toast-wrapper.robot-toast-top-right {
|
|
24
|
+
top: 20px;
|
|
25
|
+
right: 20px;
|
|
26
|
+
flex-direction: row;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.robot-toast-wrapper.robot-toast-top-left {
|
|
30
|
+
top: 20px;
|
|
31
|
+
left: 20px;
|
|
32
|
+
flex-direction: row;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.robot-toast-wrapper.robot-toast-top-center {
|
|
36
|
+
top: 20px;
|
|
37
|
+
left: 50%;
|
|
38
|
+
transform: translateX(-50%);
|
|
39
|
+
flex-direction: row;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
.robot-toast-wrapper.robot-toast-bottom-right {
|
|
43
|
+
bottom: 20px;
|
|
44
|
+
right: 20px;
|
|
45
|
+
flex-direction: row;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
.robot-toast-wrapper.robot-toast-bottom-left {
|
|
49
|
+
bottom: 20px;
|
|
50
|
+
left: 20px;
|
|
51
|
+
flex-direction: row;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
.robot-toast-wrapper.robot-toast-bottom-center {
|
|
55
|
+
bottom: 20px;
|
|
56
|
+
left: 50%;
|
|
57
|
+
transform: translateX(-50%);
|
|
58
|
+
flex-direction: row;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
.robot-toast-wrapper.robot-toast-rtl {
|
|
62
|
+
direction: rtl;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
.robot-toast-wrapper.robot-toast-dragging .robot-toast-message {
|
|
66
|
+
box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
/* \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 */
|
|
70
|
+
/* ROBOT - The animated character */
|
|
71
|
+
/* \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 */
|
|
72
|
+
|
|
73
|
+
.robot-toast-robot {
|
|
74
|
+
width: 65px;
|
|
75
|
+
height: 70px;
|
|
76
|
+
flex-shrink: 0;
|
|
77
|
+
display: flex;
|
|
78
|
+
align-items: center;
|
|
79
|
+
justify-content: center;
|
|
80
|
+
opacity: 0;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
.robot-toast-robot img {
|
|
84
|
+
width: 100%;
|
|
85
|
+
height: 100%;
|
|
86
|
+
object-fit: contain;
|
|
87
|
+
display: block;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
.robot-toast-robot.robot-enter-left {
|
|
91
|
+
animation: robot-enter-left 0.7s ease-out forwards;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
.robot-toast-robot.robot-enter-right {
|
|
95
|
+
animation: robot-enter-right 0.7s ease-out forwards;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
.robot-toast-robot.robot-exit-left {
|
|
99
|
+
animation: robot-exit-left 0.5s ease-in forwards;
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
.robot-toast-robot.robot-exit-right {
|
|
103
|
+
animation: robot-exit-right 0.5s ease-in forwards;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
.robot-toast-robot.robot-idle {
|
|
107
|
+
opacity: 1;
|
|
108
|
+
animation: robot-idle 2s ease-in-out infinite;
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
.robot-toast-robot.robot-snap-left {
|
|
112
|
+
animation: robot-snap-left 0.4s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
.robot-toast-robot.robot-snap-right {
|
|
116
|
+
animation: robot-snap-right 0.4s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
/* \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 */
|
|
120
|
+
/* MESSAGE BOX - Toast content container */
|
|
121
|
+
/* \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 */
|
|
122
|
+
|
|
123
|
+
.robot-toast-message {
|
|
124
|
+
position: relative;
|
|
125
|
+
min-width: 280px;
|
|
126
|
+
max-width: 400px;
|
|
127
|
+
padding: 14px 12px 0 12px;
|
|
128
|
+
border-radius: 8px;
|
|
129
|
+
margin: 0;
|
|
130
|
+
opacity: 0;
|
|
131
|
+
display: flex;
|
|
132
|
+
flex-direction: column;
|
|
133
|
+
box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
|
|
134
|
+
user-select: none;
|
|
135
|
+
cursor: default;
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
.robot-toast-message.robot-toast-theme-light {
|
|
139
|
+
background: #ffffff;
|
|
140
|
+
color: #333333;
|
|
141
|
+
border: 1px solid #e0e0e0;
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
.robot-toast-message.robot-toast-theme-dark {
|
|
145
|
+
background: #2d2d2d;
|
|
146
|
+
color: #f0f0f0;
|
|
147
|
+
border: 1px solid #444444;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
.robot-toast-message.robot-toast-theme-colored {
|
|
151
|
+
color: #ffffff;
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
/* Type-specific colors for colored theme */
|
|
155
|
+
.robot-toast-message.robot-toast-theme-colored.robot-toast-type-default {
|
|
156
|
+
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
.robot-toast-message.robot-toast-theme-colored.robot-toast-type-info {
|
|
160
|
+
background: linear-gradient(135deg, #2193b0 0%, #6dd5ed 100%);
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
.robot-toast-message.robot-toast-theme-colored.robot-toast-type-success {
|
|
164
|
+
background: linear-gradient(135deg, #11998e 0%, #38ef7d 100%);
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
.robot-toast-message.robot-toast-theme-colored.robot-toast-type-warning {
|
|
168
|
+
background: linear-gradient(135deg, #fb6e3b 0%, #f5a623 100%);
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
.robot-toast-message.robot-toast-theme-colored.robot-toast-type-error {
|
|
172
|
+
background: linear-gradient(135deg, #eb3349 0%, #f45c43 100%);
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
/* Light theme type-specific colors */
|
|
176
|
+
.robot-toast-message.robot-toast-theme-light.robot-toast-type-info {
|
|
177
|
+
border-left: 4px solid #2193b0;
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
.robot-toast-message.robot-toast-theme-light.robot-toast-type-success {
|
|
181
|
+
border-left: 4px solid #11998e;
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
.robot-toast-message.robot-toast-theme-light.robot-toast-type-warning {
|
|
185
|
+
border-left: 4px solid #fb6e3b;
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
.robot-toast-message.robot-toast-theme-light.robot-toast-type-error {
|
|
189
|
+
border-left: 4px solid #eb3349;
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
/* Dark theme type-specific colors */
|
|
193
|
+
.robot-toast-message.robot-toast-theme-dark.robot-toast-type-info {
|
|
194
|
+
border-left: 4px solid #6dd5ed;
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
.robot-toast-message.robot-toast-theme-dark.robot-toast-type-success {
|
|
198
|
+
border-left: 4px solid #38ef7d;
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
.robot-toast-message.robot-toast-theme-dark.robot-toast-type-warning {
|
|
202
|
+
border-left: 4px solid #f5a623;
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
.robot-toast-message.robot-toast-theme-dark.robot-toast-type-error {
|
|
206
|
+
border-left: 4px solid #f45c43;
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
.robot-toast-message.message-enter {
|
|
210
|
+
animation: message-enter 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
.robot-toast-message.message-exit {
|
|
214
|
+
animation: message-exit 0.3s ease-in forwards;
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
/* \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 */
|
|
218
|
+
/* CLOSE BUTTON */
|
|
219
|
+
/* \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 */
|
|
220
|
+
|
|
221
|
+
.robot-toast-close {
|
|
222
|
+
position: absolute;
|
|
223
|
+
top: 4px;
|
|
224
|
+
right: 4px;
|
|
225
|
+
background: none;
|
|
226
|
+
border: none;
|
|
227
|
+
font-size: 24px;
|
|
228
|
+
cursor: pointer;
|
|
229
|
+
opacity: 0.6;
|
|
230
|
+
transition: opacity 0.2s;
|
|
231
|
+
padding: 0;
|
|
232
|
+
width: 28px;
|
|
233
|
+
height: 28px;
|
|
234
|
+
display: flex;
|
|
235
|
+
align-items: center;
|
|
236
|
+
justify-content: center;
|
|
237
|
+
color: currentColor;
|
|
238
|
+
}
|
|
239
|
+
|
|
240
|
+
.robot-toast-close:hover {
|
|
241
|
+
opacity: 1;
|
|
242
|
+
}
|
|
243
|
+
|
|
244
|
+
/* \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 */
|
|
245
|
+
/* DRAG HINT */
|
|
246
|
+
/* \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 */
|
|
247
|
+
|
|
248
|
+
.robot-toast-drag-hint {
|
|
249
|
+
position: absolute;
|
|
250
|
+
left: 8px;
|
|
251
|
+
top: 50%;
|
|
252
|
+
transform: translateY(-50%);
|
|
253
|
+
display: flex;
|
|
254
|
+
flex-direction: column;
|
|
255
|
+
gap: 3px;
|
|
256
|
+
opacity: 0.4;
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
.robot-toast-drag-hint span {
|
|
260
|
+
display: block;
|
|
261
|
+
width: 4px;
|
|
262
|
+
height: 4px;
|
|
263
|
+
border-radius: 50%;
|
|
264
|
+
background: currentColor;
|
|
265
|
+
}
|
|
266
|
+
|
|
267
|
+
/* \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 */
|
|
268
|
+
/* MESSAGE TEXT */
|
|
269
|
+
/* \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 */
|
|
270
|
+
|
|
271
|
+
.robot-toast-text {
|
|
272
|
+
padding-right: 24px;
|
|
273
|
+
padding-bottom: 12px;
|
|
274
|
+
font-size: 14px;
|
|
275
|
+
line-height: 1.5;
|
|
276
|
+
word-break: break-word;
|
|
277
|
+
white-space: pre-wrap;
|
|
278
|
+
font-weight: 500;
|
|
279
|
+
}
|
|
280
|
+
|
|
281
|
+
/* \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 */
|
|
282
|
+
/* PROGRESS BAR */
|
|
283
|
+
/* \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 */
|
|
284
|
+
|
|
285
|
+
.robot-toast-progress-container {
|
|
286
|
+
width: 100%;
|
|
287
|
+
height: 3px;
|
|
288
|
+
background: rgba(0, 0, 0, 0.1);
|
|
289
|
+
border-radius: 2px;
|
|
290
|
+
overflow: hidden;
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
.robot-toast-message.robot-toast-theme-dark .robot-toast-progress-container {
|
|
294
|
+
background: rgba(255, 255, 255, 0.15);
|
|
295
|
+
}
|
|
296
|
+
|
|
297
|
+
.robot-toast-progress-bar {
|
|
298
|
+
height: 100%;
|
|
299
|
+
background: currentColor;
|
|
300
|
+
transform-origin: left;
|
|
301
|
+
transform: scaleX(1); /* \u2190 starts full */
|
|
302
|
+
}
|
|
303
|
+
|
|
304
|
+
.robot-toast-theme-light.robot-toast-type-success .robot-toast-progress-bar { background: #11998e; }
|
|
305
|
+
.robot-toast-theme-light.robot-toast-type-error .robot-toast-progress-bar { background: #eb3349; }
|
|
306
|
+
.robot-toast-theme-light.robot-toast-type-warning .robot-toast-progress-bar { background: #fb6e3b; }
|
|
307
|
+
.robot-toast-theme-light.robot-toast-type-info .robot-toast-progress-bar { background: #2193b0; }
|
|
308
|
+
|
|
309
|
+
/* Dark theme progress bar colors */
|
|
310
|
+
.robot-toast-theme-dark.robot-toast-type-success .robot-toast-progress-bar { background: #38ef7d; }
|
|
311
|
+
.robot-toast-theme-dark.robot-toast-type-error .robot-toast-progress-bar { background: #f45c43; }
|
|
312
|
+
.robot-toast-theme-dark.robot-toast-type-warning .robot-toast-progress-bar { background: #f5a623; }
|
|
313
|
+
.robot-toast-theme-dark.robot-toast-type-info .robot-toast-progress-bar { background: #6dd5ed; }
|
|
314
|
+
|
|
315
|
+
|
|
316
|
+
.robot-toast-progress-bar.robot-toast-progress-auto {
|
|
317
|
+
animation: robot-progress-countdown linear forwards;
|
|
318
|
+
opacity: 0.8;
|
|
319
|
+
}
|
|
320
|
+
|
|
321
|
+
.robot-toast-progress-bar.robot-toast-progress-paused {
|
|
322
|
+
animation-play-state: paused !important;
|
|
323
|
+
}
|
|
324
|
+
|
|
325
|
+
/* \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 */
|
|
326
|
+
/* ANIMATIONS */
|
|
327
|
+
/* \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 */
|
|
328
|
+
|
|
329
|
+
@keyframes robot-enter-left {
|
|
330
|
+
0% { opacity: 0; transform: translateY(-80px) translateX(-30px) scaleY(1.1) scaleX(0.9); }
|
|
331
|
+
40% { opacity: 1; transform: translateY(10px) scaleY(0.85) scaleX(1.1); }
|
|
332
|
+
65% { transform: translateY(-6px) scaleY(1.05) scaleX(0.97); }
|
|
333
|
+
85% { transform: translateY(2px) scaleY(0.98); }
|
|
334
|
+
100% { opacity: 1; transform: translateY(0) scale(1); }
|
|
335
|
+
}
|
|
336
|
+
|
|
337
|
+
@keyframes robot-enter-right {
|
|
338
|
+
0% { opacity: 0; transform: translateY(-80px) translateX(30px) scaleY(1.1) scaleX(0.9); }
|
|
339
|
+
40% { opacity: 1; transform: translateY(10px) scaleY(0.85) scaleX(1.1); }
|
|
340
|
+
65% { transform: translateY(-6px) scaleY(1.05) scaleX(0.97); }
|
|
341
|
+
85% { transform: translateY(2px) scaleY(0.98); }
|
|
342
|
+
100% { opacity: 1; transform: translateY(0) scale(1); }
|
|
343
|
+
}
|
|
344
|
+
|
|
345
|
+
@keyframes robot-exit-left {
|
|
346
|
+
0% { opacity: 1; transform: scale(1); }
|
|
347
|
+
20% { transform: scaleY(0.85) scaleX(1.1) translateY(5px); }
|
|
348
|
+
100% { opacity: 0; transform: translateY(-80px) translateX(-30px) scaleY(1.1) scaleX(0.9); }
|
|
349
|
+
}
|
|
350
|
+
|
|
351
|
+
@keyframes robot-exit-right {
|
|
352
|
+
0% { opacity: 1; transform: scale(1); }
|
|
353
|
+
20% { transform: scaleY(0.85) scaleX(1.1) translateY(5px); }
|
|
354
|
+
100% { opacity: 0; transform: translateY(-80px) translateX(30px) scaleY(1.1) scaleX(0.9); }
|
|
355
|
+
}
|
|
356
|
+
|
|
357
|
+
|
|
358
|
+
@keyframes robot-idle {
|
|
359
|
+
0%, 100% {
|
|
360
|
+
transform: translateY(0);
|
|
361
|
+
}
|
|
362
|
+
50% {
|
|
363
|
+
transform: translateY(-4px);
|
|
364
|
+
}
|
|
365
|
+
}
|
|
366
|
+
|
|
367
|
+
@keyframes robot-snap-left {
|
|
368
|
+
from {
|
|
369
|
+
transform: scaleX(0.8);
|
|
370
|
+
}
|
|
371
|
+
to {
|
|
372
|
+
transform: scaleX(1);
|
|
373
|
+
}
|
|
374
|
+
}
|
|
375
|
+
|
|
376
|
+
@keyframes robot-snap-right {
|
|
377
|
+
from {
|
|
378
|
+
transform: scaleX(0.8);
|
|
379
|
+
}
|
|
380
|
+
to {
|
|
381
|
+
transform: scaleX(1);
|
|
382
|
+
}
|
|
383
|
+
}
|
|
384
|
+
|
|
385
|
+
@keyframes message-enter {
|
|
386
|
+
from {
|
|
387
|
+
opacity: 0;
|
|
388
|
+
transform: scale(0.8);
|
|
389
|
+
}
|
|
390
|
+
to {
|
|
391
|
+
opacity: 1;
|
|
392
|
+
transform: scale(1);
|
|
393
|
+
}
|
|
394
|
+
}
|
|
395
|
+
|
|
396
|
+
@keyframes message-exit {
|
|
397
|
+
from {
|
|
398
|
+
opacity: 1;
|
|
399
|
+
transform: scale(1);
|
|
400
|
+
}
|
|
401
|
+
to {
|
|
402
|
+
opacity: 0;
|
|
403
|
+
transform: scale(0.8);
|
|
404
|
+
}
|
|
405
|
+
}
|
|
406
|
+
|
|
407
|
+
@keyframes robot-progress-countdown {
|
|
408
|
+
from { transform: scaleX(1); }
|
|
409
|
+
to { transform: scaleX(0); }
|
|
410
|
+
}
|
|
411
|
+
|
|
412
|
+
/* Slide transition animations */
|
|
413
|
+
.robot-toast-robot.robot-enter-left-slide {
|
|
414
|
+
animation: robot-enter-left-slide 0.5s ease-out forwards;
|
|
415
|
+
}
|
|
416
|
+
|
|
417
|
+
.robot-toast-robot.robot-enter-right-slide {
|
|
418
|
+
animation: robot-enter-right-slide 0.5s ease-out forwards;
|
|
419
|
+
}
|
|
420
|
+
|
|
421
|
+
.robot-toast-robot.robot-exit-left-slide {
|
|
422
|
+
animation: robot-exit-left-slide 0.4s ease-in forwards;
|
|
423
|
+
}
|
|
424
|
+
|
|
425
|
+
.robot-toast-robot.robot-exit-right-slide {
|
|
426
|
+
animation: robot-exit-right-slide 0.4s ease-in forwards;
|
|
427
|
+
}
|
|
428
|
+
|
|
429
|
+
/* Zoom transition animations */
|
|
430
|
+
.robot-toast-robot.robot-enter-left-zoom,
|
|
431
|
+
.robot-toast-robot.robot-enter-right-zoom {
|
|
432
|
+
animation: robot-enter-zoom 0.6s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
|
|
433
|
+
}
|
|
434
|
+
|
|
435
|
+
.robot-toast-robot.robot-exit-left-zoom,
|
|
436
|
+
.robot-toast-robot.robot-exit-right-zoom {
|
|
437
|
+
animation: robot-exit-zoom 0.4s ease-in forwards;
|
|
438
|
+
}
|
|
439
|
+
|
|
440
|
+
/* Flip transition animations */
|
|
441
|
+
.robot-toast-robot.robot-enter-left-flip {
|
|
442
|
+
animation: robot-enter-left-flip 0.6s ease-out forwards;
|
|
443
|
+
}
|
|
444
|
+
|
|
445
|
+
.robot-toast-robot.robot-enter-right-flip {
|
|
446
|
+
animation: robot-enter-right-flip 0.6s ease-out forwards;
|
|
447
|
+
}
|
|
448
|
+
|
|
449
|
+
.robot-toast-robot.robot-exit-left-flip {
|
|
450
|
+
animation: robot-exit-left-flip 0.4s ease-in forwards;
|
|
451
|
+
}
|
|
452
|
+
|
|
453
|
+
.robot-toast-robot.robot-exit-right-flip {
|
|
454
|
+
animation: robot-exit-right-flip 0.4s ease-in forwards;
|
|
455
|
+
}
|
|
456
|
+
|
|
457
|
+
@keyframes robot-enter-left-slide {
|
|
458
|
+
from { opacity: 0; transform: translateX(-60px); }
|
|
459
|
+
to { opacity: 1; transform: translateX(0); }
|
|
460
|
+
}
|
|
461
|
+
|
|
462
|
+
@keyframes robot-enter-right-slide {
|
|
463
|
+
from { opacity: 0; transform: translateX(60px); }
|
|
464
|
+
to { opacity: 1; transform: translateX(0); }
|
|
465
|
+
}
|
|
466
|
+
|
|
467
|
+
@keyframes robot-exit-left-slide {
|
|
468
|
+
from { opacity: 1; transform: translateX(0); }
|
|
469
|
+
to { opacity: 0; transform: translateX(-60px); }
|
|
470
|
+
}
|
|
471
|
+
|
|
472
|
+
@keyframes robot-exit-right-slide {
|
|
473
|
+
from { opacity: 1; transform: translateX(0); }
|
|
474
|
+
to { opacity: 0; transform: translateX(60px); }
|
|
475
|
+
}
|
|
476
|
+
|
|
477
|
+
@keyframes robot-enter-zoom {
|
|
478
|
+
from { opacity: 0; transform: scale(0.2); }
|
|
479
|
+
to { opacity: 1; transform: scale(1); }
|
|
480
|
+
}
|
|
481
|
+
|
|
482
|
+
@keyframes robot-exit-zoom {
|
|
483
|
+
from { opacity: 1; transform: scale(1); }
|
|
484
|
+
to { opacity: 0; transform: scale(0.2); }
|
|
485
|
+
}
|
|
486
|
+
|
|
487
|
+
@keyframes robot-enter-left-flip {
|
|
488
|
+
from { opacity: 0; transform: perspective(600px) rotateY(90deg); }
|
|
489
|
+
to { opacity: 1; transform: perspective(600px) rotateY(0deg); }
|
|
490
|
+
}
|
|
491
|
+
|
|
492
|
+
@keyframes robot-enter-right-flip {
|
|
493
|
+
from { opacity: 0; transform: perspective(600px) rotateY(-90deg); }
|
|
494
|
+
to { opacity: 1; transform: perspective(600px) rotateY(0deg); }
|
|
495
|
+
}
|
|
496
|
+
|
|
497
|
+
@keyframes robot-exit-left-flip {
|
|
498
|
+
from { opacity: 1; transform: perspective(600px) rotateY(0deg); }
|
|
499
|
+
to { opacity: 0; transform: perspective(600px) rotateY(90deg); }
|
|
500
|
+
}
|
|
501
|
+
|
|
502
|
+
@keyframes robot-exit-right-flip {
|
|
503
|
+
from { opacity: 1; transform: perspective(600px) rotateY(0deg); }
|
|
504
|
+
to { opacity: 0; transform: perspective(600px) rotateY(-90deg); }
|
|
505
|
+
}
|
|
506
|
+
|
|
507
|
+
/* message-enter variants */
|
|
508
|
+
.robot-toast-message.message-enter-slide {
|
|
509
|
+
animation: message-enter-slide 0.35s ease-out forwards;
|
|
510
|
+
}
|
|
511
|
+
.robot-toast-message.message-enter-zoom {
|
|
512
|
+
animation: message-enter-zoom 0.4s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
|
|
513
|
+
}
|
|
514
|
+
.robot-toast-message.message-enter-flip {
|
|
515
|
+
animation: message-enter-flip 0.4s ease-out forwards;
|
|
516
|
+
}
|
|
517
|
+
|
|
518
|
+
@keyframes message-enter-slide {
|
|
519
|
+
from { opacity: 0; transform: translateY(10px); }
|
|
520
|
+
to { opacity: 1; transform: translateY(0); }
|
|
521
|
+
}
|
|
522
|
+
@keyframes message-enter-zoom {
|
|
523
|
+
from { opacity: 0; transform: scale(0.5); }
|
|
524
|
+
to { opacity: 1; transform: scale(1); }
|
|
525
|
+
}
|
|
526
|
+
@keyframes message-enter-flip {
|
|
527
|
+
from { opacity: 0; transform: perspective(400px) rotateX(-20deg); }
|
|
528
|
+
to { opacity: 1; transform: perspective(400px) rotateX(0deg); }
|
|
529
|
+
}
|
|
530
|
+
`,e=document.createElement("style");e.id=t,e.textContent=o,document.head.appendChild(e);}};m.injected=false;var k=m,A=k;function n(i){return `data:image/svg+xml;base64,${Buffer.from(i,"utf-8").toString("base64")}`}var l={wave:`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100%" height="100%">
|
|
531
|
+
<defs>
|
|
532
|
+
<linearGradient id="roboGrad" x1="0" y1="0" x2="1" y2="1">
|
|
533
|
+
<stop offset="0%" stop-color="#E2F0FF" />
|
|
534
|
+
<stop offset="100%" stop-color="#B8D8FF" />
|
|
535
|
+
</linearGradient>
|
|
536
|
+
</defs>
|
|
537
|
+
|
|
538
|
+
<path d="M 25 60 Q 15 65, 20 80" fill="none" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
539
|
+
<path d="M 75 60 Q 95 45, 85 25" fill="none" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
540
|
+
|
|
541
|
+
<rect x="35" y="55" width="30" height="30" rx="8" fill="url(#roboGrad)" stroke="#2B3A55" stroke-width="4"/>
|
|
542
|
+
|
|
543
|
+
<rect x="25" y="20" width="50" height="35" rx="12" fill="url(#roboGrad)" stroke="#2B3A55" stroke-width="4"/>
|
|
544
|
+
|
|
545
|
+
<line x1="50" y1="20" x2="50" y2="10" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
546
|
+
<circle cx="50" cy="8" r="4" fill="#FF6B6B" stroke="#2B3A55" stroke-width="2"/>
|
|
547
|
+
|
|
548
|
+
<circle cx="40" cy="38" r="4" fill="#2B3A55"/>
|
|
549
|
+
<path d="M 55 38 Q 60 33, 65 38" fill="none" stroke="#2B3A55" stroke-width="3" stroke-linecap="round"/>
|
|
550
|
+
</svg>`,base:`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100%" height="100%">
|
|
551
|
+
<defs>
|
|
552
|
+
<linearGradient id="roboGrad" x1="0" y1="0" x2="1" y2="1">
|
|
553
|
+
<stop offset="0%" stop-color="#E2F0FF" />
|
|
554
|
+
<stop offset="100%" stop-color="#B8D8FF" />
|
|
555
|
+
</linearGradient>
|
|
556
|
+
</defs>
|
|
557
|
+
|
|
558
|
+
<path d="M 25 60 Q 15 70, 25 85" fill="none" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
559
|
+
<path d="M 75 60 Q 85 70, 75 85" fill="none" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
560
|
+
|
|
561
|
+
<rect x="35" y="55" width="30" height="30" rx="8" fill="url(#roboGrad)" stroke="#2B3A55" stroke-width="4"/>
|
|
562
|
+
|
|
563
|
+
<rect x="25" y="20" width="50" height="35" rx="12" fill="url(#roboGrad)" stroke="#2B3A55" stroke-width="4"/>
|
|
564
|
+
|
|
565
|
+
<line x1="50" y1="20" x2="50" y2="10" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
566
|
+
<circle cx="50" cy="8" r="4" fill="#4D96FF" stroke="#2B3A55" stroke-width="2"/>
|
|
567
|
+
|
|
568
|
+
<circle cx="40" cy="38" r="4" fill="#2B3A55"/>
|
|
569
|
+
<circle cx="60" cy="38" r="4" fill="#2B3A55"/>
|
|
570
|
+
|
|
571
|
+
<line x1="45" y1="46" x2="55" y2="46" stroke="#2B3A55" stroke-width="3" stroke-linecap="round"/>
|
|
572
|
+
</svg>`,success:`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100%" height="100%">
|
|
573
|
+
<defs>
|
|
574
|
+
<linearGradient id="roboGrad" x1="0" y1="0" x2="1" y2="1">
|
|
575
|
+
<stop offset="0%" stop-color="#E2F0FF" />
|
|
576
|
+
<stop offset="100%" stop-color="#B8D8FF" />
|
|
577
|
+
</linearGradient>
|
|
578
|
+
</defs>
|
|
579
|
+
|
|
580
|
+
<circle cx="20" cy="20" r="3" fill="#FF6B6B" />
|
|
581
|
+
<rect x="80" y="25" width="6" height="6" fill="#4D96FF" transform="rotate(45 80 25)"/>
|
|
582
|
+
<circle cx="75" cy="10" r="2" fill="#FFD93D" />
|
|
583
|
+
|
|
584
|
+
<path d="M 25 55 Q 10 40, 20 20" fill="none" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
585
|
+
<path d="M 75 55 Q 90 40, 80 20" fill="none" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
586
|
+
|
|
587
|
+
<rect x="35" y="50" width="30" height="30" rx="8" fill="url(#roboGrad)" stroke="#2B3A55" stroke-width="4"/>
|
|
588
|
+
|
|
589
|
+
<rect x="25" y="15" width="50" height="35" rx="12" fill="url(#roboGrad)" stroke="#2B3A55" stroke-width="4"/>
|
|
590
|
+
|
|
591
|
+
<line x1="50" y1="15" x2="50" y2="5" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
592
|
+
<circle cx="50" cy="3" r="4" fill="#4ECB71" stroke="#2B3A55" stroke-width="2"/>
|
|
593
|
+
|
|
594
|
+
<path d="M 35 32 Q 40 25, 45 32" fill="none" stroke="#2B3A55" stroke-width="3" stroke-linecap="round"/>
|
|
595
|
+
<path d="M 55 32 Q 60 25, 65 32" fill="none" stroke="#2B3A55" stroke-width="3" stroke-linecap="round"/>
|
|
596
|
+
</svg>`,error:`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100%" height="100%">
|
|
597
|
+
<defs>
|
|
598
|
+
<linearGradient id="roboGrad" x1="0" y1="0" x2="1" y2="1">
|
|
599
|
+
<stop offset="0%" stop-color="#E2F0FF" />
|
|
600
|
+
<stop offset="100%" stop-color="#B8D8FF" />
|
|
601
|
+
</linearGradient>
|
|
602
|
+
</defs>
|
|
603
|
+
|
|
604
|
+
<path d="M 85 15 L 95 35 L 75 35 Z" fill="#FF6B6B" stroke="#2B3A55" stroke-width="2" stroke-linejoin="round"/>
|
|
605
|
+
<text x="85" y="32" font-family="sans-serif" font-size="14" fill="#FFF" font-weight="bold" text-anchor="middle">!</text>
|
|
606
|
+
|
|
607
|
+
<path d="M 25 55 Q 10 50, 20 35" fill="none" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
608
|
+
<path d="M 75 60 Q 90 70, 80 85" fill="none" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
609
|
+
|
|
610
|
+
<rect x="35" y="55" width="30" height="30" rx="8" fill="url(#roboGrad)" stroke="#2B3A55" stroke-width="4"/>
|
|
611
|
+
|
|
612
|
+
<rect x="23" y="20" width="50" height="35" rx="12" fill="url(#roboGrad)" stroke="#2B3A55" stroke-width="4"/>
|
|
613
|
+
|
|
614
|
+
<line x1="48" y1="20" x2="40" y2="10" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
615
|
+
<circle cx="40" cy="8" r="4" fill="#FF6B6B" stroke="#2B3A55" stroke-width="2"/>
|
|
616
|
+
|
|
617
|
+
<path d="M 34 34 L 42 42 M 42 34 L 34 42" stroke="#2B3A55" stroke-width="3" stroke-linecap="round"/>
|
|
618
|
+
<path d="M 54 34 L 62 42 M 62 34 L 54 42" stroke="#2B3A55" stroke-width="3" stroke-linecap="round"/>
|
|
619
|
+
|
|
620
|
+
<path d="M 38 48 L 42 45 L 46 48 L 50 45 L 54 48 L 58 45" fill="none" stroke="#2B3A55" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"/>
|
|
621
|
+
</svg>`,angry:`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100%" height="100%">
|
|
622
|
+
<defs>
|
|
623
|
+
<linearGradient id="roboGrad" x1="0" y1="0" x2="1" y2="1">
|
|
624
|
+
<stop offset="0%" stop-color="#E2F0FF" />
|
|
625
|
+
<stop offset="100%" stop-color="#B8D8FF" />
|
|
626
|
+
</linearGradient>
|
|
627
|
+
</defs>
|
|
628
|
+
|
|
629
|
+
<path d="M 20 30 Q 10 25, 15 15 Q 25 10, 30 20" fill="none" stroke="#A8B2C1" stroke-width="3" stroke-linecap="round"/>
|
|
630
|
+
<path d="M 80 30 Q 90 25, 85 15 Q 75 10, 70 20" fill="none" stroke="#A8B2C1" stroke-width="3" stroke-linecap="round"/>
|
|
631
|
+
|
|
632
|
+
<path d="M 25 60 L 15 75" fill="none" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
633
|
+
<circle cx="15" cy="75" r="5" fill="#2B3A55"/>
|
|
634
|
+
<path d="M 75 60 L 85 75" fill="none" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
635
|
+
<circle cx="85" cy="75" r="5" fill="#2B3A55"/>
|
|
636
|
+
|
|
637
|
+
<rect x="35" y="55" width="30" height="30" rx="8" fill="url(#roboGrad)" stroke="#2B3A55" stroke-width="4"/>
|
|
638
|
+
|
|
639
|
+
<rect x="25" y="25" width="50" height="35" rx="12" fill="url(#roboGrad)" stroke="#2B3A55" stroke-width="4"/>
|
|
640
|
+
|
|
641
|
+
<line x1="50" y1="25" x2="50" y2="15" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
642
|
+
<circle cx="50" cy="13" r="4" fill="#FF3333" stroke="#2B3A55" stroke-width="2"/>
|
|
643
|
+
|
|
644
|
+
<path d="M 32 35 L 48 42" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
645
|
+
<path d="M 68 35 L 52 42" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
646
|
+
|
|
647
|
+
<rect x="40" y="48" width="20" height="6" rx="2" fill="#FFF" stroke="#2B3A55" stroke-width="2"/>
|
|
648
|
+
<line x1="45" y1="48" x2="45" y2="54" stroke="#2B3A55" stroke-width="2"/>
|
|
649
|
+
<line x1="50" y1="48" x2="50" y2="54" stroke="#2B3A55" stroke-width="2"/>
|
|
650
|
+
<line x1="55" y1="48" x2="55" y2="54" stroke="#2B3A55" stroke-width="2"/>
|
|
651
|
+
</svg>`,angry2:`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100%" height="100%">
|
|
652
|
+
<defs>
|
|
653
|
+
<linearGradient id="roboGrad" x1="0" y1="0" x2="1" y2="1">
|
|
654
|
+
<stop offset="0%" stop-color="#E2F0FF" />
|
|
655
|
+
<stop offset="100%" stop-color="#B8D8FF" />
|
|
656
|
+
</linearGradient>
|
|
657
|
+
</defs>
|
|
658
|
+
|
|
659
|
+
<path d="M 15 30 Q 10 20, 20 15 M 20 35 Q 15 25, 25 20" fill="none" stroke="#FF6B6B" stroke-width="3" stroke-linecap="round" opacity="0.7"/>
|
|
660
|
+
<path d="M 85 30 Q 90 20, 80 15 M 80 35 Q 85 25, 75 20" fill="none" stroke="#FF6B6B" stroke-width="3" stroke-linecap="round" opacity="0.7"/>
|
|
661
|
+
|
|
662
|
+
<path d="M 25 60 L 20 80" fill="none" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
663
|
+
<path d="M 75 60 L 80 80" fill="none" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
664
|
+
|
|
665
|
+
<rect x="35" y="55" width="30" height="30" rx="8" fill="url(#roboGrad)" stroke="#2B3A55" stroke-width="4"/>
|
|
666
|
+
|
|
667
|
+
<rect x="25" y="20" width="50" height="35" rx="12" fill="url(#roboGrad)" stroke="#2B3A55" stroke-width="4"/>
|
|
668
|
+
|
|
669
|
+
<line x1="50" y1="20" x2="50" y2="10" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
670
|
+
<circle cx="50" cy="8" r="4" fill="#FF6B6B" stroke="#2B3A55" stroke-width="2"/>
|
|
671
|
+
|
|
672
|
+
<circle cx="40" cy="38" r="3" fill="#2B3A55"/>
|
|
673
|
+
<circle cx="60" cy="38" r="3" fill="#2B3A55"/>
|
|
674
|
+
<path d="M 32 32 L 45 36 M 68 32 L 55 36" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
675
|
+
|
|
676
|
+
<path d="M 40 50 Q 50 44, 60 50" fill="none" stroke="#2B3A55" stroke-width="3" stroke-linecap="round"/>
|
|
677
|
+
</svg>`,shock:`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100%" height="100%">
|
|
678
|
+
<defs>
|
|
679
|
+
<linearGradient id="roboGrad" x1="0" y1="0" x2="1" y2="1">
|
|
680
|
+
<stop offset="0%" stop-color="#E2F0FF" />
|
|
681
|
+
<stop offset="100%" stop-color="#B8D8FF" />
|
|
682
|
+
</linearGradient>
|
|
683
|
+
</defs>
|
|
684
|
+
|
|
685
|
+
<path d="M 75 15 Q 95 15, 95 30 Q 95 45, 80 45 L 70 50 L 72 42 Q 60 40, 60 30 Q 60 15, 75 15 Z" fill="#FFF" stroke="#2B3A55" stroke-width="3"/>
|
|
686
|
+
|
|
687
|
+
<path d="M 25 60 Q 15 70, 30 80" fill="none" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
688
|
+
<path d="M 75 60 Q 85 40, 70 25" fill="none" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
689
|
+
|
|
690
|
+
<rect x="35" y="55" width="30" height="30" rx="8" fill="url(#roboGrad)" stroke="#2B3A55" stroke-width="4"/>
|
|
691
|
+
|
|
692
|
+
<rect x="25" y="20" width="50" height="35" rx="12" fill="url(#roboGrad)" stroke="#2B3A55" stroke-width="4"/>
|
|
693
|
+
|
|
694
|
+
<line x1="50" y1="20" x2="50" y2="10" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
695
|
+
<circle cx="50" cy="8" r="4" fill="#4D96FF" stroke="#2B3A55" stroke-width="2"/>
|
|
696
|
+
|
|
697
|
+
<circle cx="40" cy="36" r="4" fill="#2B3A55"/>
|
|
698
|
+
<circle cx="60" cy="36" r="4" fill="#2B3A55"/>
|
|
699
|
+
<ellipse cx="50" cy="46" rx="6" ry="3" fill="#2B3A55"/>
|
|
700
|
+
</svg>`,think:`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100%" height="100%">
|
|
701
|
+
<defs>
|
|
702
|
+
<linearGradient id="roboGrad" x1="0" y1="0" x2="1" y2="1">
|
|
703
|
+
<stop offset="0%" stop-color="#E2F0FF" />
|
|
704
|
+
<stop offset="100%" stop-color="#B8D8FF" />
|
|
705
|
+
</linearGradient>
|
|
706
|
+
</defs>
|
|
707
|
+
|
|
708
|
+
<circle cx="80" cy="20" r="10" fill="#FFF" stroke="#2B3A55" stroke-width="3"/>
|
|
709
|
+
<text x="80" y="25" font-family="sans-serif" font-size="14" fill="#2B3A55" font-weight="bold" text-anchor="middle">?</text>
|
|
710
|
+
|
|
711
|
+
<path d="M 25 60 Q 15 65, 20 80" fill="none" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
712
|
+
<path d="M 75 60 Q 85 55, 65 50" fill="none" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
713
|
+
|
|
714
|
+
<rect x="35" y="55" width="30" height="30" rx="8" fill="url(#roboGrad)" stroke="#2B3A55" stroke-width="4"/>
|
|
715
|
+
|
|
716
|
+
<g transform="rotate(-5 50 37)">
|
|
717
|
+
<rect x="25" y="20" width="50" height="35" rx="12" fill="url(#roboGrad)" stroke="#2B3A55" stroke-width="4"/>
|
|
718
|
+
<line x1="50" y1="20" x2="50" y2="10" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
719
|
+
<circle cx="50" cy="8" r="4" fill="#FFD93D" stroke="#2B3A55" stroke-width="2"/>
|
|
720
|
+
<circle cx="40" cy="38" r="4" fill="#2B3A55"/>
|
|
721
|
+
<circle cx="60" cy="38" r="4" fill="#2B3A55"/>
|
|
722
|
+
</g>
|
|
723
|
+
</svg>`,search:`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100%" height="100%">
|
|
724
|
+
<defs>
|
|
725
|
+
<linearGradient id="roboGrad" x1="0" y1="0" x2="1" y2="1">
|
|
726
|
+
<stop offset="0%" stop-color="#E2F0FF" />
|
|
727
|
+
<stop offset="100%" stop-color="#B8D8FF" />
|
|
728
|
+
</linearGradient>
|
|
729
|
+
</defs>
|
|
730
|
+
|
|
731
|
+
<path d="M 40 38 L 10 20 A 30 30 0 0 0 10 56 Z" fill="#4ECB71" opacity="0.3"/>
|
|
732
|
+
|
|
733
|
+
<path d="M 25 60 Q 15 70, 25 85" fill="none" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
734
|
+
<path d="M 75 60 Q 85 70, 75 85" fill="none" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
735
|
+
|
|
736
|
+
<rect x="35" y="55" width="30" height="30" rx="8" fill="url(#roboGrad)" stroke="#2B3A55" stroke-width="4"/>
|
|
737
|
+
|
|
738
|
+
<rect x="25" y="20" width="50" height="35" rx="12" fill="url(#roboGrad)" stroke="#2B3A55" stroke-width="4"/>
|
|
739
|
+
|
|
740
|
+
<line x1="50" y1="20" x2="50" y2="10" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
741
|
+
<circle cx="50" cy="8" r="4" fill="#4ECB71" stroke="#2B3A55" stroke-width="2"/>
|
|
742
|
+
|
|
743
|
+
<circle cx="60" cy="38" r="4" fill="#2B3A55"/>
|
|
744
|
+
|
|
745
|
+
<circle cx="40" cy="38" r="6" fill="none" stroke="#4ECB71" stroke-width="2"/>
|
|
746
|
+
<circle cx="40" cy="38" r="2" fill="#4ECB71"/>
|
|
747
|
+
</svg>`,loading:`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100%" height="100%">
|
|
748
|
+
<defs>
|
|
749
|
+
<linearGradient id="roboGrad" x1="0" y1="0" x2="1" y2="1">
|
|
750
|
+
<stop offset="0%" stop-color="#E2F0FF" />
|
|
751
|
+
<stop offset="100%" stop-color="#B8D8FF" />
|
|
752
|
+
</linearGradient>
|
|
753
|
+
</defs>
|
|
754
|
+
|
|
755
|
+
<g stroke="#2B3A55" stroke-width="2" fill="#FFD93D">
|
|
756
|
+
<circle cx="85" cy="30" r="6" />
|
|
757
|
+
<path d="M85 22V24 M85 36V38 M93 30H91 M77 30H79" stroke-linecap="round"/>
|
|
758
|
+
<circle cx="15" cy="75" r="5" fill="#A8B2C1"/>
|
|
759
|
+
<path d="M15 68V70 M15 80V82 M22 75H20 M8 75H10" stroke-linecap="round"/>
|
|
760
|
+
</g>
|
|
761
|
+
|
|
762
|
+
<path d="M 25 60 Q 15 55, 30 45" fill="none" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
763
|
+
<path d="M 28 43 L 22 37 M 32 47 L 36 43" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
764
|
+
|
|
765
|
+
<path d="M 75 60 Q 85 65, 80 80" fill="none" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
766
|
+
|
|
767
|
+
<rect x="35" y="55" width="30" height="30" rx="8" fill="url(#roboGrad)" stroke="#2B3A55" stroke-width="4"/>
|
|
768
|
+
|
|
769
|
+
<rect x="25" y="20" width="50" height="35" rx="12" fill="url(#roboGrad)" stroke="#2B3A55" stroke-width="4"/>
|
|
770
|
+
|
|
771
|
+
<line x1="50" y1="20" x2="50" y2="10" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
772
|
+
<circle cx="50" cy="8" r="4" fill="#FFD93D" stroke="#2B3A55" stroke-width="2"/>
|
|
773
|
+
|
|
774
|
+
<circle cx="40" cy="38" r="4" fill="#2B3A55"/>
|
|
775
|
+
<circle cx="60" cy="38" r="4" fill="#2B3A55"/>
|
|
776
|
+
</svg>`,sleep:`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100%" height="100%">
|
|
777
|
+
<defs>
|
|
778
|
+
<linearGradient id="roboGrad" x1="0" y1="0" x2="1" y2="1">
|
|
779
|
+
<stop offset="0%" stop-color="#E2F0FF" />
|
|
780
|
+
<stop offset="100%" stop-color="#B8D8FF" />
|
|
781
|
+
</linearGradient>
|
|
782
|
+
</defs>
|
|
783
|
+
|
|
784
|
+
<text x="75" y="25" font-family="sans-serif" font-size="12" fill="#2B3A55" font-weight="bold">Z</text>
|
|
785
|
+
<text x="85" y="15" font-family="sans-serif" font-size="10" fill="#2B3A55" font-weight="bold">z</text>
|
|
786
|
+
|
|
787
|
+
<path d="M 25 60 Q 15 70, 25 85" fill="none" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
788
|
+
<path d="M 75 60 Q 85 70, 75 85" fill="none" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
789
|
+
|
|
790
|
+
<rect x="35" y="55" width="30" height="30" rx="8" fill="url(#roboGrad)" stroke="#2B3A55" stroke-width="4"/>
|
|
791
|
+
|
|
792
|
+
<rect x="25" y="25" width="50" height="35" rx="12" fill="url(#roboGrad)" stroke="#2B3A55" stroke-width="4"/>
|
|
793
|
+
|
|
794
|
+
<path d="M 50 25 Q 45 15, 35 12" fill="none" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
795
|
+
<circle cx="35" cy="12" r="4" fill="#A8B2C1" stroke="#2B3A55" stroke-width="2"/>
|
|
796
|
+
|
|
797
|
+
<path d="M 35 42 Q 40 46, 45 42" fill="none" stroke="#2B3A55" stroke-width="3" stroke-linecap="round"/>
|
|
798
|
+
<path d="M 55 42 Q 60 46, 65 42" fill="none" stroke="#2B3A55" stroke-width="3" stroke-linecap="round"/>
|
|
799
|
+
</svg>`,"head-palm":`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100%" height="100%">
|
|
800
|
+
<defs>
|
|
801
|
+
<linearGradient id="roboGrad" x1="0" y1="0" x2="1" y2="1">
|
|
802
|
+
<stop offset="0%" stop-color="#E2F0FF" />
|
|
803
|
+
<stop offset="100%" stop-color="#B8D8FF" />
|
|
804
|
+
</linearGradient>
|
|
805
|
+
</defs>
|
|
806
|
+
|
|
807
|
+
<path d="M 25 60 Q 20 40, 35 35" fill="none" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
808
|
+
<path d="M 75 60 Q 80 70, 78 85" fill="none" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
809
|
+
|
|
810
|
+
<rect x="35" y="55" width="30" height="30" rx="8" fill="url(#roboGrad)" stroke="#2B3A55" stroke-width="4"/>
|
|
811
|
+
|
|
812
|
+
<rect x="25" y="22" width="50" height="35" rx="12" fill="url(#roboGrad)" stroke="#2B3A55" stroke-width="4"/>
|
|
813
|
+
|
|
814
|
+
<path d="M 50 22 Q 55 12, 65 15" fill="none" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
815
|
+
<circle cx="65" cy="15" r="4" fill="#A8B2C1" stroke="#2B3A55" stroke-width="2"/>
|
|
816
|
+
|
|
817
|
+
<path d="M 55 40 Q 60 36, 65 40" fill="none" stroke="#2B3A55" stroke-width="3" stroke-linecap="round"/>
|
|
818
|
+
|
|
819
|
+
<rect x="30" y="28" width="20" height="20" rx="8" fill="#E2F0FF" stroke="#2B3A55" stroke-width="4" transform="rotate(-10 40 38)"/>
|
|
820
|
+
|
|
821
|
+
<line x1="55" y1="50" x2="65" y2="50" stroke="#2B3A55" stroke-width="3" stroke-linecap="round"/>
|
|
822
|
+
</svg>`,type:`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100%" height="100%">
|
|
823
|
+
<defs>
|
|
824
|
+
<linearGradient id="roboGrad" x1="0" y1="0" x2="1" y2="1">
|
|
825
|
+
<stop offset="0%" stop-color="#E2F0FF" />
|
|
826
|
+
<stop offset="100%" stop-color="#B8D8FF" />
|
|
827
|
+
</linearGradient>
|
|
828
|
+
</defs>
|
|
829
|
+
|
|
830
|
+
<rect x="30" y="80" width="40" height="10" rx="2" fill="#A8B2C1" stroke="#2B3A55" stroke-width="3"/>
|
|
831
|
+
<line x1="35" y1="85" x2="65" y2="85" stroke="#2B3A55" stroke-width="2" stroke-dasharray="4 2"/>
|
|
832
|
+
|
|
833
|
+
<path d="M 25 60 Q 25 75, 40 80" fill="none" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
834
|
+
<path d="M 75 60 Q 75 75, 60 80" fill="none" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
835
|
+
|
|
836
|
+
<rect x="35" y="55" width="30" height="30" rx="8" fill="url(#roboGrad)" stroke="#2B3A55" stroke-width="4"/>
|
|
837
|
+
|
|
838
|
+
<rect x="25" y="22" width="50" height="35" rx="12" fill="url(#roboGrad)" stroke="#2B3A55" stroke-width="4"/>
|
|
839
|
+
|
|
840
|
+
<line x1="50" y1="22" x2="50" y2="12" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
841
|
+
<circle cx="50" cy="10" r="4" fill="#4D96FF" stroke="#2B3A55" stroke-width="2"/>
|
|
842
|
+
|
|
843
|
+
<ellipse cx="40" cy="40" rx="4" ry="2" fill="#2B3A55"/>
|
|
844
|
+
<ellipse cx="60" cy="40" rx="4" ry="2" fill="#2B3A55"/>
|
|
845
|
+
</svg>`,validation:`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100%" height="100%">
|
|
846
|
+
<defs>
|
|
847
|
+
<linearGradient id="roboGrad" x1="0" y1="0" x2="1" y2="1">
|
|
848
|
+
<stop offset="0%" stop-color="#E2F0FF" />
|
|
849
|
+
<stop offset="100%" stop-color="#B8D8FF" />
|
|
850
|
+
</linearGradient>
|
|
851
|
+
</defs>
|
|
852
|
+
|
|
853
|
+
<path d="M 25 60 Q 15 70, 25 85" fill="none" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
854
|
+
|
|
855
|
+
<path d="M 75 60 Q 85 50, 85 35" fill="none" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
856
|
+
<circle cx="80" cy="32" r="5" fill="#B8D8FF" stroke="#2B3A55" stroke-width="3"/>
|
|
857
|
+
|
|
858
|
+
<rect x="35" y="55" width="30" height="30" rx="8" fill="url(#roboGrad)" stroke="#2B3A55" stroke-width="4"/>
|
|
859
|
+
|
|
860
|
+
<rect x="25" y="20" width="50" height="35" rx="12" fill="url(#roboGrad)" stroke="#2B3A55" stroke-width="4"/>
|
|
861
|
+
|
|
862
|
+
<line x1="50" y1="20" x2="50" y2="10" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
863
|
+
<circle cx="50" cy="8" r="4" fill="#4ECB71" stroke="#2B3A55" stroke-width="2"/>
|
|
864
|
+
|
|
865
|
+
<circle cx="40" cy="36" r="4" fill="#2B3A55"/>
|
|
866
|
+
<path d="M 55 36 Q 60 31, 65 36" fill="none" stroke="#2B3A55" stroke-width="3" stroke-linecap="round"/>
|
|
867
|
+
<path d="M 40 46 Q 50 52, 60 46" fill="none" stroke="#2B3A55" stroke-width="3" stroke-linecap="round"/>
|
|
868
|
+
</svg>`,validation2:`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100%" height="100%">
|
|
869
|
+
<defs>
|
|
870
|
+
<linearGradient id="roboGrad" x1="0" y1="0" x2="1" y2="1">
|
|
871
|
+
<stop offset="0%" stop-color="#E2F0FF" />
|
|
872
|
+
<stop offset="100%" stop-color="#B8D8FF" />
|
|
873
|
+
</linearGradient>
|
|
874
|
+
</defs>
|
|
875
|
+
|
|
876
|
+
<path d="M 25 60 Q 15 70, 25 85" fill="none" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
877
|
+
|
|
878
|
+
<path d="M 75 60 Q 85 55, 85 45" fill="none" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
879
|
+
<path d="M 85 45 C 80 45, 78 40, 80 35 C 82 30, 88 30, 90 35 C 92 40, 95 40, 95 48 C 95 52, 90 55, 85 52" fill="#E2F0FF" stroke="#2B3A55" stroke-width="4" stroke-linecap="round" stroke-linejoin="round"/>
|
|
880
|
+
|
|
881
|
+
|
|
882
|
+
<rect x="35" y="55" width="30" height="30" rx="8" fill="url(#roboGrad)" stroke="#2B3A55" stroke-width="4"/>
|
|
883
|
+
|
|
884
|
+
<rect x="25" y="20" width="50" height="35" rx="12" fill="url(#roboGrad)" stroke="#2B3A55" stroke-width="4"/>
|
|
885
|
+
|
|
886
|
+
<line x1="50" y1="20" x2="50" y2="10" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
887
|
+
<circle cx="50" cy="8" r="4" fill="#4ECB71" stroke="#2B3A55" stroke-width="2"/>
|
|
888
|
+
|
|
889
|
+
<path d="M 35 36 Q 40 42, 45 36" fill="none" stroke="#2B3A55" stroke-width="3" stroke-linecap="round"/>
|
|
890
|
+
<path d="M 55 36 Q 60 42, 65 36" fill="none" stroke="#2B3A55" stroke-width="3" stroke-linecap="round"/>
|
|
891
|
+
</svg>`,base2:`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100%" height="100%">
|
|
892
|
+
<defs>
|
|
893
|
+
<linearGradient id="roboGrad" x1="0" y1="0" x2="1" y2="1">
|
|
894
|
+
<stop offset="0%" stop-color="#FFFFFF" />
|
|
895
|
+
<stop offset="100%" stop-color="#D0E3FF" />
|
|
896
|
+
</linearGradient>
|
|
897
|
+
|
|
898
|
+
<linearGradient id="darkGrad" x1="0" y1="0" x2="1" y2="1">
|
|
899
|
+
<stop offset="0%" stop-color="#A8B2C1" />
|
|
900
|
+
<stop offset="100%" stop-color="#7B8CA5" />
|
|
901
|
+
</linearGradient>
|
|
902
|
+
</defs>
|
|
903
|
+
|
|
904
|
+
<line x1="50" y1="20" x2="50" y2="6" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
905
|
+
<circle cx="50" cy="6" r="5" fill="#FFD93D" stroke="#2B3A55" stroke-width="3"/>
|
|
906
|
+
|
|
907
|
+
<path d="M 32 60 Q 15 65, 18 80" fill="none" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
908
|
+
<circle cx="18" cy="80" r="4" fill="url(#darkGrad)" stroke="#2B3A55" stroke-width="3"/>
|
|
909
|
+
|
|
910
|
+
<path d="M 68 60 Q 85 65, 82 80" fill="none" stroke="#2B3A55" stroke-width="4" stroke-linecap="round"/>
|
|
911
|
+
<circle cx="82" cy="80" r="4" fill="url(#darkGrad)" stroke="#2B3A55" stroke-width="3"/>
|
|
912
|
+
|
|
913
|
+
<rect x="42" y="48" width="16" height="12" fill="url(#darkGrad)" stroke="#2B3A55" stroke-width="4"/>
|
|
914
|
+
|
|
915
|
+
<path d="M 36 56 L 64 56 L 68 85 C 68 90, 62 94, 50 94 C 38 94, 32 90, 32 85 Z" fill="url(#roboGrad)" stroke="#2B3A55" stroke-width="4" stroke-linejoin="round"/>
|
|
916
|
+
|
|
917
|
+
<rect x="42" y="66" width="16" height="8" rx="4" fill="#4D96FF" stroke="#2B3A55" stroke-width="3"/>
|
|
918
|
+
|
|
919
|
+
<rect x="16" y="28" width="10" height="16" rx="3" fill="url(#darkGrad)" stroke="#2B3A55" stroke-width="4"/>
|
|
920
|
+
<rect x="74" y="28" width="10" height="16" rx="3" fill="url(#darkGrad)" stroke="#2B3A55" stroke-width="4"/>
|
|
921
|
+
|
|
922
|
+
<rect x="22" y="20" width="56" height="34" rx="14" fill="url(#roboGrad)" stroke="#2B3A55" stroke-width="4"/>
|
|
923
|
+
|
|
924
|
+
<circle cx="36" cy="38" r="4" fill="#2B3A55"/>
|
|
925
|
+
<circle cx="64" cy="38" r="4" fill="#2B3A55"/>
|
|
926
|
+
|
|
927
|
+
<ellipse cx="28" cy="43" rx="4" ry="2" fill="#FF6B6B" opacity="0.5"/>
|
|
928
|
+
<ellipse cx="72" cy="43" rx="4" ry="2" fill="#FF6B6B" opacity="0.5"/>
|
|
929
|
+
|
|
930
|
+
<path d="M 46 44 Q 50 48, 54 44" fill="none" stroke="#2B3A55" stroke-width="3" stroke-linecap="round"/>
|
|
931
|
+
</svg>`},u={wave:n(l.wave),base:n(l.base),base2:n(l.base2),success:n(l.success),error:n(l.error),angry:n(l.angry),angry2:n(l.angry2),shock:n(l.shock),think:n(l.think),search:n(l.search),loading:n(l.loading),sleep:n(l.sleep),"head-palm":n(l["head-palm"]),type:n(l.type),validation:n(l.validation),validation2:n(l.validation2)};var F=1;function E(){return F++}var L=16,y=class{constructor(t,o,e){this.progressBar=null;this.timerStart=null;this.closeTimeout=null;this.isDragging=false;this.dragOffsetX=0;this.dragOffsetY=0;this.isHovered=false;this.isFocusLost=false;this.isClosed=false;this.cleanupFns=[];this.id=t,this.onRemove=e;let s={message:o.message,autoClose:o.autoClose??5e3,position:o.position??"bottom-right",type:o.type??"default",theme:o.theme??"light",style:o.style,typeSpeed:o.typeSpeed??30,robotVariant:o.robotVariant??"",hideProgressBar:o.hideProgressBar??false,pauseOnFocusLoss:o.pauseOnFocusLoss??true,draggable:o.draggable??true,nearScreen:o.nearScreen??true,pauseOnHover:o.pauseOnHover??true,rtl:o.rtl??false,transition:o.transition??"bounce",onOpen:o.onOpen,onClose:o.onClose};this.options=s;let r=s.position.includes("left"),a;s.nearScreen?a=r?"left":"right":a=r?"right":"left",this.currentRobotSide=a,this.autoCloseDuration=typeof s.autoClose=="number"?s.autoClose:s.autoClose?5e3:0,this.remainingTime=this.autoCloseDuration,this.wrapper=this.buildWrapper(),this.robotEl=this.buildRobot(),this.messageBox=this.buildMessageBox(),this.messageText=this.messageBox.querySelector(".robot-toast-text"),this.progressBar=this.messageBox.querySelector(".robot-toast-progress-bar"),this.assembleLayout(),document.body.appendChild(this.wrapper),s.draggable&&this.initDrag(),s.pauseOnFocusLoss&&this.initFocusWatcher(),s.pauseOnHover&&this.initHoverWatcher(),requestAnimationFrame(()=>this.playEntrance());}close(){this.isClosed||(this.isClosed=true,this.cancelTimer(),this.cleanupFns.forEach(t=>t()),this.cleanupFns=[],this.playExit(()=>{this.wrapper.parentNode&&this.wrapper.parentNode.removeChild(this.wrapper),this.options.onClose?.(),this.onRemove(this.id);}));}shiftVertical(t){this.options.position.startsWith("bottom")?this.wrapper.style.bottom=`${t}px`:this.wrapper.style.top=`${t}px`;}getWrapperHeight(){return this.wrapper.getBoundingClientRect().height||90}buildWrapper(){let t=document.createElement("div"),o=["robot-toast-wrapper",`robot-toast-${this.options.position}`];return this.options.rtl&&o.push("robot-toast-rtl"),t.className=o.join(" "),t}buildRobot(){let t=document.createElement("div");t.className="robot-toast-robot";let o=this.options.robotVariant;if(o==="none")t.style.display="none";else if(o)if(o in u){let e=document.createElement("img");e.src=u[o],e.alt="Robot",e.setAttribute("width","65"),e.setAttribute("height","70"),e.style.cssText="width:100%;height:100%;object-fit:contain;display:block;",e.onerror=()=>{t.innerHTML=this.getBuiltinSVG();},t.appendChild(e);}else if(![".svg",".png",".jpg",".jpeg",".gif",".webp"].some(r=>o.toLowerCase().endsWith(r)))t.innerHTML=this.getBuiltinSVG();else {let r=document.createElement("img");r.src=o,r.alt="Robot",r.setAttribute("width","65"),r.setAttribute("height","70"),r.style.cssText="width:100%;height:100%;object-fit:contain;display:block;",r.onerror=()=>{t.innerHTML=this.getBuiltinSVG();},t.appendChild(r);}else t.innerHTML=this.getBuiltinSVG();return t}buildMessageBox(){let t=document.createElement("div"),o=["robot-toast-message",`robot-toast-type-${this.options.type}`,`robot-toast-theme-${this.options.theme}`].filter(Boolean);t.className=o.join(" "),t.style.cursor=this.options.draggable?"grab":"default",this.options.style&&Object.entries(this.options.style).forEach(([c,f])=>{let h=c.replace(/-([a-z])/g,x=>x[1].toUpperCase());t.style[h]=f;});let e=document.createElement("button");e.className="robot-toast-close",e.innerHTML="×",e.title="Dismiss",e.addEventListener("click",c=>{c.stopPropagation(),this.close();}),t.appendChild(e);let s=document.createElement("div");s.className="robot-toast-text",t.appendChild(s);let r=document.createElement("div");r.className="robot-toast-progress-container",this.options.hideProgressBar&&(r.style.display="none");let a=document.createElement("div");return a.className="robot-toast-progress-bar",r.appendChild(a),t.appendChild(r),t}assembleLayout(){let{rtl:t}=this.options;this.wrapper.innerHTML="",(t?this.currentRobotSide==="right":this.currentRobotSide==="left")?(this.wrapper.appendChild(this.robotEl),this.wrapper.appendChild(this.messageBox)):(this.wrapper.appendChild(this.messageBox),this.wrapper.appendChild(this.robotEl));}playEntrance(){this.wrapper.classList.add("robot-toast-visible");let t=this.options.robotVariant==="none",o=()=>{let e=this.options.transition==="bounce"?"message-enter":`message-enter-${this.options.transition}`;this.messageBox.classList.add(e);let s=()=>{this.messageBox.removeEventListener("animationend",s),this.messageBox.classList.remove(e),this.messageBox.style.opacity="1",this.messageBox.style.transform="none",this.options.onOpen?.(),this.startTyping();};this.messageBox.addEventListener("animationend",s,{once:true});};if(t)o();else {let e=this.currentRobotSide==="left"?"left":"right",s=this.options.transition!=="bounce"?`-${this.options.transition}`:"",r=`robot-enter-${e}${s}`;this.robotEl.classList.add(r);let a=()=>{this.robotEl.removeEventListener("animationend",a),this.robotEl.style.opacity="1",this.robotEl.classList.remove(r),this.robotEl.classList.add("robot-idle"),o();};this.robotEl.addEventListener("animationend",a,{once:true});}}playExit(t){let o=this.options.robotVariant==="none";this.messageBox.classList.add("message-exit");let e=()=>{if(this.messageBox.removeEventListener("animationend",e),o)this.wrapper.classList.remove("robot-toast-visible"),setTimeout(t,260);else {this.robotEl.classList.remove("robot-idle","robot-snap-left","robot-snap-right");let s=this.currentRobotSide==="left"?"left":"right",r=this.options.transition!=="bounce"?`-${this.options.transition}`:"",a=`robot-exit-${s}${r}`;this.robotEl.classList.add(a);let c=()=>{this.robotEl.removeEventListener("animationend",c),this.wrapper.classList.remove("robot-toast-visible"),setTimeout(t,260);};this.robotEl.addEventListener("animationend",c,{once:true});}};this.messageBox.addEventListener("animationend",e,{once:true});}startTyping(){let{message:t,typeSpeed:o}=this.options,e=this.messageText;if(o===0){e.textContent=t,this.afterTypingComplete();return}let s=0,r=true;this.cleanupFns.push(()=>{r=false;});let a=()=>{r&&(s<t.length?(e.textContent+=t.charAt(s++),setTimeout(a,o)):this.afterTypingComplete());};a();}afterTypingComplete(){this.autoCloseDuration>0&&!this.options.hideProgressBar&&this.progressBar&&(this.progressBar.style.animationDuration=`${this.autoCloseDuration}ms`,this.progressBar.offsetWidth,this.progressBar.classList.add("robot-toast-progress-auto"),(this.isHovered||this.isFocusLost)&&this.progressBar.classList.add("robot-toast-progress-paused")),!this.isHovered&&!this.isFocusLost&&this.startTimer();}startTimer(){this.autoCloseDuration<=0||this.remainingTime<=0||(this.timerStart=Date.now(),this.closeTimeout=setTimeout(()=>this.close(),this.remainingTime));}pauseTimer(){if(this.closeTimeout&&(clearTimeout(this.closeTimeout),this.closeTimeout=null,this.timerStart!==null)){let t=Date.now()-this.timerStart;this.remainingTime=Math.max(0,this.remainingTime-t),this.timerStart=null;}this.progressBar?.classList.add("robot-toast-progress-paused");}resumeTimer(){this.isHovered||this.isFocusLost||this.isDragging||(this.progressBar?.classList.remove("robot-toast-progress-paused"),this.startTimer());}cancelTimer(){this.closeTimeout&&(clearTimeout(this.closeTimeout),this.closeTimeout=null);}initHoverWatcher(){let t=()=>{this.isHovered=true,this.pauseTimer();},o=()=>{this.isHovered=false,this.resumeTimer();};this.wrapper.addEventListener("mouseenter",t),this.wrapper.addEventListener("mouseleave",o),this.cleanupFns.push(()=>{this.wrapper.removeEventListener("mouseenter",t),this.wrapper.removeEventListener("mouseleave",o);});}initFocusWatcher(){let t=()=>{this.isFocusLost=true,this.pauseTimer();},o=()=>{this.isFocusLost=false,this.resumeTimer();};window.addEventListener("blur",t),window.addEventListener("focus",o),this.cleanupFns.push(()=>{window.removeEventListener("blur",t),window.removeEventListener("focus",o);});}initDrag(){this.messageBox.style.cursor="grab";let t=s=>{if(s.target.closest(".robot-toast-close")||s.button!==void 0&&s.button!==0)return;s.preventDefault(),this.isDragging=true,this.pauseTimer();let r=this.wrapper.getBoundingClientRect();this.wrapper.classList.add("robot-toast-dragging"),this.wrapper.style.top=`${r.top}px`,this.wrapper.style.left=`${r.left}px`,this.wrapper.style.right="auto",this.wrapper.style.bottom="auto",this.wrapper.style.transform="none",this.dragOffsetX=s.clientX-r.left,this.dragOffsetY=s.clientY-r.top,this.messageBox.style.cursor="grabbing",this.wrapper.setPointerCapture(s.pointerId);},o=s=>{if(!this.isDragging)return;s.preventDefault();let r=this.wrapper.getBoundingClientRect(),a=window.innerWidth-r.width,c=window.innerHeight-r.height,f=Math.max(0,Math.min(s.clientX-this.dragOffsetX,a)),h=Math.max(0,Math.min(s.clientY-this.dragOffsetY,c));this.wrapper.style.left=`${f}px`,this.wrapper.style.top=`${h}px`;},e=s=>{if(!this.isDragging)return;this.isDragging=false,this.wrapper.classList.remove("robot-toast-dragging"),this.messageBox.style.cursor="grab";let r=this.wrapper.getBoundingClientRect(),a=r.left+r.width/2,c=window.innerWidth/2,f=a<c,h=this.options.nearScreen?f?"left":"right":f?"right":"left",x=f?20:window.innerWidth-r.width-20,T=Math.max(20,Math.min(r.top,window.innerHeight-r.height-20));if(this.wrapper.style.transition="left 0.45s cubic-bezier(0.34,1.56,0.64,1), top 0.4s cubic-bezier(0.34,1.56,0.64,1)",this.wrapper.style.left=`${x}px`,this.wrapper.style.top=`${T}px`,h!==this.currentRobotSide){this.currentRobotSide=h;let B=h==="left";this.robotEl.style.order=B?"0":"1",this.messageBox.style.order=B?"1":"0";let v=h==="left"?"robot-snap-left":"robot-snap-right";this.robotEl.classList.remove("robot-idle","robot-snap-left","robot-snap-right"),this.robotEl.classList.add(v),this.robotEl.addEventListener("animationend",()=>{this.robotEl.style.opacity="1",this.robotEl.classList.remove(v),this.robotEl.classList.add("robot-idle");},{once:true});}setTimeout(()=>{this.wrapper.style.transition="";},500),this.resumeTimer();};this.wrapper.addEventListener("pointerdown",t),this.wrapper.addEventListener("pointermove",o),this.wrapper.addEventListener("pointerup",e),this.wrapper.addEventListener("pointercancel",e),this.cleanupFns.push(()=>{this.wrapper.removeEventListener("pointerdown",t),this.wrapper.removeEventListener("pointermove",o),this.wrapper.removeEventListener("pointerup",e),this.wrapper.removeEventListener("pointercancel",e);});}getBuiltinSVG(){return `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 120"
|
|
932
|
+
width="100%" height="100%" role="img" aria-label="Robot">
|
|
933
|
+
<defs>
|
|
934
|
+
<linearGradient id="rtGrad${this.id}" x1="0" y1="0" x2="1" y2="1">
|
|
935
|
+
<stop offset="0%" stop-color="#E2F0FF"/>
|
|
936
|
+
<stop offset="100%" stop-color="#B8D8FF"/>
|
|
937
|
+
</linearGradient>
|
|
938
|
+
<linearGradient id="rtAccent${this.id}" x1="0" y1="0" x2="0" y2="1">
|
|
939
|
+
<stop offset="0%" stop-color="#7CB9FF"/>
|
|
940
|
+
<stop offset="100%" stop-color="#4A90D9"/>
|
|
941
|
+
</linearGradient>
|
|
942
|
+
</defs>
|
|
943
|
+
<!-- Antenna -->
|
|
944
|
+
<line x1="50" y1="4" x2="50" y2="18" stroke="#2B3A55" stroke-width="2.5" stroke-linecap="round"/>
|
|
945
|
+
<circle cx="50" cy="4" r="4" fill="#FF6B6B"/>
|
|
946
|
+
<!-- Head -->
|
|
947
|
+
<rect x="24" y="18" width="52" height="40" rx="10" ry="10"
|
|
948
|
+
fill="url(#rtGrad${this.id})" stroke="#2B3A55" stroke-width="2"/>
|
|
949
|
+
<!-- Eyes -->
|
|
950
|
+
<circle cx="38" cy="36" r="6" fill="#2B3A55"/>
|
|
951
|
+
<circle cx="62" cy="36" r="6" fill="#2B3A55"/>
|
|
952
|
+
<circle cx="40" cy="34" r="2" fill="#ffffff"/>
|
|
953
|
+
<circle cx="64" cy="34" r="2" fill="#ffffff"/>
|
|
954
|
+
<!-- Mouth -->
|
|
955
|
+
<path d="M 38 50 Q 50 58 62 50" stroke="#2B3A55" stroke-width="2"
|
|
956
|
+
fill="none" stroke-linecap="round"/>
|
|
957
|
+
<!-- Neck -->
|
|
958
|
+
<rect x="44" y="58" width="12" height="8" rx="3"
|
|
959
|
+
fill="url(#rtAccent${this.id})" stroke="#2B3A55" stroke-width="1.5"/>
|
|
960
|
+
<!-- Body -->
|
|
961
|
+
<rect x="22" y="66" width="56" height="44" rx="10" ry="10"
|
|
962
|
+
fill="url(#rtGrad${this.id})" stroke="#2B3A55" stroke-width="2"/>
|
|
963
|
+
<!-- Chest panel -->
|
|
964
|
+
<rect x="34" y="76" width="32" height="20" rx="5"
|
|
965
|
+
fill="url(#rtAccent${this.id})" stroke="#2B3A55" stroke-width="1.5"/>
|
|
966
|
+
<circle cx="42" cy="86" r="3" fill="#FF6B6B"/>
|
|
967
|
+
<circle cx="50" cy="86" r="3" fill="#FFD700"/>
|
|
968
|
+
<circle cx="58" cy="86" r="3" fill="#6BFF8A"/>
|
|
969
|
+
<!-- Arms -->
|
|
970
|
+
<rect x="4" y="68" width="18" height="30" rx="9"
|
|
971
|
+
fill="url(#rtGrad${this.id})" stroke="#2B3A55" stroke-width="2"/>
|
|
972
|
+
<rect x="78" y="68" width="18" height="30" rx="9"
|
|
973
|
+
fill="url(#rtGrad${this.id})" stroke="#2B3A55" stroke-width="2"/>
|
|
974
|
+
<!-- Legs -->
|
|
975
|
+
<rect x="30" y="110" width="16" height="10" rx="5"
|
|
976
|
+
fill="url(#rtAccent${this.id})" stroke="#2B3A55" stroke-width="1.5"/>
|
|
977
|
+
<rect x="54" y="110" width="16" height="10" rx="5"
|
|
978
|
+
fill="url(#rtAccent${this.id})" stroke="#2B3A55" stroke-width="1.5"/>
|
|
979
|
+
</svg>`}},b=class b{constructor(){this.activeToasts=[];this.queue=[];this.globalLimit=0;new A;}static getInstance(){return b._instance||(b._instance=new b),b._instance}show(t){if(typeof document>"u")return -1;let o=E(),e=t.limit??this.globalLimit;return e>0&&this.activeToasts.length>=e?(this.queue.push({options:t,id:o}),o):(this.spawnToast(t,o),o)}closeAll(){this.queue=[],[...this.activeToasts].forEach(t=>t.close());}closeById(t){let o=this.activeToasts.find(e=>e.id===t);o&&o.close(),this.queue=this.queue.filter(e=>e.id!==t);}spawnToast(t,o){let e=new y(o,t,r=>this.handleRemoved(r));t.newestOnTop??false?this.activeToasts.unshift(e):this.activeToasts.push(e),this.restack();}handleRemoved(t){if(this.activeToasts=this.activeToasts.filter(o=>o.id!==t),this.restack(),this.queue.length>0){let o=this.queue.shift();setTimeout(()=>this.spawnToast(o.options,o.id),120);}}restack(){let t={};this.activeToasts.forEach(o=>{let e=o.options.position;t[e]||(t[e]=[]),t[e].push(o);}),Object.keys(t).forEach(o=>{let e=t[o],s=20;e.forEach(r=>{r.shiftVertical(s),s+=r.getWrapperHeight()+L;});});}};b._instance=null;var d=b;function w(i=5e3){return new Promise((t,o)=>{if(typeof window>"u"){o(new Error("[RobotToast] Cannot run outside of a browser environment."));return}if(window.RobotToast){t(window.RobotToast);return}let e=Date.now(),s=setInterval(()=>{if(window.RobotToast){clearInterval(s),t(window.RobotToast);return}Date.now()-e>=i&&(clearInterval(s),o(new Error(`[RobotToast] Failed to load within ${i}ms.`)));},80);})}async function M(i){try{return (await w()).show(i)}catch(t){return console.error("[RobotToast] showRobotToast failed:",t),-1}}async function R(){try{(await w()).closeAll();}catch(i){console.error("[RobotToast] closeAllRobotToasts failed:",i);}}async function G(){return w()}var O=["top-right","top-left","top-center","bottom-right","bottom-left","bottom-center"],S=["default","info","success","warning","error"],C=["light","dark","colored"],I=["bounce","slide","zoom","flip"];function g(i){return typeof i=="string"?{message:i}:i}function p(i){return typeof window>"u"?-1:d.getInstance().show(g(i))}p.success=i=>p({...g(i),type:"success"});p.error=i=>p({...g(i),type:"error"});p.info=i=>p({...g(i),type:"info"});p.warning=i=>p({...g(i),type:"warning"});p.closeAll=()=>{typeof window>"u"||d.getInstance().closeAll();};p.closeById=i=>{typeof window>"u"||d.getInstance().closeById(i);};function D(){if(typeof window>"u"||window.__robotToastLoaded)return;window.__robotToastLoaded=true;let i={show:t=>d.getInstance().show(t),closeAll:()=>d.getInstance().closeAll(),closeById:t=>d.getInstance().closeById(t),getInstance:()=>d.getInstance()};window.RobotToast=i;}D();export{u as ROBOT_IMAGES,d as RobotToast,d as RobotToastManager,O as TOAST_POSITIONS,C as TOAST_THEMES,I as TOAST_TRANSITIONS,S as TOAST_TYPES,R as closeAllRobotToasts,w as ensureRobotToastReady,G as getRobotToastInstance,M as showRobotToast,p as toast};//# sourceMappingURL=index.mjs.map
|
|
980
|
+
//# sourceMappingURL=index.mjs.map
|