appclean 2.0.2 → 2.0.3

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.
@@ -1,6 +1,11 @@
1
- /* Animations - Keyframes and Transition Effects */
1
+ /* ============================================================================
2
+ Animations - Modern Keyframes and Transition Effects
3
+ ============================================================================ */
4
+
5
+ /* ============================================================================
6
+ Fade Animations
7
+ ============================================================================ */
2
8
 
3
- /* Fade Animations */
4
9
  @keyframes fadeIn {
5
10
  from {
6
11
  opacity: 0;
@@ -19,6 +24,361 @@
19
24
  }
20
25
  }
21
26
 
27
+ @keyframes fadeInScale {
28
+ from {
29
+ opacity: 0;
30
+ transform: scale(0.95);
31
+ }
32
+ to {
33
+ opacity: 1;
34
+ transform: scale(1);
35
+ }
36
+ }
37
+
38
+ /* ============================================================================
39
+ Slide Animations
40
+ ============================================================================ */
41
+
42
+ @keyframes slideUp {
43
+ from {
44
+ opacity: 0;
45
+ transform: translateY(1rem);
46
+ }
47
+ to {
48
+ opacity: 1;
49
+ transform: translateY(0);
50
+ }
51
+ }
52
+
53
+ @keyframes slideDown {
54
+ from {
55
+ opacity: 0;
56
+ transform: translateY(-1rem);
57
+ }
58
+ to {
59
+ opacity: 1;
60
+ transform: translateY(0);
61
+ }
62
+ }
63
+
64
+ @keyframes slideLeft {
65
+ from {
66
+ opacity: 0;
67
+ transform: translateX(-1rem);
68
+ }
69
+ to {
70
+ opacity: 1;
71
+ transform: translateX(0);
72
+ }
73
+ }
74
+
75
+ @keyframes slideRight {
76
+ from {
77
+ opacity: 0;
78
+ transform: translateX(1rem);
79
+ }
80
+ to {
81
+ opacity: 1;
82
+ transform: translateX(0);
83
+ }
84
+ }
85
+
86
+ @keyframes slideInRight {
87
+ from {
88
+ opacity: 0;
89
+ transform: translateX(1.5rem);
90
+ }
91
+ to {
92
+ opacity: 1;
93
+ transform: translateX(0);
94
+ }
95
+ }
96
+
97
+ /* ============================================================================
98
+ Zoom Animations
99
+ ============================================================================ */
100
+
101
+ @keyframes zoomIn {
102
+ from {
103
+ opacity: 0;
104
+ transform: scale(0.9);
105
+ }
106
+ to {
107
+ opacity: 1;
108
+ transform: scale(1);
109
+ }
110
+ }
111
+
112
+ @keyframes zoomOut {
113
+ from {
114
+ opacity: 1;
115
+ transform: scale(1);
116
+ }
117
+ to {
118
+ opacity: 0;
119
+ transform: scale(0.9);
120
+ }
121
+ }
122
+
123
+ /* ============================================================================
124
+ Bounce Animations
125
+ ============================================================================ */
126
+
127
+ @keyframes bounce {
128
+ 0%, 100% {
129
+ transform: translateY(0);
130
+ }
131
+ 50% {
132
+ transform: translateY(-0.5rem);
133
+ }
134
+ }
135
+
136
+ @keyframes bounceIn {
137
+ from {
138
+ opacity: 0;
139
+ transform: scale(0.3);
140
+ }
141
+ 50% {
142
+ opacity: 1;
143
+ transform: scale(1.05);
144
+ }
145
+ to {
146
+ transform: scale(1);
147
+ }
148
+ }
149
+
150
+ /* ============================================================================
151
+ Pulse Animations
152
+ ============================================================================ */
153
+
154
+ @keyframes pulse {
155
+ 0%, 100% {
156
+ opacity: 1;
157
+ }
158
+ 50% {
159
+ opacity: 0.5;
160
+ }
161
+ }
162
+
163
+ @keyframes pulseShadow {
164
+ 0%, 100% {
165
+ box-shadow: 0 0 0 0 rgba(59, 130, 246, 0.7);
166
+ }
167
+ 70% {
168
+ box-shadow: 0 0 0 10px rgba(59, 130, 246, 0);
169
+ }
170
+ }
171
+
172
+ /* ============================================================================
173
+ Shake Animations
174
+ ============================================================================ */
175
+
176
+ @keyframes shake {
177
+ 0%, 100% {
178
+ transform: translateX(0);
179
+ }
180
+ 10%, 30%, 50%, 70%, 90% {
181
+ transform: translateX(-2px);
182
+ }
183
+ 20%, 40%, 60%, 80% {
184
+ transform: translateX(2px);
185
+ }
186
+ }
187
+
188
+ /* ============================================================================
189
+ Rotate Animations
190
+ ============================================================================ */
191
+
192
+ @keyframes spin {
193
+ from {
194
+ transform: rotate(0deg);
195
+ }
196
+ to {
197
+ transform: rotate(360deg);
198
+ }
199
+ }
200
+
201
+ @keyframes spinReverse {
202
+ from {
203
+ transform: rotate(360deg);
204
+ }
205
+ to {
206
+ transform: rotate(0deg);
207
+ }
208
+ }
209
+
210
+ /* ============================================================================
211
+ Loading Animations
212
+ ============================================================================ */
213
+
214
+ @keyframes loading {
215
+ 0% {
216
+ background-position: 200% 0;
217
+ }
218
+ 100% {
219
+ background-position: -200% 0;
220
+ }
221
+ }
222
+
223
+ @keyframes skeletonLoading {
224
+ 0% {
225
+ background-position: -1000px 0;
226
+ }
227
+ 100% {
228
+ background-position: 1000px 0;
229
+ }
230
+ }
231
+
232
+ /* ============================================================================
233
+ Text Animations
234
+ ============================================================================ */
235
+
236
+ @keyframes typewriter {
237
+ from {
238
+ width: 0;
239
+ }
240
+ to {
241
+ width: 100%;
242
+ }
243
+ }
244
+
245
+ @keyframes blink {
246
+ 0%, 49%, 100% {
247
+ opacity: 1;
248
+ }
249
+ 50%, 99% {
250
+ opacity: 0;
251
+ }
252
+ }
253
+
254
+ /* ============================================================================
255
+ Glow Animations
256
+ ============================================================================ */
257
+
258
+ @keyframes glow {
259
+ 0%, 100% {
260
+ box-shadow: 0 0 5px rgba(59, 130, 246, 0.5);
261
+ }
262
+ 50% {
263
+ box-shadow: 0 0 20px rgba(59, 130, 246, 0.8);
264
+ }
265
+ }
266
+
267
+ /* ============================================================================
268
+ Float Animation
269
+ ============================================================================ */
270
+
271
+ @keyframes float {
272
+ 0%, 100% {
273
+ transform: translateY(0);
274
+ }
275
+ 50% {
276
+ transform: translateY(-10px);
277
+ }
278
+ }
279
+
280
+ /* ============================================================================
281
+ Flip Animations
282
+ ============================================================================ */
283
+
284
+ @keyframes flipIn {
285
+ from {
286
+ opacity: 0;
287
+ transform: perspective(400px) rotateY(90deg);
288
+ }
289
+ to {
290
+ opacity: 1;
291
+ transform: perspective(400px) rotateY(0deg);
292
+ }
293
+ }
294
+
295
+ @keyframes flipOut {
296
+ from {
297
+ opacity: 1;
298
+ transform: perspective(400px) rotateY(0deg);
299
+ }
300
+ to {
301
+ opacity: 0;
302
+ transform: perspective(400px) rotateY(90deg);
303
+ }
304
+ }
305
+
306
+ /* ============================================================================
307
+ Wave Animation
308
+ ============================================================================ */
309
+
310
+ @keyframes wave {
311
+ 0%, 100% {
312
+ transform: rotate(0deg);
313
+ }
314
+ 25% {
315
+ transform: rotate(20deg);
316
+ }
317
+ 75% {
318
+ transform: rotate(-20deg);
319
+ }
320
+ }
321
+
322
+ /* ============================================================================
323
+ Utility Animation Classes
324
+ ============================================================================ */
325
+
326
+ .animate-fade-in {
327
+ animation: fadeIn var(--transition-normal);
328
+ }
329
+
330
+ .animate-fade-out {
331
+ animation: fadeOut var(--transition-normal);
332
+ }
333
+
334
+ .animate-slide-up {
335
+ animation: slideUp var(--transition-normal);
336
+ }
337
+
338
+ .animate-slide-down {
339
+ animation: slideDown var(--transition-normal);
340
+ }
341
+
342
+ .animate-slide-left {
343
+ animation: slideLeft var(--transition-normal);
344
+ }
345
+
346
+ .animate-slide-right {
347
+ animation: slideRight var(--transition-normal);
348
+ }
349
+
350
+ .animate-zoom-in {
351
+ animation: zoomIn var(--transition-normal);
352
+ }
353
+
354
+ .animate-zoom-out {
355
+ animation: zoomOut var(--transition-normal);
356
+ }
357
+
358
+ .animate-bounce {
359
+ animation: bounce var(--transition-slow);
360
+ }
361
+
362
+ .animate-pulse {
363
+ animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
364
+ }
365
+
366
+ .animate-spin {
367
+ animation: spin 1s linear infinite;
368
+ }
369
+
370
+ .animate-shake {
371
+ animation: shake 0.5s ease-in-out;
372
+ }
373
+
374
+ .animate-float {
375
+ animation: float 3s ease-in-out infinite;
376
+ }
377
+
378
+ .animate-wave {
379
+ animation: wave 0.5s ease-in-out;
380
+ }
381
+
22
382
  .fade-in {
23
383
  animation: fadeIn var(--transition-normal) ease-out forwards;
24
384
  }