@neut/ui 0.0.1 → 0.0.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.
Files changed (35) hide show
  1. package/README.md +7 -6
  2. package/dist/components/accordion/Accordion/Accordion.context.d.ts +9 -10
  3. package/dist/components/accordion/Accordion/Accordion.context.js +21 -25
  4. package/dist/components/accordion/Accordion/Accordion.d.ts +1 -1
  5. package/dist/components/accordion/Accordion/Accordion.js +22 -20
  6. package/dist/components/accordion/Accordion/Accordion.types.d.ts +8 -7
  7. package/dist/components/accordion/Accordion/index.d.ts +2 -0
  8. package/dist/components/accordion/Accordion/useAccordion.d.ts +3 -0
  9. package/dist/components/accordion/Accordion/useAccordion.js +32 -0
  10. package/dist/components/accordion/AccordionContent/AccordionContent.js +22 -31
  11. package/dist/components/accordion/AccordionItem/AccordionItem.context.d.ts +5 -7
  12. package/dist/components/accordion/AccordionItem/AccordionItem.context.js +4 -20
  13. package/dist/components/accordion/AccordionItem/AccordionItem.d.ts +1 -1
  14. package/dist/components/accordion/AccordionItem/AccordionItem.js +17 -18
  15. package/dist/components/accordion/AccordionItem/AccordionItem.types.d.ts +4 -3
  16. package/dist/components/accordion/AccordionTrigger/AccordionTrigger.js +15 -20
  17. package/dist/components/scroll-area/ScrollArea/ScrollArea.context.d.ts +1 -1
  18. package/dist/components/scroll-area/ScrollArea/ScrollArea.js +29 -29
  19. package/dist/components/sidebar/SidebarMenuButton/SidebarMenuButton.styles.js +6 -5
  20. package/dist/components/sidebar/SidebarMenuButton/SidebarMenuButton.types.d.ts +1 -1
  21. package/dist/components/tooltip/TooltipContent/TooltipContent.js +8 -8
  22. package/dist/components/tooltip/TooltipContent/useTooltipContent.js +28 -28
  23. package/dist/components/tooltip/TooltipTrigger/TooltipTrigger.d.ts +2 -2
  24. package/dist/components/tooltip/TooltipTrigger/TooltipTrigger.js +1 -1
  25. package/dist/components/tooltip/TooltipTrigger/useTooltipTrigger.js +11 -10
  26. package/dist/hooks/index.d.ts +1 -0
  27. package/dist/hooks/useFontLoader.d.ts +86 -0
  28. package/dist/hooks/useFontLoader.js +87 -0
  29. package/dist/index.d.ts +1 -0
  30. package/dist/index.js +3 -1
  31. package/dist/ui.css +3 -0
  32. package/package.json +8 -8
  33. package/dist/styles/animate.css +0 -250
  34. package/dist/styles/index.css +0 -100
  35. package/dist/styles/toast.css +0 -745
@@ -1,745 +0,0 @@
1
- html[dir="ltr"],
2
- [data-sonner-toaster][dir="ltr"] {
3
- --toast-icon-margin-start: -3px;
4
- --toast-icon-margin-end: 4px;
5
- --toast-svg-margin-start: -1px;
6
- --toast-svg-margin-end: 0px;
7
- --toast-button-margin-start: auto;
8
- --toast-button-margin-end: 0;
9
- --toast-close-button-start: 0;
10
- --toast-close-button-end: unset;
11
- --toast-close-button-transform: translate(-35%, -35%);
12
- }
13
-
14
- html[dir="rtl"],
15
- [data-sonner-toaster][dir="rtl"] {
16
- --toast-icon-margin-start: 4px;
17
- --toast-icon-margin-end: -3px;
18
- --toast-svg-margin-start: 0px;
19
- --toast-svg-margin-end: -1px;
20
- --toast-button-margin-start: 0;
21
- --toast-button-margin-end: auto;
22
- --toast-close-button-start: unset;
23
- --toast-close-button-end: 0;
24
- --toast-close-button-transform: translate(35%, -35%);
25
- }
26
-
27
- [data-sonner-toaster] {
28
- position: fixed;
29
- width: var(--width);
30
- font-family:
31
- ui-sans-serif,
32
- system-ui,
33
- -apple-system,
34
- BlinkMacSystemFont,
35
- Segoe UI,
36
- Roboto,
37
- Helvetica Neue,
38
- Arial,
39
- Noto Sans,
40
- sans-serif,
41
- Apple Color Emoji,
42
- Segoe UI Emoji,
43
- Segoe UI Symbol,
44
- Noto Color Emoji;
45
- --gray1: hsl(0, 0%, 99%);
46
- --gray2: hsl(0, 0%, 97.3%);
47
- --gray3: hsl(0, 0%, 95.1%);
48
- --gray4: hsl(0, 0%, 93%);
49
- --gray5: hsl(0, 0%, 90.9%);
50
- --gray6: hsl(0, 0%, 88.7%);
51
- --gray7: hsl(0, 0%, 85.8%);
52
- --gray8: hsl(0, 0%, 78%);
53
- --gray9: hsl(0, 0%, 56.1%);
54
- --gray10: hsl(0, 0%, 52.3%);
55
- --gray11: hsl(0, 0%, 43.5%);
56
- --gray12: hsl(0, 0%, 9%);
57
- --border-radius: 8px;
58
- box-sizing: border-box;
59
- padding: 0;
60
- margin: 0;
61
- list-style: none;
62
- outline: none;
63
- z-index: 999999999;
64
- transition: transform 400ms ease;
65
- }
66
-
67
- @media (hover: none) and (pointer: coarse) {
68
- [data-sonner-toaster][data-lifted="true"] {
69
- transform: none;
70
- }
71
- }
72
-
73
- [data-sonner-toaster][data-x-position="right"] {
74
- right: var(--offset-right);
75
- }
76
- [data-sonner-toaster][data-x-position="left"] {
77
- left: var(--offset-left);
78
- }
79
- [data-sonner-toaster][data-x-position="center"] {
80
- left: 50%;
81
- transform: translateX(-50%);
82
- }
83
- [data-sonner-toaster][data-y-position="top"] {
84
- top: var(--offset-top);
85
- }
86
- [data-sonner-toaster][data-y-position="bottom"] {
87
- bottom: var(--offset-bottom);
88
- }
89
-
90
- [data-sonner-toast] {
91
- --y: translateY(100%);
92
- --lift-amount: calc(var(--lift) * var(--gap));
93
- z-index: var(--z-index);
94
- position: absolute;
95
- opacity: 0;
96
- transform: var(--y);
97
- touch-action: none;
98
- transition:
99
- transform 400ms,
100
- opacity 400ms,
101
- height 400ms,
102
- box-shadow 200ms;
103
- box-sizing: border-box;
104
- outline: none;
105
- overflow-wrap: anywhere;
106
- }
107
-
108
- [data-sonner-toast][data-styled="true"] {
109
- padding: 16px;
110
- background: var(--normal-bg);
111
- border: 1px solid var(--normal-border);
112
- color: var(--normal-text);
113
- border-radius: var(--border-radius);
114
- box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.1);
115
- width: var(--width);
116
- font-size: 13px;
117
- display: flex;
118
- align-items: center;
119
- gap: 6px;
120
- }
121
-
122
- [data-sonner-toast]:focus-visible {
123
- box-shadow:
124
- 0px 4px 12px rgba(0, 0, 0, 0.1),
125
- 0 0 0 2px rgba(0, 0, 0, 0.2);
126
- }
127
-
128
- [data-sonner-toast][data-y-position="top"] {
129
- top: 0;
130
- --y: translateY(-100%);
131
- --lift: 1;
132
- --lift-amount: calc(1 * var(--gap));
133
- }
134
-
135
- [data-sonner-toast][data-y-position="bottom"] {
136
- bottom: 0;
137
- --y: translateY(100%);
138
- --lift: -1;
139
- --lift-amount: calc(var(--lift) * var(--gap));
140
- }
141
-
142
- [data-sonner-toast][data-styled="true"] [data-description] {
143
- font-weight: 400;
144
- line-height: 1.4;
145
- color: #3f3f3f;
146
- }
147
-
148
- [data-rich-colors="true"][data-sonner-toast][data-styled="true"]
149
- [data-description] {
150
- color: inherit;
151
- }
152
-
153
- [data-sonner-toaster][data-sonner-theme="dark"] [data-description] {
154
- color: hsl(0, 0%, 91%);
155
- }
156
-
157
- [data-sonner-toast][data-styled="true"] [data-title] {
158
- font-weight: 500;
159
- line-height: 1.5;
160
- color: inherit;
161
- }
162
-
163
- [data-sonner-toast][data-styled="true"] [data-icon] {
164
- display: flex;
165
- height: 16px;
166
- width: 16px;
167
- position: relative;
168
- justify-content: flex-start;
169
- align-items: center;
170
- flex-shrink: 0;
171
- margin-left: var(--toast-icon-margin-start);
172
- margin-right: var(--toast-icon-margin-end);
173
- }
174
-
175
- [data-sonner-toast][data-promise="true"] [data-icon] > svg {
176
- opacity: 0;
177
- transform: scale(0.8);
178
- transform-origin: center;
179
- animation: sonner-fade-in 300ms ease forwards;
180
- }
181
-
182
- [data-sonner-toast][data-styled="true"] [data-icon] > * {
183
- flex-shrink: 0;
184
- }
185
-
186
- [data-sonner-toast][data-styled="true"] [data-icon] svg {
187
- margin-left: var(--toast-svg-margin-start);
188
- margin-right: var(--toast-svg-margin-end);
189
- }
190
-
191
- [data-sonner-toast][data-styled="true"] [data-content] {
192
- display: flex;
193
- flex-direction: column;
194
- gap: 2px;
195
- }
196
-
197
- [data-sonner-toast][data-styled="true"] [data-button] {
198
- border-radius: 4px;
199
- padding-left: 8px;
200
- padding-right: 8px;
201
- height: 24px;
202
- font-size: 12px;
203
- color: var(--normal-bg);
204
- background: var(--normal-text);
205
- margin-left: var(--toast-button-margin-start);
206
- margin-right: var(--toast-button-margin-end);
207
- border: none;
208
- font-weight: 500;
209
- cursor: pointer;
210
- outline: none;
211
- display: flex;
212
- align-items: center;
213
- flex-shrink: 0;
214
- transition:
215
- opacity 400ms,
216
- box-shadow 200ms;
217
- }
218
-
219
- [data-sonner-toast][data-styled="true"] [data-button]:focus-visible {
220
- box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.4);
221
- }
222
-
223
- [data-sonner-toast][data-styled="true"] [data-button]:first-of-type {
224
- margin-left: var(--toast-button-margin-start);
225
- margin-right: var(--toast-button-margin-end);
226
- }
227
-
228
- [data-sonner-toast][data-styled="true"] [data-cancel] {
229
- color: var(--normal-text);
230
- background: rgba(0, 0, 0, 0.08);
231
- }
232
-
233
- [data-sonner-toaster][data-sonner-theme="dark"]
234
- [data-sonner-toast][data-styled="true"]
235
- [data-cancel] {
236
- background: rgba(255, 255, 255, 0.3);
237
- }
238
-
239
- [data-sonner-toast][data-styled="true"] [data-close-button] {
240
- position: absolute;
241
- left: var(--toast-close-button-start);
242
- right: var(--toast-close-button-end);
243
- top: 0;
244
- height: 20px;
245
- width: 20px;
246
- display: flex;
247
- justify-content: center;
248
- align-items: center;
249
- padding: 0;
250
- color: var(--normal-text);
251
- background: var(--normal-bg);
252
- border: 1px solid var(--normal-border);
253
- transform: var(--toast-close-button-transform);
254
- border-radius: 50%;
255
- cursor: pointer;
256
- z-index: 1;
257
- transition:
258
- opacity 100ms,
259
- background 200ms,
260
- border-color 200ms;
261
- }
262
-
263
- [data-sonner-toast][data-styled="true"] [data-close-button]:focus-visible {
264
- box-shadow:
265
- 0px 4px 12px rgba(0, 0, 0, 0.1),
266
- 0 0 0 2px rgba(0, 0, 0, 0.2);
267
- }
268
-
269
- [data-sonner-toast][data-styled="true"] [data-disabled="true"] {
270
- cursor: not-allowed;
271
- }
272
-
273
- [data-sonner-toast][data-styled="true"]:hover [data-close-button]:hover {
274
- background: var(--gray2);
275
- border-color: var(--gray5);
276
- }
277
-
278
- [data-sonner-toast][data-swiping="true"]::before {
279
- content: "";
280
- position: absolute;
281
- left: -100%;
282
- right: -100%;
283
- height: 100%;
284
- z-index: -1;
285
- }
286
-
287
- [data-sonner-toast][data-y-position="top"][data-swiping="true"]::before {
288
- bottom: 50%;
289
- transform: scaleY(3) translateY(50%);
290
- }
291
-
292
- [data-sonner-toast][data-y-position="bottom"][data-swiping="true"]::before {
293
- top: 50%;
294
- transform: scaleY(3) translateY(-50%);
295
- }
296
-
297
- [data-sonner-toast][data-swiping="false"][data-removed="true"]::before {
298
- content: "";
299
- position: absolute;
300
- inset: 0;
301
- transform: scaleY(2);
302
- }
303
-
304
- [data-sonner-toast][data-expanded="true"]::after {
305
- content: "";
306
- position: absolute;
307
- left: 0;
308
- height: calc(var(--gap) + 1px);
309
- bottom: 100%;
310
- width: 100%;
311
- }
312
-
313
- [data-sonner-toast][data-mounted="true"] {
314
- --y: translateY(0);
315
- opacity: 1;
316
- }
317
-
318
- [data-sonner-toast][data-expanded="false"][data-front="false"] {
319
- --scale: var(--toasts-before) * 0.05 + 1;
320
- --y: translateY(calc(var(--lift-amount) * var(--toasts-before)))
321
- scale(calc(-1 * var(--scale)));
322
- height: var(--front-toast-height);
323
- }
324
-
325
- [data-sonner-toast] > * {
326
- transition: opacity 400ms;
327
- }
328
-
329
- [data-sonner-toast][data-x-position="right"] {
330
- right: 0;
331
- }
332
- [data-sonner-toast][data-x-position="left"] {
333
- left: 0;
334
- }
335
-
336
- [data-sonner-toast][data-expanded="false"][data-front="false"][data-styled="true"]
337
- > * {
338
- opacity: 0;
339
- }
340
-
341
- [data-sonner-toast][data-visible="false"] {
342
- opacity: 0;
343
- pointer-events: none;
344
- }
345
-
346
- [data-sonner-toast][data-mounted="true"][data-expanded="true"] {
347
- --y: translateY(calc(var(--lift) * var(--offset)));
348
- height: var(--initial-height);
349
- }
350
-
351
- [data-sonner-toast][data-removed="true"][data-front="true"][data-swipe-out="false"] {
352
- --y: translateY(calc(var(--lift) * -100%));
353
- opacity: 0;
354
- }
355
-
356
- [data-sonner-toast][data-removed="true"][data-front="false"][data-swipe-out="false"][data-expanded="true"] {
357
- --y: translateY(calc(var(--lift) * var(--offset) + var(--lift) * -100%));
358
- opacity: 0;
359
- }
360
-
361
- [data-sonner-toast][data-removed="true"][data-front="false"][data-swipe-out="false"][data-expanded="false"] {
362
- --y: translateY(calc(var(--lift) * var(--offset) + var(--lift) * -100%));
363
- opacity: 0;
364
- transition:
365
- transform 500ms,
366
- opacity 200ms;
367
- }
368
-
369
- [data-sonner-toast][data-removed="true"][data-front="false"]::before {
370
- height: calc(var(--initial-height) + 20%);
371
- }
372
-
373
- [data-sonner-toast][data-swiping="true"] {
374
- transform: var(--y) translateY(var(--swipe-amount-y, 0px))
375
- translateX(var(--swipe-amount-x, 0px));
376
- transition: none;
377
- }
378
-
379
- [data-sonner-toast][data-swiped="true"] {
380
- -webkit-user-select: none; /* Safari 3+ */
381
- user-select: none;
382
- }
383
-
384
- [data-sonner-toast][data-swipe-out="true"][data-swipe-direction="right"] {
385
- animation: swipe-out-right 200ms ease-out forwards;
386
- }
387
-
388
- [data-sonner-toast][data-swipe-out="true"][data-swipe-direction="left"] {
389
- animation: swipe-out-left 200ms ease-out forwards;
390
- }
391
-
392
- [data-sonner-toast][data-swipe-out="true"][data-swipe-direction="up"] {
393
- animation: swipe-out-up 200ms ease-out forwards;
394
- }
395
-
396
- [data-sonner-toast][data-swipe-out="true"][data-swipe-direction="down"] {
397
- animation: swipe-out-down 200ms ease-out forwards;
398
- }
399
-
400
- @keyframes swipe-out-right {
401
- from {
402
- transform: var(--y) translateX(var(--swipe-amount-x));
403
- opacity: 1;
404
- }
405
- to {
406
- transform: var(--y) translateX(calc(var(--swipe-amount-x) + 100%));
407
- opacity: 0;
408
- }
409
- }
410
-
411
- @keyframes swipe-out-left {
412
- from {
413
- transform: var(--y) translateX(var(--swipe-amount-x));
414
- opacity: 1;
415
- }
416
- to {
417
- transform: var(--y) translateX(calc(var(--swipe-amount-x) - 100%));
418
- opacity: 0;
419
- }
420
- }
421
-
422
- @keyframes swipe-out-up {
423
- from {
424
- transform: var(--y) translateY(var(--swipe-amount-y));
425
- opacity: 1;
426
- }
427
- to {
428
- transform: var(--y) translateY(calc(var(--swipe-amount-y) - 100%));
429
- opacity: 0;
430
- }
431
- }
432
-
433
- @keyframes swipe-out-down {
434
- from {
435
- transform: var(--y) translateY(var(--swipe-amount-y));
436
- opacity: 1;
437
- }
438
- to {
439
- transform: var(--y) translateY(calc(var(--swipe-amount-y) + 100%));
440
- opacity: 0;
441
- }
442
- }
443
-
444
- @media (max-width: 600px) {
445
- [data-sonner-toaster] {
446
- position: fixed;
447
- right: var(--mobile-offset-right);
448
- left: var(--mobile-offset-left);
449
- width: 100%;
450
- }
451
-
452
- [data-sonner-toaster][dir="rtl"] {
453
- left: calc(var(--mobile-offset-left) * -1);
454
- }
455
-
456
- [data-sonner-toaster] [data-sonner-toast] {
457
- left: 0;
458
- right: 0;
459
- width: calc(100% - var(--mobile-offset-left) * 2);
460
- }
461
-
462
- [data-sonner-toaster][data-x-position="left"] {
463
- left: var(--mobile-offset-left);
464
- }
465
- [data-sonner-toaster][data-y-position="bottom"] {
466
- bottom: var(--mobile-offset-bottom);
467
- }
468
- [data-sonner-toaster][data-y-position="top"] {
469
- top: var(--mobile-offset-top);
470
- }
471
- [data-sonner-toaster][data-x-position="center"] {
472
- left: var(--mobile-offset-left);
473
- right: var(--mobile-offset-right);
474
- transform: none;
475
- }
476
- }
477
-
478
- /* ─── Theme: light ─────────────────────────────────────────────────────────── */
479
- [data-sonner-toaster][data-sonner-theme="light"] {
480
- --normal-bg: #fff;
481
- --normal-border: var(--gray4);
482
- --normal-text: var(--gray12);
483
-
484
- --success-bg: hsl(143, 85%, 96%);
485
- --success-border: hsl(145, 92%, 87%);
486
- --success-text: hsl(140, 100%, 27%);
487
-
488
- --info-bg: hsl(208, 100%, 97%);
489
- --info-border: hsl(221, 91%, 93%);
490
- --info-text: hsl(210, 92%, 45%);
491
-
492
- --warning-bg: hsl(49, 100%, 97%);
493
- --warning-border: hsl(49, 91%, 84%);
494
- --warning-text: hsl(31, 92%, 45%);
495
-
496
- --error-bg: hsl(359, 100%, 97%);
497
- --error-border: hsl(359, 100%, 94%);
498
- --error-text: hsl(360, 100%, 45%);
499
- }
500
-
501
- [data-sonner-toaster][data-sonner-theme="light"]
502
- [data-sonner-toast][data-invert="true"] {
503
- --normal-bg: #000;
504
- --normal-border: hsl(0, 0%, 20%);
505
- --normal-text: var(--gray1);
506
- }
507
-
508
- /* ─── Theme: dark ──────────────────────────────────────────────────────────── */
509
- [data-sonner-toaster][data-sonner-theme="dark"]
510
- [data-sonner-toast][data-invert="true"] {
511
- --normal-bg: #fff;
512
- --normal-border: var(--gray3);
513
- --normal-text: var(--gray12);
514
- }
515
-
516
- [data-sonner-toaster][data-sonner-theme="dark"] {
517
- --normal-bg: #000;
518
- --normal-bg-hover: hsl(0, 0%, 12%);
519
- --normal-border: hsl(0, 0%, 20%);
520
- --normal-border-hover: hsl(0, 0%, 25%);
521
- --normal-text: var(--gray1);
522
-
523
- --success-bg: hsl(150, 100%, 6%);
524
- --success-border: hsl(147, 100%, 12%);
525
- --success-text: hsl(150, 86%, 65%);
526
-
527
- --info-bg: hsl(215, 100%, 6%);
528
- --info-border: hsl(223, 43%, 17%);
529
- --info-text: hsl(216, 87%, 65%);
530
-
531
- --warning-bg: hsl(64, 100%, 6%);
532
- --warning-border: hsl(60, 100%, 9%);
533
- --warning-text: hsl(46, 87%, 65%);
534
-
535
- --error-bg: hsl(358, 76%, 10%);
536
- --error-border: hsl(357, 89%, 16%);
537
- --error-text: hsl(358, 100%, 81%);
538
- }
539
-
540
- [data-sonner-toaster][data-sonner-theme="dark"]
541
- [data-sonner-toast]
542
- [data-close-button] {
543
- background: var(--normal-bg);
544
- border-color: var(--normal-border);
545
- color: var(--normal-text);
546
- }
547
-
548
- [data-sonner-toaster][data-sonner-theme="dark"]
549
- [data-sonner-toast]
550
- [data-close-button]:hover {
551
- background: var(--normal-bg-hover);
552
- border-color: var(--normal-border-hover);
553
- }
554
-
555
- /* ─── Rich colors ───────────────────────────────────────────────────────────── */
556
- [data-rich-colors="true"][data-sonner-toast][data-type="success"] {
557
- background: var(--success-bg);
558
- border-color: var(--success-border);
559
- color: var(--success-text);
560
- }
561
-
562
- [data-rich-colors="true"][data-sonner-toast][data-type="success"]
563
- [data-close-button] {
564
- background: var(--success-bg);
565
- border-color: var(--success-border);
566
- color: var(--success-text);
567
- }
568
-
569
- [data-rich-colors="true"][data-sonner-toast][data-type="info"] {
570
- background: var(--info-bg);
571
- border-color: var(--info-border);
572
- color: var(--info-text);
573
- }
574
-
575
- [data-rich-colors="true"][data-sonner-toast][data-type="info"]
576
- [data-close-button] {
577
- background: var(--info-bg);
578
- border-color: var(--info-border);
579
- color: var(--info-text);
580
- }
581
-
582
- [data-rich-colors="true"][data-sonner-toast][data-type="warning"] {
583
- background: var(--warning-bg);
584
- border-color: var(--warning-border);
585
- color: var(--warning-text);
586
- }
587
-
588
- [data-rich-colors="true"][data-sonner-toast][data-type="warning"]
589
- [data-close-button] {
590
- background: var(--warning-bg);
591
- border-color: var(--warning-border);
592
- color: var(--warning-text);
593
- }
594
-
595
- [data-rich-colors="true"][data-sonner-toast][data-type="error"] {
596
- background: var(--error-bg);
597
- border-color: var(--error-border);
598
- color: var(--error-text);
599
- }
600
-
601
- [data-rich-colors="true"][data-sonner-toast][data-type="error"]
602
- [data-close-button] {
603
- background: var(--error-bg);
604
- border-color: var(--error-border);
605
- color: var(--error-text);
606
- }
607
-
608
- /* ─── Loading spinner ───────────────────────────────────────────────────────── */
609
- .sonner-loading-wrapper {
610
- --size: 16px;
611
- height: var(--size);
612
- width: var(--size);
613
- position: absolute;
614
- inset: 0;
615
- z-index: 10;
616
- }
617
-
618
- .sonner-loading-wrapper[data-visible="false"] {
619
- transform-origin: center;
620
- animation: sonner-fade-out 0.2s ease forwards;
621
- }
622
-
623
- .sonner-spinner {
624
- position: relative;
625
- top: 50%;
626
- left: 50%;
627
- height: var(--size);
628
- width: var(--size);
629
- }
630
-
631
- .sonner-loading-bar {
632
- animation: sonner-spin 1.2s linear infinite;
633
- background: var(--gray11);
634
- border-radius: 6px;
635
- height: 8%;
636
- left: -10%;
637
- position: absolute;
638
- top: -3.9%;
639
- width: 24%;
640
- }
641
-
642
- .sonner-loading-bar:nth-child(1) {
643
- animation-delay: -1.2s;
644
- transform: rotate(0.0001deg) translate(146%);
645
- }
646
- .sonner-loading-bar:nth-child(2) {
647
- animation-delay: -1.1s;
648
- transform: rotate(30deg) translate(146%);
649
- }
650
- .sonner-loading-bar:nth-child(3) {
651
- animation-delay: -1s;
652
- transform: rotate(60deg) translate(146%);
653
- }
654
- .sonner-loading-bar:nth-child(4) {
655
- animation-delay: -0.9s;
656
- transform: rotate(90deg) translate(146%);
657
- }
658
- .sonner-loading-bar:nth-child(5) {
659
- animation-delay: -0.8s;
660
- transform: rotate(120deg) translate(146%);
661
- }
662
- .sonner-loading-bar:nth-child(6) {
663
- animation-delay: -0.7s;
664
- transform: rotate(150deg) translate(146%);
665
- }
666
- .sonner-loading-bar:nth-child(7) {
667
- animation-delay: -0.6s;
668
- transform: rotate(180deg) translate(146%);
669
- }
670
- .sonner-loading-bar:nth-child(8) {
671
- animation-delay: -0.5s;
672
- transform: rotate(210deg) translate(146%);
673
- }
674
- .sonner-loading-bar:nth-child(9) {
675
- animation-delay: -0.4s;
676
- transform: rotate(240deg) translate(146%);
677
- }
678
- .sonner-loading-bar:nth-child(10) {
679
- animation-delay: -0.3s;
680
- transform: rotate(270deg) translate(146%);
681
- }
682
- .sonner-loading-bar:nth-child(11) {
683
- animation-delay: -0.2s;
684
- transform: rotate(300deg) translate(146%);
685
- }
686
- .sonner-loading-bar:nth-child(12) {
687
- animation-delay: -0.1s;
688
- transform: rotate(330deg) translate(146%);
689
- }
690
-
691
- @keyframes sonner-fade-in {
692
- 0% {
693
- opacity: 0;
694
- transform: scale(0.8);
695
- }
696
- 100% {
697
- opacity: 1;
698
- transform: scale(1);
699
- }
700
- }
701
-
702
- @keyframes sonner-fade-out {
703
- 0% {
704
- opacity: 1;
705
- transform: scale(1);
706
- }
707
- 100% {
708
- opacity: 0;
709
- transform: scale(0.8);
710
- }
711
- }
712
-
713
- @keyframes sonner-spin {
714
- 0% {
715
- opacity: 1;
716
- }
717
- 100% {
718
- opacity: 0.15;
719
- }
720
- }
721
-
722
- @media (prefers-reduced-motion) {
723
- [data-sonner-toast],
724
- [data-sonner-toast] > *,
725
- .sonner-loading-bar {
726
- transition: none !important;
727
- animation: none !important;
728
- }
729
- }
730
-
731
- .sonner-loader {
732
- position: absolute;
733
- top: 50%;
734
- left: 50%;
735
- transform: translate(-50%, -50%);
736
- transform-origin: center;
737
- transition:
738
- opacity 200ms,
739
- transform 200ms;
740
- }
741
-
742
- .sonner-loader[data-visible="false"] {
743
- opacity: 0;
744
- transform: scale(0.8) translate(-50%, -50%);
745
- }