@react-md/core 1.0.0-next.1 → 1.0.0-next.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 (138) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/CHANGELOG.md +8 -0
  3. package/coverage/clover.xml +2 -2
  4. package/coverage/lcov-report/DefaultToastRenderer.tsx.html +166 -112
  5. package/coverage/lcov-report/Snackbar.tsx.html +360 -402
  6. package/coverage/lcov-report/Toast.tsx.html +868 -0
  7. package/coverage/lcov-report/ToastManager.tsx.html +1783 -0
  8. package/coverage/lcov-report/ToastManagerProvider.tsx.html +216 -216
  9. package/coverage/lcov-report/icon/FontIcon.tsx.html +28 -28
  10. package/coverage/lcov-report/icon/index.html +1 -1
  11. package/coverage/lcov-report/index.html +1 -1
  12. package/coverage/lcov-report/snackbar/Snackbar.tsx.html +55 -97
  13. package/coverage/lcov-report/snackbar/Toast.tsx.html +546 -501
  14. package/coverage/lcov-report/snackbar/ToastManager.tsx.html +269 -269
  15. package/coverage/lcov-report/snackbar/ToastManagerProvider.tsx.html +23 -23
  16. package/coverage/lcov-report/snackbar/index.html +59 -14
  17. package/coverage/lcov-report/snackbar/snackbarStyles.ts.html +12 -87
  18. package/coverage/lcov-report/snackbar/toastStyles.ts.html +206 -146
  19. package/coverage/lcov-report/snackbar/useCurrentToastActions.ts.html +226 -0
  20. package/coverage/lcov-report/snackbarStyles.ts.html +46 -121
  21. package/coverage/lcov-report/transition/config.ts.html +5 -5
  22. package/coverage/lcov-report/transition/index.html +1 -1
  23. package/coverage/lcov-report/typography/Typography.tsx.html +108 -402
  24. package/coverage/lcov-report/typography/index.html +10 -10
  25. package/dist/_core.scss +34 -1
  26. package/dist/_utils.scss +57 -0
  27. package/dist/app-bar/_app-bar.scss +15 -23
  28. package/dist/avatar/_avatar.scss +25 -34
  29. package/dist/badge/_badge.scss +71 -44
  30. package/dist/box/_box.scss +18 -29
  31. package/dist/button/_button.scss +50 -62
  32. package/dist/card/_card.scss +14 -23
  33. package/dist/chip/_chip.scss +33 -46
  34. package/dist/dialog/_dialog.scss +95 -93
  35. package/dist/divider/Divider.d.ts +0 -1
  36. package/dist/divider/Divider.js.map +1 -1
  37. package/dist/divider/_divider.scss +33 -43
  38. package/dist/form/Label.d.ts +5 -5
  39. package/dist/form/Label.js.map +1 -1
  40. package/dist/form/TextArea.js +1 -1
  41. package/dist/form/TextArea.js.map +1 -1
  42. package/dist/form/TextFieldContainerStyles.d.ts +7 -7
  43. package/dist/form/TextFieldContainerStyles.js.map +1 -1
  44. package/dist/form/_form.scss +200 -203
  45. package/dist/form/textAreaStyles.d.ts +2 -2
  46. package/dist/form/textAreaStyles.js.map +1 -1
  47. package/dist/form/types.d.ts +0 -2
  48. package/dist/form/types.js.map +1 -1
  49. package/dist/icon/_icon.scss +31 -47
  50. package/dist/interaction/_interaction.scss +47 -57
  51. package/dist/layout/_layout.scss +14 -19
  52. package/dist/link/_link.scss +15 -23
  53. package/dist/list/_list.scss +53 -63
  54. package/dist/menu/_menu.scss +16 -27
  55. package/dist/overlay/_overlay.scss +14 -19
  56. package/dist/progress/_progress.scss +25 -30
  57. package/dist/segmented-button/_segmented-button.scss +32 -43
  58. package/dist/sheet/_sheet.scss +24 -42
  59. package/dist/snackbar/DefaultToastRenderer.js +1 -1
  60. package/dist/snackbar/DefaultToastRenderer.js.map +1 -1
  61. package/dist/snackbar/Snackbar.d.ts +1 -3
  62. package/dist/snackbar/Snackbar.js +2 -3
  63. package/dist/snackbar/Snackbar.js.map +1 -1
  64. package/dist/snackbar/Toast.d.ts +1 -1
  65. package/dist/snackbar/Toast.js +5 -1
  66. package/dist/snackbar/Toast.js.map +1 -1
  67. package/dist/snackbar/ToastManager.d.ts +2 -1
  68. package/dist/snackbar/ToastManager.js +1 -1
  69. package/dist/snackbar/ToastManager.js.map +1 -1
  70. package/dist/snackbar/_snackbar.scss +15 -23
  71. package/dist/table/_table.scss +55 -70
  72. package/dist/tabs/_tabs.scss +25 -30
  73. package/dist/theme/_theme.scss +31 -89
  74. package/dist/tooltip/_tooltip.scss +16 -25
  75. package/dist/transition/_transition.scss +38 -37
  76. package/dist/tree/_tree.scss +102 -109
  77. package/dist/typography/_typography.scss +17 -22
  78. package/dist/window-splitter/_window-splitter.scss +19 -45
  79. package/package.json +1 -1
  80. package/src/_core.scss +34 -1
  81. package/src/_utils.scss +57 -0
  82. package/src/app-bar/_app-bar.scss +15 -23
  83. package/src/avatar/_avatar.scss +25 -34
  84. package/src/badge/_badge.scss +71 -44
  85. package/src/box/_box.scss +18 -29
  86. package/src/button/_button.scss +50 -62
  87. package/src/card/_card.scss +14 -23
  88. package/src/chip/_chip.scss +33 -46
  89. package/src/dialog/_dialog.scss +95 -93
  90. package/src/divider/Divider.tsx +0 -1
  91. package/src/divider/_divider.scss +33 -43
  92. package/src/form/Label.tsx +5 -5
  93. package/src/form/TextArea.tsx +1 -1
  94. package/src/form/TextFieldContainerStyles.ts +7 -7
  95. package/src/form/_form.scss +200 -203
  96. package/src/form/textAreaStyles.ts +2 -2
  97. package/src/form/types.ts +0 -2
  98. package/src/icon/_icon.scss +31 -47
  99. package/src/interaction/_interaction.scss +47 -57
  100. package/src/layout/_layout.scss +14 -19
  101. package/src/link/_link.scss +15 -23
  102. package/src/list/_list.scss +53 -63
  103. package/src/menu/_menu.scss +16 -27
  104. package/src/overlay/_overlay.scss +14 -19
  105. package/src/progress/_progress.scss +25 -30
  106. package/src/segmented-button/_segmented-button.scss +32 -43
  107. package/src/sheet/_sheet.scss +24 -42
  108. package/src/snackbar/DefaultToastRenderer.tsx +1 -1
  109. package/src/snackbar/Snackbar.tsx +17 -25
  110. package/src/snackbar/Toast.tsx +7 -2
  111. package/src/snackbar/ToastManager.tsx +3 -2
  112. package/src/snackbar/__tests__/Snackbar.tsx +12 -11
  113. package/src/snackbar/__tests__/ToastManagerProvider.tsx +20 -42
  114. package/src/snackbar/__tests__/__snapshots__/Snackbar.tsx.snap +127 -27
  115. package/src/snackbar/__tests__/__snapshots__/ToastManagerProvider.tsx.snap +23 -8
  116. package/src/snackbar/_snackbar.scss +15 -23
  117. package/src/table/_table.scss +55 -70
  118. package/src/tabs/_tabs.scss +25 -30
  119. package/src/theme/_theme.scss +31 -89
  120. package/src/tooltip/_tooltip.scss +16 -25
  121. package/src/transition/_transition.scss +38 -37
  122. package/src/tree/_tree.scss +102 -109
  123. package/src/typography/_typography.scss +17 -22
  124. package/src/window-splitter/_window-splitter.scss +19 -45
  125. package/.turbo/turbo-lint.log +0 -12
  126. package/.turbo/turbo-test.log +0 -166
  127. package/.turbo/turbo-typecheck.log +0 -4
  128. package/dist/divider/VerticalDivider.d.ts +0 -32
  129. package/dist/divider/useVerticalDividerHeight.d.ts +0 -37
  130. package/dist/icon/MaterialIconsProvider.d.ts +0 -12
  131. package/dist/icon/MaterialIconsProvider.js +0 -17
  132. package/dist/icon/MaterialIconsProvider.js.map +0 -1
  133. package/dist/icon/MaterialSymbolsProvider.d.ts +0 -145
  134. package/dist/icon/MaterialSymbolsProvider.js +0 -60
  135. package/dist/icon/MaterialSymbolsProvider.js.map +0 -1
  136. package/dist/link/LinkProvider.d.ts +0 -29
  137. package/dist/menu/menuConfig.d.ts +0 -60
  138. package/dist/tooltip/useOverflowTooltip.d.ts +0 -61
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">0% </span>
26
+ <span class="strong">99.23% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>0/246</span>
28
+ <span class='fraction'>259/261</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">0% </span>
33
+ <span class="strong">50% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>0/1</span>
35
+ <span class='fraction'>6/12</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">0% </span>
40
+ <span class="strong">100% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>0/1</span>
42
+ <span class='fraction'>1/1</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">0% </span>
47
+ <span class="strong">99.23% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>0/246</span>
49
+ <span class='fraction'>259/261</span>
50
50
  </div>
51
51
 
52
52
 
@@ -61,7 +61,7 @@
61
61
  </div>
62
62
  </template>
63
63
  </div>
64
- <div class='status-line low'></div>
64
+ <div class='status-line high'></div>
65
65
  <pre><table class="coverage">
66
66
  <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
67
67
  <a name='L2'></a><a href='#L2'>2</a>
@@ -309,498 +309,543 @@
309
309
  <a name='L244'></a><a href='#L244'>244</a>
310
310
  <a name='L245'></a><a href='#L245'>245</a>
311
311
  <a name='L246'></a><a href='#L246'>246</a>
312
- <a name='L247'></a><a href='#L247'>247</a></td><td class="line-coverage quiet"><span class="cline-any cline-no">&nbsp;</span>
313
- <span class="cline-any cline-no">&nbsp;</span>
314
- <span class="cline-any cline-no">&nbsp;</span>
315
- <span class="cline-any cline-no">&nbsp;</span>
316
- <span class="cline-any cline-no">&nbsp;</span>
317
- <span class="cline-any cline-no">&nbsp;</span>
318
- <span class="cline-any cline-no">&nbsp;</span>
319
- <span class="cline-any cline-no">&nbsp;</span>
320
- <span class="cline-any cline-no">&nbsp;</span>
321
- <span class="cline-any cline-no">&nbsp;</span>
322
- <span class="cline-any cline-no">&nbsp;</span>
323
- <span class="cline-any cline-no">&nbsp;</span>
324
- <span class="cline-any cline-no">&nbsp;</span>
325
- <span class="cline-any cline-no">&nbsp;</span>
326
- <span class="cline-any cline-no">&nbsp;</span>
327
- <span class="cline-any cline-no">&nbsp;</span>
328
- <span class="cline-any cline-no">&nbsp;</span>
329
- <span class="cline-any cline-no">&nbsp;</span>
330
- <span class="cline-any cline-no">&nbsp;</span>
331
- <span class="cline-any cline-no">&nbsp;</span>
332
- <span class="cline-any cline-no">&nbsp;</span>
333
- <span class="cline-any cline-no">&nbsp;</span>
334
- <span class="cline-any cline-no">&nbsp;</span>
335
- <span class="cline-any cline-no">&nbsp;</span>
336
- <span class="cline-any cline-no">&nbsp;</span>
337
- <span class="cline-any cline-no">&nbsp;</span>
338
- <span class="cline-any cline-no">&nbsp;</span>
339
- <span class="cline-any cline-no">&nbsp;</span>
340
- <span class="cline-any cline-no">&nbsp;</span>
341
- <span class="cline-any cline-no">&nbsp;</span>
342
- <span class="cline-any cline-no">&nbsp;</span>
343
- <span class="cline-any cline-no">&nbsp;</span>
344
- <span class="cline-any cline-no">&nbsp;</span>
345
- <span class="cline-any cline-no">&nbsp;</span>
346
- <span class="cline-any cline-no">&nbsp;</span>
347
- <span class="cline-any cline-no">&nbsp;</span>
348
- <span class="cline-any cline-no">&nbsp;</span>
349
- <span class="cline-any cline-no">&nbsp;</span>
350
- <span class="cline-any cline-no">&nbsp;</span>
351
- <span class="cline-any cline-no">&nbsp;</span>
352
- <span class="cline-any cline-no">&nbsp;</span>
353
- <span class="cline-any cline-no">&nbsp;</span>
354
- <span class="cline-any cline-no">&nbsp;</span>
355
- <span class="cline-any cline-no">&nbsp;</span>
356
- <span class="cline-any cline-no">&nbsp;</span>
357
- <span class="cline-any cline-no">&nbsp;</span>
358
- <span class="cline-any cline-no">&nbsp;</span>
359
- <span class="cline-any cline-no">&nbsp;</span>
360
- <span class="cline-any cline-no">&nbsp;</span>
361
- <span class="cline-any cline-no">&nbsp;</span>
362
- <span class="cline-any cline-no">&nbsp;</span>
363
- <span class="cline-any cline-no">&nbsp;</span>
364
- <span class="cline-any cline-no">&nbsp;</span>
365
- <span class="cline-any cline-no">&nbsp;</span>
366
- <span class="cline-any cline-no">&nbsp;</span>
367
- <span class="cline-any cline-no">&nbsp;</span>
368
- <span class="cline-any cline-no">&nbsp;</span>
369
- <span class="cline-any cline-no">&nbsp;</span>
370
- <span class="cline-any cline-no">&nbsp;</span>
371
- <span class="cline-any cline-no">&nbsp;</span>
372
- <span class="cline-any cline-no">&nbsp;</span>
373
- <span class="cline-any cline-no">&nbsp;</span>
374
- <span class="cline-any cline-no">&nbsp;</span>
375
- <span class="cline-any cline-no">&nbsp;</span>
376
- <span class="cline-any cline-no">&nbsp;</span>
377
- <span class="cline-any cline-no">&nbsp;</span>
378
- <span class="cline-any cline-no">&nbsp;</span>
379
- <span class="cline-any cline-no">&nbsp;</span>
380
- <span class="cline-any cline-no">&nbsp;</span>
381
- <span class="cline-any cline-no">&nbsp;</span>
382
- <span class="cline-any cline-no">&nbsp;</span>
383
- <span class="cline-any cline-no">&nbsp;</span>
384
- <span class="cline-any cline-no">&nbsp;</span>
385
- <span class="cline-any cline-no">&nbsp;</span>
386
- <span class="cline-any cline-no">&nbsp;</span>
387
- <span class="cline-any cline-no">&nbsp;</span>
388
- <span class="cline-any cline-no">&nbsp;</span>
389
- <span class="cline-any cline-no">&nbsp;</span>
390
- <span class="cline-any cline-no">&nbsp;</span>
391
- <span class="cline-any cline-no">&nbsp;</span>
392
- <span class="cline-any cline-no">&nbsp;</span>
393
- <span class="cline-any cline-no">&nbsp;</span>
394
- <span class="cline-any cline-no">&nbsp;</span>
395
- <span class="cline-any cline-no">&nbsp;</span>
396
- <span class="cline-any cline-no">&nbsp;</span>
397
- <span class="cline-any cline-no">&nbsp;</span>
398
- <span class="cline-any cline-no">&nbsp;</span>
399
- <span class="cline-any cline-no">&nbsp;</span>
400
- <span class="cline-any cline-no">&nbsp;</span>
401
- <span class="cline-any cline-no">&nbsp;</span>
402
- <span class="cline-any cline-no">&nbsp;</span>
403
- <span class="cline-any cline-no">&nbsp;</span>
404
- <span class="cline-any cline-no">&nbsp;</span>
405
- <span class="cline-any cline-no">&nbsp;</span>
406
- <span class="cline-any cline-no">&nbsp;</span>
407
- <span class="cline-any cline-no">&nbsp;</span>
408
- <span class="cline-any cline-no">&nbsp;</span>
409
- <span class="cline-any cline-no">&nbsp;</span>
410
- <span class="cline-any cline-no">&nbsp;</span>
411
- <span class="cline-any cline-no">&nbsp;</span>
412
- <span class="cline-any cline-no">&nbsp;</span>
413
- <span class="cline-any cline-no">&nbsp;</span>
414
- <span class="cline-any cline-no">&nbsp;</span>
415
- <span class="cline-any cline-no">&nbsp;</span>
416
- <span class="cline-any cline-no">&nbsp;</span>
417
- <span class="cline-any cline-no">&nbsp;</span>
418
- <span class="cline-any cline-no">&nbsp;</span>
419
- <span class="cline-any cline-no">&nbsp;</span>
420
- <span class="cline-any cline-no">&nbsp;</span>
421
- <span class="cline-any cline-no">&nbsp;</span>
422
- <span class="cline-any cline-no">&nbsp;</span>
423
- <span class="cline-any cline-no">&nbsp;</span>
424
- <span class="cline-any cline-no">&nbsp;</span>
425
- <span class="cline-any cline-no">&nbsp;</span>
426
- <span class="cline-any cline-no">&nbsp;</span>
427
- <span class="cline-any cline-no">&nbsp;</span>
428
- <span class="cline-any cline-no">&nbsp;</span>
429
- <span class="cline-any cline-no">&nbsp;</span>
430
- <span class="cline-any cline-no">&nbsp;</span>
431
- <span class="cline-any cline-no">&nbsp;</span>
432
- <span class="cline-any cline-no">&nbsp;</span>
433
- <span class="cline-any cline-no">&nbsp;</span>
434
- <span class="cline-any cline-no">&nbsp;</span>
435
- <span class="cline-any cline-no">&nbsp;</span>
436
- <span class="cline-any cline-no">&nbsp;</span>
437
- <span class="cline-any cline-no">&nbsp;</span>
438
- <span class="cline-any cline-no">&nbsp;</span>
439
- <span class="cline-any cline-no">&nbsp;</span>
440
- <span class="cline-any cline-no">&nbsp;</span>
441
- <span class="cline-any cline-no">&nbsp;</span>
442
- <span class="cline-any cline-no">&nbsp;</span>
443
- <span class="cline-any cline-no">&nbsp;</span>
444
- <span class="cline-any cline-no">&nbsp;</span>
445
- <span class="cline-any cline-no">&nbsp;</span>
446
- <span class="cline-any cline-no">&nbsp;</span>
447
- <span class="cline-any cline-no">&nbsp;</span>
448
- <span class="cline-any cline-no">&nbsp;</span>
449
- <span class="cline-any cline-no">&nbsp;</span>
450
- <span class="cline-any cline-no">&nbsp;</span>
451
- <span class="cline-any cline-no">&nbsp;</span>
452
- <span class="cline-any cline-no">&nbsp;</span>
453
- <span class="cline-any cline-no">&nbsp;</span>
454
- <span class="cline-any cline-no">&nbsp;</span>
455
- <span class="cline-any cline-no">&nbsp;</span>
456
- <span class="cline-any cline-no">&nbsp;</span>
457
- <span class="cline-any cline-no">&nbsp;</span>
458
- <span class="cline-any cline-no">&nbsp;</span>
459
- <span class="cline-any cline-no">&nbsp;</span>
460
- <span class="cline-any cline-no">&nbsp;</span>
461
- <span class="cline-any cline-no">&nbsp;</span>
462
- <span class="cline-any cline-no">&nbsp;</span>
463
- <span class="cline-any cline-no">&nbsp;</span>
464
- <span class="cline-any cline-no">&nbsp;</span>
465
- <span class="cline-any cline-no">&nbsp;</span>
466
- <span class="cline-any cline-no">&nbsp;</span>
467
- <span class="cline-any cline-no">&nbsp;</span>
468
- <span class="cline-any cline-no">&nbsp;</span>
469
- <span class="cline-any cline-no">&nbsp;</span>
470
- <span class="cline-any cline-no">&nbsp;</span>
471
- <span class="cline-any cline-no">&nbsp;</span>
472
- <span class="cline-any cline-no">&nbsp;</span>
473
- <span class="cline-any cline-no">&nbsp;</span>
474
- <span class="cline-any cline-no">&nbsp;</span>
475
- <span class="cline-any cline-no">&nbsp;</span>
476
- <span class="cline-any cline-no">&nbsp;</span>
477
- <span class="cline-any cline-no">&nbsp;</span>
478
- <span class="cline-any cline-no">&nbsp;</span>
479
- <span class="cline-any cline-no">&nbsp;</span>
480
- <span class="cline-any cline-no">&nbsp;</span>
481
- <span class="cline-any cline-no">&nbsp;</span>
482
- <span class="cline-any cline-no">&nbsp;</span>
483
- <span class="cline-any cline-no">&nbsp;</span>
484
- <span class="cline-any cline-no">&nbsp;</span>
485
- <span class="cline-any cline-no">&nbsp;</span>
486
- <span class="cline-any cline-no">&nbsp;</span>
487
- <span class="cline-any cline-no">&nbsp;</span>
488
- <span class="cline-any cline-no">&nbsp;</span>
489
- <span class="cline-any cline-no">&nbsp;</span>
490
- <span class="cline-any cline-no">&nbsp;</span>
491
- <span class="cline-any cline-no">&nbsp;</span>
492
- <span class="cline-any cline-no">&nbsp;</span>
493
- <span class="cline-any cline-no">&nbsp;</span>
494
- <span class="cline-any cline-no">&nbsp;</span>
495
- <span class="cline-any cline-no">&nbsp;</span>
496
- <span class="cline-any cline-no">&nbsp;</span>
497
- <span class="cline-any cline-no">&nbsp;</span>
498
- <span class="cline-any cline-no">&nbsp;</span>
499
- <span class="cline-any cline-no">&nbsp;</span>
500
- <span class="cline-any cline-no">&nbsp;</span>
501
- <span class="cline-any cline-no">&nbsp;</span>
502
- <span class="cline-any cline-no">&nbsp;</span>
503
- <span class="cline-any cline-no">&nbsp;</span>
504
- <span class="cline-any cline-no">&nbsp;</span>
505
- <span class="cline-any cline-no">&nbsp;</span>
506
- <span class="cline-any cline-no">&nbsp;</span>
507
- <span class="cline-any cline-no">&nbsp;</span>
508
- <span class="cline-any cline-no">&nbsp;</span>
509
- <span class="cline-any cline-no">&nbsp;</span>
510
- <span class="cline-any cline-no">&nbsp;</span>
511
- <span class="cline-any cline-no">&nbsp;</span>
512
- <span class="cline-any cline-no">&nbsp;</span>
513
- <span class="cline-any cline-no">&nbsp;</span>
514
- <span class="cline-any cline-no">&nbsp;</span>
515
- <span class="cline-any cline-no">&nbsp;</span>
516
- <span class="cline-any cline-no">&nbsp;</span>
517
- <span class="cline-any cline-no">&nbsp;</span>
518
- <span class="cline-any cline-no">&nbsp;</span>
519
- <span class="cline-any cline-no">&nbsp;</span>
520
- <span class="cline-any cline-no">&nbsp;</span>
521
- <span class="cline-any cline-no">&nbsp;</span>
522
- <span class="cline-any cline-no">&nbsp;</span>
523
- <span class="cline-any cline-no">&nbsp;</span>
524
- <span class="cline-any cline-no">&nbsp;</span>
525
- <span class="cline-any cline-no">&nbsp;</span>
526
- <span class="cline-any cline-no">&nbsp;</span>
527
- <span class="cline-any cline-no">&nbsp;</span>
528
- <span class="cline-any cline-no">&nbsp;</span>
529
- <span class="cline-any cline-no">&nbsp;</span>
530
- <span class="cline-any cline-no">&nbsp;</span>
531
- <span class="cline-any cline-no">&nbsp;</span>
532
- <span class="cline-any cline-no">&nbsp;</span>
533
- <span class="cline-any cline-no">&nbsp;</span>
534
- <span class="cline-any cline-no">&nbsp;</span>
535
- <span class="cline-any cline-no">&nbsp;</span>
536
- <span class="cline-any cline-no">&nbsp;</span>
537
- <span class="cline-any cline-no">&nbsp;</span>
538
- <span class="cline-any cline-no">&nbsp;</span>
539
- <span class="cline-any cline-no">&nbsp;</span>
540
- <span class="cline-any cline-no">&nbsp;</span>
541
- <span class="cline-any cline-no">&nbsp;</span>
542
- <span class="cline-any cline-no">&nbsp;</span>
543
- <span class="cline-any cline-no">&nbsp;</span>
544
- <span class="cline-any cline-no">&nbsp;</span>
545
- <span class="cline-any cline-no">&nbsp;</span>
546
- <span class="cline-any cline-no">&nbsp;</span>
547
- <span class="cline-any cline-no">&nbsp;</span>
548
- <span class="cline-any cline-no">&nbsp;</span>
549
- <span class="cline-any cline-no">&nbsp;</span>
550
- <span class="cline-any cline-no">&nbsp;</span>
551
- <span class="cline-any cline-no">&nbsp;</span>
552
- <span class="cline-any cline-no">&nbsp;</span>
553
- <span class="cline-any cline-no">&nbsp;</span>
554
- <span class="cline-any cline-no">&nbsp;</span>
555
- <span class="cline-any cline-no">&nbsp;</span>
556
- <span class="cline-any cline-no">&nbsp;</span>
557
- <span class="cline-any cline-no">&nbsp;</span>
558
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js"><span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" ><span class="branch-0 cbranch-no" title="branch not covered" >"use client";</span></span></span>
559
- <span class="cstat-no" title="statement not covered" >import {</span>
560
- <span class="cstat-no" title="statement not covered" > forwardRef,</span>
561
- <span class="cstat-no" title="statement not covered" > isValidElement,</span>
562
- <span class="cstat-no" title="statement not covered" > type AriaRole,</span>
563
- <span class="cstat-no" title="statement not covered" > type HTMLAttributes,</span>
564
- <span class="cstat-no" title="statement not covered" > type ReactElement,</span>
565
- <span class="cstat-no" title="statement not covered" > type ReactNode,</span>
566
- <span class="cstat-no" title="statement not covered" >} from "react";</span>
567
- <span class="cstat-no" title="statement not covered" >import { type ButtonProps } from "../button/Button.js";</span>
568
- <span class="cstat-no" title="statement not covered" >import {</span>
569
- <span class="cstat-no" title="statement not covered" > type CSSTransitionClassNames,</span>
570
- <span class="cstat-no" title="statement not covered" > type TransitionCallbacks,</span>
571
- <span class="cstat-no" title="statement not covered" > type TransitionTimeout,</span>
572
- <span class="cstat-no" title="statement not covered" >} from "../transition/types.js";</span>
573
- <span class="cstat-no" title="statement not covered" >import { useScaleTransition } from "../transition/useScaleTransition.js";</span>
574
- <span class="cstat-no" title="statement not covered" >import { type PropsWithRef } from "../types.js";</span>
575
- <span class="cstat-no" title="statement not covered" >import { useEnsuredId } from "../useEnsuredId.js";</span>
576
- <span class="cstat-no" title="statement not covered" >import { ToastActionButton } from "./ToastActionButton.js";</span>
577
- <span class="cstat-no" title="statement not covered" >import { ToastCloseButton } from "./ToastCloseButton.js";</span>
578
- <span class="cstat-no" title="statement not covered" >import { ToastContent, type ToastContentProps } from "./ToastContent.js";</span>
579
- <span class="cstat-no" title="statement not covered" >import { toast, type ToastTheme } from "./toastStyles.js";</span>
580
- <span class="cstat-no" title="statement not covered" ></span>
581
- <span class="cstat-no" title="statement not covered" >/**</span>
582
- <span class="cstat-no" title="statement not covered" > * @remarks \@since 6.0.0</span>
583
- <span class="cstat-no" title="statement not covered" > */</span>
584
- <span class="cstat-no" title="statement not covered" >export interface ConfigurableToastProps</span>
585
- <span class="cstat-no" title="statement not covered" > extends HTMLAttributes&lt;HTMLDivElement&gt;,</span>
586
- <span class="cstat-no" title="statement not covered" > TransitionCallbacks {</span>
587
- <span class="cstat-no" title="statement not covered" > /**</span>
588
- <span class="cstat-no" title="statement not covered" > * Note: this default value will only be generated in the `Toast` component.</span>
589
- <span class="cstat-no" title="statement not covered" > *</span>
590
- <span class="cstat-no" title="statement not covered" > * @defaultValue `"toast-" + useId()`</span>
591
- <span class="cstat-no" title="statement not covered" > */</span>
592
- <span class="cstat-no" title="statement not covered" > id?: string;</span>
593
- <span class="cstat-no" title="statement not covered" ></span>
594
- <span class="cstat-no" title="statement not covered" > /**</span>
595
- <span class="cstat-no" title="statement not covered" > * Note: This is set while creating the toast.</span>
596
- <span class="cstat-no" title="statement not covered" > *</span>
597
- <span class="cstat-no" title="statement not covered" > * @defaultValue `visibleTime === null ? "alert" : undefined`</span>
598
- <span class="cstat-no" title="statement not covered" > */</span>
599
- <span class="cstat-no" title="statement not covered" > role?: AriaRole;</span>
600
- <span class="cstat-no" title="statement not covered" ></span>
601
- <span class="cstat-no" title="statement not covered" > /**</span>
602
- <span class="cstat-no" title="statement not covered" > * @defaultValue `"surface"`</span>
603
- <span class="cstat-no" title="statement not covered" > */</span>
604
- <span class="cstat-no" title="statement not covered" > theme?: ToastTheme;</span>
605
- <span class="cstat-no" title="statement not covered" ></span>
606
- <span class="cstat-no" title="statement not covered" > /**</span>
607
- <span class="cstat-no" title="statement not covered" > * Set this to `true` to stack the content above the {@link action}. It is not</span>
608
- <span class="cstat-no" title="statement not covered" > * recommended to enable this prop if the {@link closeButton} is enabled.</span>
609
- <span class="cstat-no" title="statement not covered" > *</span>
610
- <span class="cstat-no" title="statement not covered" > * @defaultValue `false`</span>
611
- <span class="cstat-no" title="statement not covered" > */</span>
612
- <span class="cstat-no" title="statement not covered" > stacked?: boolean;</span>
613
- <span class="cstat-no" title="statement not covered" ></span>
614
- <span class="cstat-no" title="statement not covered" > /**</span>
615
- <span class="cstat-no" title="statement not covered" > * If this is not provided, a `ResizeObserver` will be used to determine if</span>
616
- <span class="cstat-no" title="statement not covered" > * there are multiple lines of content.</span>
617
- <span class="cstat-no" title="statement not covered" > */</span>
618
- <span class="cstat-no" title="statement not covered" > multiline?: boolean;</span>
619
- <span class="cstat-no" title="statement not covered" ></span>
620
- <span class="cstat-no" title="statement not covered" > /**</span>
621
- <span class="cstat-no" title="statement not covered" > * When this is a string or React element, it will be rendered as the</span>
622
- <span class="cstat-no" title="statement not covered" > * `children` within a `Button`</span>
623
- <span class="cstat-no" title="statement not covered" > */</span>
624
- <span class="cstat-no" title="statement not covered" > action?: ButtonProps | ReactElement | string;</span>
625
- <span class="cstat-no" title="statement not covered" ></span>
626
- <span class="cstat-no" title="statement not covered" > /**</span>
627
- <span class="cstat-no" title="statement not covered" > * This can be used to replace the custom action button behavior.</span>
628
- <span class="cstat-no" title="statement not covered" > */</span>
629
- <span class="cstat-no" title="statement not covered" > actionButton?: ReactNode;</span>
630
- <span class="cstat-no" title="statement not covered" ></span>
631
- <span class="cstat-no" title="statement not covered" > /**</span>
632
- <span class="cstat-no" title="statement not covered" > * @defaultValue `useIcon("close")`</span>
633
- <span class="cstat-no" title="statement not covered" > */</span>
634
- <span class="cstat-no" title="statement not covered" > closeIcon?: ReactNode;</span>
635
- <span class="cstat-no" title="statement not covered" ></span>
636
- <span class="cstat-no" title="statement not covered" > /**</span>
637
- <span class="cstat-no" title="statement not covered" > * Set this to `true` if a close button should be rendered to the right of the</span>
638
- <span class="cstat-no" title="statement not covered" > * `children`.</span>
639
- <span class="cstat-no" title="statement not covered" > *</span>
640
- <span class="cstat-no" title="statement not covered" > * @defaultValue `!!closeButtonProps`</span>
641
- <span class="cstat-no" title="statement not covered" > */</span>
642
- <span class="cstat-no" title="statement not covered" > closeButton?: boolean;</span>
643
- <span class="cstat-no" title="statement not covered" ></span>
644
- <span class="cstat-no" title="statement not covered" > /**</span>
645
- <span class="cstat-no" title="statement not covered" > * Use this prop to override most of the close button behavior. The</span>
646
- <span class="cstat-no" title="statement not covered" > */</span>
647
- <span class="cstat-no" title="statement not covered" > closeButtonProps?: ButtonProps;</span>
648
- <span class="cstat-no" title="statement not covered" ></span>
649
- <span class="cstat-no" title="statement not covered" > /**</span>
650
- <span class="cstat-no" title="statement not covered" > * Any additional props that should be provided to the `&lt;div&gt;` that surrounds</span>
651
- <span class="cstat-no" title="statement not covered" > * the toast `children`.</span>
652
- <span class="cstat-no" title="statement not covered" > */</span>
653
- <span class="cstat-no" title="statement not covered" > contentProps?: PropsWithRef&lt;ToastContentProps, HTMLDivElement&gt;;</span>
654
- <span class="cstat-no" title="statement not covered" ></span>
655
- <span class="cstat-no" title="statement not covered" > /**</span>
656
- <span class="cstat-no" title="statement not covered" > * Set this to `true` if the `children` for the toast should no longer be</span>
657
- <span class="cstat-no" title="statement not covered" > * wrapped in an additional `&lt;div&gt;` that applies some toast layout styles.</span>
658
- <span class="cstat-no" title="statement not covered" > * This should normally only be used for custom `Toast` implementations.</span>
659
- <span class="cstat-no" title="statement not covered" > *</span>
660
- <span class="cstat-no" title="statement not covered" > * @see the `Snackbar`'s `renderToast` prop for an example.</span>
661
- <span class="cstat-no" title="statement not covered" > */</span>
662
- <span class="cstat-no" title="statement not covered" > disableToastContent?: boolean;</span>
663
- <span class="cstat-no" title="statement not covered" ></span>
664
- <span class="cstat-no" title="statement not covered" > /**</span>
665
- <span class="cstat-no" title="statement not covered" > * The toast's transition timeout for entering and exiting. This is **not**</span>
666
- <span class="cstat-no" title="statement not covered" > * how long the toast should remain visible.</span>
667
- <span class="cstat-no" title="statement not covered" > *</span>
668
- <span class="cstat-no" title="statement not covered" > * @defaultValue `SCALE_TIMEOUT`</span>
669
- <span class="cstat-no" title="statement not covered" > */</span>
670
- <span class="cstat-no" title="statement not covered" > timeout?: TransitionTimeout;</span>
671
- <span class="cstat-no" title="statement not covered" ></span>
672
- <span class="cstat-no" title="statement not covered" > /**</span>
673
- <span class="cstat-no" title="statement not covered" > * The toast's transition class names for entering and exiting.</span>
674
- <span class="cstat-no" title="statement not covered" > *</span>
675
- <span class="cstat-no" title="statement not covered" > * @defaultValue `SCALE_CLASSNAMES`</span>
676
- <span class="cstat-no" title="statement not covered" > */</span>
677
- <span class="cstat-no" title="statement not covered" > classNames?: CSSTransitionClassNames;</span>
678
- <span class="cstat-no" title="statement not covered" >}</span>
679
- <span class="cstat-no" title="statement not covered" ></span>
680
- <span class="cstat-no" title="statement not covered" >/**</span>
681
- <span class="cstat-no" title="statement not covered" > * @remarks \@since 6.0.0</span>
682
- <span class="cstat-no" title="statement not covered" > */</span>
683
- <span class="cstat-no" title="statement not covered" >export interface ToastProps extends ConfigurableToastProps {</span>
684
- <span class="cstat-no" title="statement not covered" > paused?: boolean;</span>
685
- <span class="cstat-no" title="statement not covered" > visible: boolean;</span>
686
- <span class="cstat-no" title="statement not covered" >}</span>
687
- <span class="cstat-no" title="statement not covered" ></span>
688
- <span class="cstat-no" title="statement not covered" >/**</span>
689
- <span class="cstat-no" title="statement not covered" > * **Client Component**</span>
690
- <span class="cstat-no" title="statement not covered" > *</span>
691
- <span class="cstat-no" title="statement not covered" > * This component is just used for toast styling and does not implement any of</span>
692
- <span class="cstat-no" title="statement not covered" > * the visibility behavior.</span>
693
- <span class="cstat-no" title="statement not covered" > *</span>
694
- <span class="cstat-no" title="statement not covered" > * @remarks \@since 6.0.0</span>
695
- <span class="cstat-no" title="statement not covered" > */</span>
696
- <span class="cstat-no" title="statement not covered" >export const Toast = forwardRef&lt;HTMLDivElement, ToastProps&gt;(</span>
697
- <span class="cstat-no" title="statement not covered" > function Toast(props, ref) {</span>
698
- <span class="cstat-no" title="statement not covered" > const {</span>
699
- <span class="cstat-no" title="statement not covered" > id: propId,</span>
700
- <span class="cstat-no" title="statement not covered" > className,</span>
701
- <span class="cstat-no" title="statement not covered" > timeout,</span>
702
- <span class="cstat-no" title="statement not covered" > classNames,</span>
703
- <span class="cstat-no" title="statement not covered" > theme = "surface",</span>
704
- <span class="cstat-no" title="statement not covered" > action: propAction,</span>
705
- <span class="cstat-no" title="statement not covered" > actionButton: propActionButton,</span>
706
- <span class="cstat-no" title="statement not covered" > paused,</span>
707
- <span class="cstat-no" title="statement not covered" > visible,</span>
708
- <span class="cstat-no" title="statement not covered" > closeIcon,</span>
709
- <span class="cstat-no" title="statement not covered" > closeButtonProps,</span>
710
- <span class="cstat-no" title="statement not covered" > closeButton = !!closeButtonProps,</span>
711
- <span class="cstat-no" title="statement not covered" > contentProps,</span>
712
- <span class="cstat-no" title="statement not covered" > disableToastContent,</span>
713
- <span class="cstat-no" title="statement not covered" > stacked,</span>
714
- <span class="cstat-no" title="statement not covered" > multiline,</span>
715
- <span class="cstat-no" title="statement not covered" > onEnter,</span>
716
- <span class="cstat-no" title="statement not covered" > onEntering,</span>
717
- <span class="cstat-no" title="statement not covered" > onEntered,</span>
718
- <span class="cstat-no" title="statement not covered" > onExit,</span>
719
- <span class="cstat-no" title="statement not covered" > onExiting,</span>
720
- <span class="cstat-no" title="statement not covered" > onExited,</span>
721
- <span class="cstat-no" title="statement not covered" > children,</span>
722
- <span class="cstat-no" title="statement not covered" > ...remaining</span>
723
- <span class="cstat-no" title="statement not covered" > } = props;</span>
724
- <span class="cstat-no" title="statement not covered" > const id = useEnsuredId(propId, "toast");</span>
725
- <span class="cstat-no" title="statement not covered" ></span>
726
- <span class="cstat-no" title="statement not covered" > let actionButton = propActionButton;</span>
727
- <span class="cstat-no" title="statement not covered" > if (propAction) {</span>
728
- <span class="cstat-no" title="statement not covered" > let overrides: ButtonProps = {};</span>
729
- <span class="cstat-no" title="statement not covered" > let buttonChildren: ReactNode;</span>
730
- <span class="cstat-no" title="statement not covered" > // have to use `any` to correctly filter out all react elements</span>
731
- <span class="cstat-no" title="statement not covered" > // eslint-disable-next-line @typescript-eslint/no-explicit-any</span>
732
- <span class="cstat-no" title="statement not covered" > if (isValidElement&lt;any&gt;(propAction) || typeof propAction !== "object") {</span>
733
- <span class="cstat-no" title="statement not covered" > buttonChildren = propAction;</span>
734
- <span class="cstat-no" title="statement not covered" > } else {</span>
735
- <span class="cstat-no" title="statement not covered" > ({ children: buttonChildren, ...overrides } = propAction);</span>
736
- <span class="cstat-no" title="statement not covered" > }</span>
737
- <span class="cstat-no" title="statement not covered" ></span>
738
- <span class="cstat-no" title="statement not covered" > actionButton = (</span>
739
- <span class="cstat-no" title="statement not covered" > &lt;ToastActionButton</span>
740
- <span class="cstat-no" title="statement not covered" > theme={theme === "surface" ? "secondary" : "clear"}</span>
741
- <span class="cstat-no" title="statement not covered" > reordered={stacked &amp;&amp; closeButton}</span>
742
- <span class="cstat-no" title="statement not covered" > {...overrides}</span>
743
- <span class="cstat-no" title="statement not covered" > &gt;</span>
744
- <span class="cstat-no" title="statement not covered" > {buttonChildren}</span>
745
- <span class="cstat-no" title="statement not covered" > &lt;/ToastActionButton&gt;</span>
746
- <span class="cstat-no" title="statement not covered" > );</span>
747
- <span class="cstat-no" title="statement not covered" > }</span>
748
- <span class="cstat-no" title="statement not covered" ></span>
749
- <span class="cstat-no" title="statement not covered" > const action = !!actionButton;</span>
750
- <span class="cstat-no" title="statement not covered" > const reordered = stacked &amp;&amp; action &amp;&amp; closeButton;</span>
751
- <span class="cstat-no" title="statement not covered" > const { elementProps, rendered } = useScaleTransition({</span>
752
- <span class="cstat-no" title="statement not covered" > appear: true,</span>
753
- <span class="cstat-no" title="statement not covered" > nodeRef: ref,</span>
754
- <span class="cstat-no" title="statement not covered" > className: toast({</span>
755
- <span class="cstat-no" title="statement not covered" > className,</span>
756
- <span class="cstat-no" title="statement not covered" > theme,</span>
757
- <span class="cstat-no" title="statement not covered" > action,</span>
758
- <span class="cstat-no" title="statement not covered" > paused,</span>
759
- <span class="cstat-no" title="statement not covered" > stacked,</span>
760
- <span class="cstat-no" title="statement not covered" > reordered,</span>
761
- <span class="cstat-no" title="statement not covered" > closeButton,</span>
762
- <span class="cstat-no" title="statement not covered" > }),</span>
763
- <span class="cstat-no" title="statement not covered" > timeout,</span>
764
- <span class="cstat-no" title="statement not covered" > classNames,</span>
765
- <span class="cstat-no" title="statement not covered" > onEnter,</span>
766
- <span class="cstat-no" title="statement not covered" > onEntering,</span>
767
- <span class="cstat-no" title="statement not covered" > onEntered,</span>
768
- <span class="cstat-no" title="statement not covered" > onExit,</span>
769
- <span class="cstat-no" title="statement not covered" > onExiting,</span>
770
- <span class="cstat-no" title="statement not covered" > onExited,</span>
771
- <span class="cstat-no" title="statement not covered" > temporary: true,</span>
772
- <span class="cstat-no" title="statement not covered" > transitionIn: visible,</span>
773
- <span class="cstat-no" title="statement not covered" > exitedHidden: true,</span>
774
- <span class="cstat-no" title="statement not covered" > });</span>
775
- <span class="cstat-no" title="statement not covered" ></span>
776
- <span class="cstat-no" title="statement not covered" > // this might get rid of the weird popping-back-in for a split second</span>
777
- <span class="cstat-no" title="statement not covered" > // that sometimes happens on mobile firefox</span>
778
- <span class="cstat-no" title="statement not covered" > if (!rendered) {</span>
779
- <span class="cstat-no" title="statement not covered" > return null;</span>
312
+ <a name='L247'></a><a href='#L247'>247</a>
313
+ <a name='L248'></a><a href='#L248'>248</a>
314
+ <a name='L249'></a><a href='#L249'>249</a>
315
+ <a name='L250'></a><a href='#L250'>250</a>
316
+ <a name='L251'></a><a href='#L251'>251</a>
317
+ <a name='L252'></a><a href='#L252'>252</a>
318
+ <a name='L253'></a><a href='#L253'>253</a>
319
+ <a name='L254'></a><a href='#L254'>254</a>
320
+ <a name='L255'></a><a href='#L255'>255</a>
321
+ <a name='L256'></a><a href='#L256'>256</a>
322
+ <a name='L257'></a><a href='#L257'>257</a>
323
+ <a name='L258'></a><a href='#L258'>258</a>
324
+ <a name='L259'></a><a href='#L259'>259</a>
325
+ <a name='L260'></a><a href='#L260'>260</a>
326
+ <a name='L261'></a><a href='#L261'>261</a>
327
+ <a name='L262'></a><a href='#L262'>262</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
328
+ <span class="cline-any cline-yes">1x</span>
329
+ <span class="cline-any cline-yes">1x</span>
330
+ <span class="cline-any cline-yes">1x</span>
331
+ <span class="cline-any cline-yes">1x</span>
332
+ <span class="cline-any cline-yes">1x</span>
333
+ <span class="cline-any cline-yes">1x</span>
334
+ <span class="cline-any cline-yes">1x</span>
335
+ <span class="cline-any cline-yes">1x</span>
336
+ <span class="cline-any cline-yes">1x</span>
337
+ <span class="cline-any cline-yes">1x</span>
338
+ <span class="cline-any cline-yes">1x</span>
339
+ <span class="cline-any cline-yes">1x</span>
340
+ <span class="cline-any cline-yes">1x</span>
341
+ <span class="cline-any cline-yes">1x</span>
342
+ <span class="cline-any cline-yes">1x</span>
343
+ <span class="cline-any cline-yes">1x</span>
344
+ <span class="cline-any cline-yes">1x</span>
345
+ <span class="cline-any cline-yes">1x</span>
346
+ <span class="cline-any cline-yes">1x</span>
347
+ <span class="cline-any cline-yes">1x</span>
348
+ <span class="cline-any cline-yes">1x</span>
349
+ <span class="cline-any cline-yes">1x</span>
350
+ <span class="cline-any cline-yes">1x</span>
351
+ <span class="cline-any cline-yes">1x</span>
352
+ <span class="cline-any cline-yes">1x</span>
353
+ <span class="cline-any cline-yes">1x</span>
354
+ <span class="cline-any cline-yes">1x</span>
355
+ <span class="cline-any cline-yes">1x</span>
356
+ <span class="cline-any cline-yes">1x</span>
357
+ <span class="cline-any cline-yes">1x</span>
358
+ <span class="cline-any cline-yes">1x</span>
359
+ <span class="cline-any cline-yes">1x</span>
360
+ <span class="cline-any cline-yes">1x</span>
361
+ <span class="cline-any cline-yes">1x</span>
362
+ <span class="cline-any cline-yes">1x</span>
363
+ <span class="cline-any cline-yes">1x</span>
364
+ <span class="cline-any cline-yes">1x</span>
365
+ <span class="cline-any cline-yes">1x</span>
366
+ <span class="cline-any cline-yes">1x</span>
367
+ <span class="cline-any cline-yes">1x</span>
368
+ <span class="cline-any cline-yes">1x</span>
369
+ <span class="cline-any cline-yes">1x</span>
370
+ <span class="cline-any cline-yes">1x</span>
371
+ <span class="cline-any cline-yes">1x</span>
372
+ <span class="cline-any cline-yes">1x</span>
373
+ <span class="cline-any cline-yes">1x</span>
374
+ <span class="cline-any cline-yes">1x</span>
375
+ <span class="cline-any cline-yes">1x</span>
376
+ <span class="cline-any cline-yes">1x</span>
377
+ <span class="cline-any cline-yes">1x</span>
378
+ <span class="cline-any cline-yes">1x</span>
379
+ <span class="cline-any cline-yes">1x</span>
380
+ <span class="cline-any cline-yes">1x</span>
381
+ <span class="cline-any cline-yes">1x</span>
382
+ <span class="cline-any cline-yes">1x</span>
383
+ <span class="cline-any cline-yes">1x</span>
384
+ <span class="cline-any cline-yes">1x</span>
385
+ <span class="cline-any cline-yes">1x</span>
386
+ <span class="cline-any cline-yes">1x</span>
387
+ <span class="cline-any cline-yes">1x</span>
388
+ <span class="cline-any cline-yes">1x</span>
389
+ <span class="cline-any cline-yes">1x</span>
390
+ <span class="cline-any cline-yes">1x</span>
391
+ <span class="cline-any cline-yes">1x</span>
392
+ <span class="cline-any cline-yes">1x</span>
393
+ <span class="cline-any cline-yes">1x</span>
394
+ <span class="cline-any cline-yes">1x</span>
395
+ <span class="cline-any cline-yes">1x</span>
396
+ <span class="cline-any cline-yes">1x</span>
397
+ <span class="cline-any cline-yes">1x</span>
398
+ <span class="cline-any cline-yes">1x</span>
399
+ <span class="cline-any cline-yes">1x</span>
400
+ <span class="cline-any cline-yes">1x</span>
401
+ <span class="cline-any cline-yes">1x</span>
402
+ <span class="cline-any cline-yes">1x</span>
403
+ <span class="cline-any cline-yes">1x</span>
404
+ <span class="cline-any cline-yes">1x</span>
405
+ <span class="cline-any cline-yes">1x</span>
406
+ <span class="cline-any cline-yes">1x</span>
407
+ <span class="cline-any cline-yes">1x</span>
408
+ <span class="cline-any cline-yes">1x</span>
409
+ <span class="cline-any cline-yes">1x</span>
410
+ <span class="cline-any cline-yes">1x</span>
411
+ <span class="cline-any cline-yes">1x</span>
412
+ <span class="cline-any cline-yes">1x</span>
413
+ <span class="cline-any cline-yes">1x</span>
414
+ <span class="cline-any cline-yes">1x</span>
415
+ <span class="cline-any cline-yes">1x</span>
416
+ <span class="cline-any cline-yes">1x</span>
417
+ <span class="cline-any cline-yes">1x</span>
418
+ <span class="cline-any cline-yes">1x</span>
419
+ <span class="cline-any cline-yes">1x</span>
420
+ <span class="cline-any cline-yes">1x</span>
421
+ <span class="cline-any cline-yes">1x</span>
422
+ <span class="cline-any cline-yes">1x</span>
423
+ <span class="cline-any cline-yes">1x</span>
424
+ <span class="cline-any cline-yes">1x</span>
425
+ <span class="cline-any cline-yes">1x</span>
426
+ <span class="cline-any cline-yes">1x</span>
427
+ <span class="cline-any cline-yes">1x</span>
428
+ <span class="cline-any cline-yes">1x</span>
429
+ <span class="cline-any cline-yes">1x</span>
430
+ <span class="cline-any cline-yes">1x</span>
431
+ <span class="cline-any cline-yes">1x</span>
432
+ <span class="cline-any cline-yes">1x</span>
433
+ <span class="cline-any cline-yes">1x</span>
434
+ <span class="cline-any cline-yes">1x</span>
435
+ <span class="cline-any cline-yes">1x</span>
436
+ <span class="cline-any cline-yes">1x</span>
437
+ <span class="cline-any cline-yes">1x</span>
438
+ <span class="cline-any cline-yes">1x</span>
439
+ <span class="cline-any cline-yes">1x</span>
440
+ <span class="cline-any cline-yes">1x</span>
441
+ <span class="cline-any cline-yes">1x</span>
442
+ <span class="cline-any cline-yes">1x</span>
443
+ <span class="cline-any cline-yes">1x</span>
444
+ <span class="cline-any cline-yes">1x</span>
445
+ <span class="cline-any cline-yes">1x</span>
446
+ <span class="cline-any cline-yes">1x</span>
447
+ <span class="cline-any cline-yes">1x</span>
448
+ <span class="cline-any cline-yes">1x</span>
449
+ <span class="cline-any cline-yes">1x</span>
450
+ <span class="cline-any cline-yes">1x</span>
451
+ <span class="cline-any cline-yes">1x</span>
452
+ <span class="cline-any cline-yes">1x</span>
453
+ <span class="cline-any cline-yes">1x</span>
454
+ <span class="cline-any cline-yes">1x</span>
455
+ <span class="cline-any cline-yes">1x</span>
456
+ <span class="cline-any cline-yes">1x</span>
457
+ <span class="cline-any cline-yes">1x</span>
458
+ <span class="cline-any cline-yes">1x</span>
459
+ <span class="cline-any cline-yes">1x</span>
460
+ <span class="cline-any cline-yes">1x</span>
461
+ <span class="cline-any cline-yes">1x</span>
462
+ <span class="cline-any cline-yes">1x</span>
463
+ <span class="cline-any cline-yes">1x</span>
464
+ <span class="cline-any cline-yes">1x</span>
465
+ <span class="cline-any cline-yes">1x</span>
466
+ <span class="cline-any cline-yes">1x</span>
467
+ <span class="cline-any cline-yes">1x</span>
468
+ <span class="cline-any cline-yes">1x</span>
469
+ <span class="cline-any cline-yes">1x</span>
470
+ <span class="cline-any cline-yes">1x</span>
471
+ <span class="cline-any cline-yes">1x</span>
472
+ <span class="cline-any cline-yes">1x</span>
473
+ <span class="cline-any cline-yes">1x</span>
474
+ <span class="cline-any cline-yes">1x</span>
475
+ <span class="cline-any cline-yes">273x</span>
476
+ <span class="cline-any cline-yes">273x</span>
477
+ <span class="cline-any cline-yes">273x</span>
478
+ <span class="cline-any cline-yes">273x</span>
479
+ <span class="cline-any cline-yes">273x</span>
480
+ <span class="cline-any cline-yes">273x</span>
481
+ <span class="cline-any cline-yes">273x</span>
482
+ <span class="cline-any cline-yes">273x</span>
483
+ <span class="cline-any cline-yes">273x</span>
484
+ <span class="cline-any cline-yes">273x</span>
485
+ <span class="cline-any cline-yes">273x</span>
486
+ <span class="cline-any cline-yes">273x</span>
487
+ <span class="cline-any cline-yes">273x</span>
488
+ <span class="cline-any cline-yes">273x</span>
489
+ <span class="cline-any cline-yes">273x</span>
490
+ <span class="cline-any cline-yes">273x</span>
491
+ <span class="cline-any cline-yes">273x</span>
492
+ <span class="cline-any cline-yes">273x</span>
493
+ <span class="cline-any cline-yes">273x</span>
494
+ <span class="cline-any cline-yes">273x</span>
495
+ <span class="cline-any cline-yes">273x</span>
496
+ <span class="cline-any cline-yes">273x</span>
497
+ <span class="cline-any cline-yes">273x</span>
498
+ <span class="cline-any cline-yes">273x</span>
499
+ <span class="cline-any cline-yes">273x</span>
500
+ <span class="cline-any cline-yes">273x</span>
501
+ <span class="cline-any cline-yes">273x</span>
502
+ <span class="cline-any cline-yes">273x</span>
503
+ <span class="cline-any cline-yes">273x</span>
504
+ <span class="cline-any cline-yes">273x</span>
505
+ <span class="cline-any cline-yes">273x</span>
506
+ <span class="cline-any cline-yes">2x</span>
507
+ <span class="cline-any cline-yes">2x</span>
508
+ <span class="cline-any cline-yes">2x</span>
509
+ <span class="cline-any cline-yes">2x</span>
510
+ <span class="cline-any cline-yes">2x</span>
511
+ <span class="cline-any cline-yes">1x</span>
512
+ <span class="cline-any cline-yes">1x</span>
513
+ <span class="cline-any cline-yes">1x</span>
514
+ <span class="cline-any cline-yes">1x</span>
515
+ <span class="cline-any cline-yes">2x</span>
516
+ <span class="cline-any cline-yes">2x</span>
517
+ <span class="cline-any cline-yes">2x</span>
518
+ <span class="cline-any cline-yes">2x</span>
519
+ <span class="cline-any cline-yes">2x</span>
520
+ <span class="cline-any cline-yes">2x</span>
521
+ <span class="cline-any cline-yes">2x</span>
522
+ <span class="cline-any cline-yes">2x</span>
523
+ <span class="cline-any cline-yes">2x</span>
524
+ <span class="cline-any cline-yes">2x</span>
525
+ <span class="cline-any cline-yes">2x</span>
526
+ <span class="cline-any cline-yes">273x</span>
527
+ <span class="cline-any cline-yes">273x</span>
528
+ <span class="cline-any cline-yes">273x</span>
529
+ <span class="cline-any cline-no">&nbsp;</span>
530
+ <span class="cline-any cline-no">&nbsp;</span>
531
+ <span class="cline-any cline-yes">273x</span>
532
+ <span class="cline-any cline-yes">273x</span>
533
+ <span class="cline-any cline-yes">273x</span>
534
+ <span class="cline-any cline-yes">273x</span>
535
+ <span class="cline-any cline-yes">273x</span>
536
+ <span class="cline-any cline-yes">273x</span>
537
+ <span class="cline-any cline-yes">273x</span>
538
+ <span class="cline-any cline-yes">273x</span>
539
+ <span class="cline-any cline-yes">273x</span>
540
+ <span class="cline-any cline-yes">273x</span>
541
+ <span class="cline-any cline-yes">273x</span>
542
+ <span class="cline-any cline-yes">273x</span>
543
+ <span class="cline-any cline-yes">273x</span>
544
+ <span class="cline-any cline-yes">273x</span>
545
+ <span class="cline-any cline-yes">273x</span>
546
+ <span class="cline-any cline-yes">273x</span>
547
+ <span class="cline-any cline-yes">273x</span>
548
+ <span class="cline-any cline-yes">273x</span>
549
+ <span class="cline-any cline-yes">273x</span>
550
+ <span class="cline-any cline-yes">273x</span>
551
+ <span class="cline-any cline-yes">273x</span>
552
+ <span class="cline-any cline-yes">273x</span>
553
+ <span class="cline-any cline-yes">273x</span>
554
+ <span class="cline-any cline-yes">273x</span>
555
+ <span class="cline-any cline-yes">273x</span>
556
+ <span class="cline-any cline-yes">273x</span>
557
+ <span class="cline-any cline-yes">273x</span>
558
+ <span class="cline-any cline-yes">273x</span>
559
+ <span class="cline-any cline-yes">273x</span>
560
+ <span class="cline-any cline-yes">273x</span>
561
+ <span class="cline-any cline-yes">273x</span>
562
+ <span class="cline-any cline-yes">273x</span>
563
+ <span class="cline-any cline-yes">29x</span>
564
+ <span class="cline-any cline-yes">29x</span>
565
+ <span class="cline-any cline-yes">244x</span>
566
+ <span class="cline-any cline-yes">244x</span>
567
+ <span class="cline-any cline-yes">244x</span>
568
+ <span class="cline-any cline-yes">244x</span>
569
+ <span class="cline-any cline-yes">244x</span>
570
+ <span class="cline-any cline-yes">244x</span>
571
+ <span class="cline-any cline-yes">244x</span>
572
+ <span class="cline-any cline-yes">244x</span>
573
+ <span class="cline-any cline-yes">244x</span>
574
+ <span class="cline-any cline-yes">244x</span>
575
+ <span class="cline-any cline-yes">244x</span>
576
+ <span class="cline-any cline-yes">244x</span>
577
+ <span class="cline-any cline-yes">244x</span>
578
+ <span class="cline-any cline-yes">244x</span>
579
+ <span class="cline-any cline-yes">244x</span>
580
+ <span class="cline-any cline-yes">273x</span>
581
+ <span class="cline-any cline-yes">273x</span>
582
+ <span class="cline-any cline-yes">273x</span>
583
+ <span class="cline-any cline-yes">273x</span>
584
+ <span class="cline-any cline-yes">273x</span>
585
+ <span class="cline-any cline-yes">273x</span>
586
+ <span class="cline-any cline-yes">273x</span>
587
+ <span class="cline-any cline-yes">1x</span>
588
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">"use client";
589
+ import {
590
+ forwardRef,
591
+ isValidElement,
592
+ type AriaRole,
593
+ type HTMLAttributes,
594
+ type ReactElement,
595
+ type ReactNode,
596
+ } from "react";
597
+ import { type ButtonProps } from "../button/Button.js";
598
+ import { type BackgroundColor } from "../cssUtils.js";
599
+ import {
600
+ type CSSTransitionClassNames,
601
+ type TransitionCallbacks,
602
+ type TransitionTimeout,
603
+ } from "../transition/types.js";
604
+ import { useScaleTransition } from "../transition/useScaleTransition.js";
605
+ import { type PropsWithRef } from "../types.js";
606
+ import { useEnsuredId } from "../useEnsuredId.js";
607
+ import { ToastActionButton } from "./ToastActionButton.js";
608
+ import { ToastCloseButton } from "./ToastCloseButton.js";
609
+ import { ToastContent, type ToastContentProps } from "./ToastContent.js";
610
+ import { toast, type ToastPosition } from "./toastStyles.js";
611
+ &nbsp;
612
+ /**
613
+ * @remarks \@since 6.0.0
614
+ */
615
+ export interface ConfigurableToastProps
616
+ extends HTMLAttributes&lt;HTMLDivElement&gt;,
617
+ TransitionCallbacks {
618
+ /**
619
+ * Note: this default value will only be generated in the `Toast` component.
620
+ *
621
+ * @defaultValue `"toast-" + useId()`
622
+ */
623
+ id?: string;
624
+ &nbsp;
625
+ /**
626
+ * Note: This is set while creating the toast.
627
+ *
628
+ * @defaultValue `visibleTime === null ? "alert" : "status"`
629
+ */
630
+ role?: AriaRole;
631
+ &nbsp;
632
+ /**
633
+ * @defaultValue `"surface"`
634
+ */
635
+ theme?: BackgroundColor;
636
+ &nbsp;
637
+ /**
638
+ * Set this to `true` to stack the content above the {@link action}. It is not
639
+ * recommended to enable this prop if the {@link closeButton} is enabled.
640
+ *
641
+ * @defaultValue `false`
642
+ */
643
+ stacked?: boolean;
644
+ &nbsp;
645
+ /**
646
+ * If this is not provided, a `ResizeObserver` will be used to determine if
647
+ * there are multiple lines of content.
648
+ */
649
+ multiline?: boolean;
650
+ &nbsp;
651
+ /**
652
+ * The tooltips position within the viewport.
653
+ *
654
+ * @defaultValue `"bottom"`
655
+ */
656
+ position?: ToastPosition;
657
+ &nbsp;
658
+ /**
659
+ * When this is a string or React element, it will be rendered as the
660
+ * `children` within a `Button`
661
+ */
662
+ action?: ButtonProps | ReactElement | string;
663
+ &nbsp;
664
+ /**
665
+ * This can be used to replace the custom action button behavior.
666
+ */
667
+ actionButton?: ReactNode;
668
+ &nbsp;
669
+ /**
670
+ * @defaultValue `getIcon("close")`
671
+ */
672
+ closeIcon?: ReactNode;
673
+ &nbsp;
674
+ /**
675
+ * Set this to `true` if a close button should be rendered to the right of the
676
+ * `children`.
677
+ *
678
+ * @defaultValue `!!closeButtonProps`
679
+ */
680
+ closeButton?: boolean;
681
+ &nbsp;
682
+ /**
683
+ * Use this prop to override most of the close button behavior. The
684
+ */
685
+ closeButtonProps?: ButtonProps;
686
+ &nbsp;
687
+ /**
688
+ * Any additional props that should be provided to the `&lt;div&gt;` that surrounds
689
+ * the toast `children`.
690
+ */
691
+ contentProps?: PropsWithRef&lt;ToastContentProps, HTMLDivElement&gt;;
692
+ &nbsp;
693
+ /**
694
+ * Set this to `true` if the `children` for the toast should no longer be
695
+ * wrapped in an additional `&lt;div&gt;` that applies some toast layout styles.
696
+ * This should normally only be used for custom `Toast` implementations.
697
+ *
698
+ * @see the `Snackbar`'s `renderToast` prop for an example.
699
+ */
700
+ disableToastContent?: boolean;
701
+ &nbsp;
702
+ /**
703
+ * The toast's transition timeout for entering and exiting. This is **not**
704
+ * how long the toast should remain visible.
705
+ *
706
+ * @defaultValue `SCALE_TIMEOUT`
707
+ */
708
+ timeout?: TransitionTimeout;
709
+ &nbsp;
710
+ /**
711
+ * The toast's transition class names for entering and exiting.
712
+ *
713
+ * @defaultValue `SCALE_CLASSNAMES`
714
+ */
715
+ classNames?: CSSTransitionClassNames;
716
+ }
717
+ &nbsp;
718
+ /**
719
+ * @remarks \@since 6.0.0
720
+ */
721
+ export interface ToastProps extends ConfigurableToastProps {
722
+ paused?: boolean;
723
+ visible: boolean;
724
+ }
725
+ &nbsp;
726
+ /**
727
+ * **Client Component**
728
+ *
729
+ * This component is just used for toast styling and does not implement any of
730
+ * the visibility behavior.
731
+ *
732
+ * @remarks \@since 6.0.0
733
+ */
734
+ export const Toast = forwardRef&lt;HTMLDivElement, ToastProps&gt;(
735
+ function Toast(props, ref) {
736
+ const {
737
+ id: propId,
738
+ className,
739
+ timeout,
740
+ classNames,
741
+ theme = "surface",
742
+ action: propAction,
743
+ actionButton: propActionButton,
744
+ position,
745
+ paused,
746
+ visible,
747
+ closeIcon: propCloseIcon,
748
+ closeButtonProps,
749
+ closeButton = !!closeButtonProps,
750
+ contentProps,
751
+ disableToastContent,
752
+ stacked,
753
+ multiline,
754
+ onEnter,
755
+ onEntering,
756
+ onEntered,
757
+ onExit,
758
+ onExiting,
759
+ onExited,
760
+ children,
761
+ ...remaining
762
+ } = props;
763
+ const id = useEnsuredId(propId, "toast");
764
+ &nbsp;
765
+ let actionButton = propActionButton;
766
+ if (propAction) {
767
+ let overrides: ButtonProps = {};
768
+ let buttonChildren: ReactNode;
769
+ // have to use `any` to correctly filter out all react elements
770
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
771
+ if (isValidElement&lt;any&gt;(propAction) || typeof propAction !== "object") {
772
+ buttonChildren = propAction;
773
+ } else {
774
+ ({ children: buttonChildren, ...overrides } = propAction);
775
+ }
776
+ &nbsp;
777
+ actionButton = (
778
+ &lt;ToastActionButton
779
+ theme={theme === "surface" ? <span class="branch-0 cbranch-no" title="branch not covered" >"secondary" : "clear"}</span>
780
+ reordered={<span class="branch-0 cbranch-no" title="branch not covered" >stacked &amp;&amp; closeButton}</span>
781
+ {...overrides}
782
+ &gt;
783
+ {buttonChildren}
784
+ &lt;/ToastActionButton&gt;
785
+ );
786
+ }
787
+ &nbsp;
788
+ let closeIcon = propCloseIcon;
789
+ if (typeof <span class="branch-0 cbranch-no" title="branch not covered" >closeButtonProps?.children !== "</span>undefined") <span class="branch-0 cbranch-no" title="branch not covered" >{</span>
790
+ <span class="cstat-no" title="statement not covered" > closeIcon = closeButtonProps.children;</span>
780
791
  <span class="cstat-no" title="statement not covered" > }</span>
781
- <span class="cstat-no" title="statement not covered" ></span>
782
- <span class="cstat-no" title="statement not covered" > return (</span>
783
- <span class="cstat-no" title="statement not covered" > &lt;div {...remaining} {...elementProps} id={id}&gt;</span>
784
- <span class="cstat-no" title="statement not covered" > &lt;ToastContent</span>
785
- <span class="cstat-no" title="statement not covered" > action={action}</span>
786
- <span class="cstat-no" title="statement not covered" > stacked={stacked}</span>
787
- <span class="cstat-no" title="statement not covered" > multiline={multiline}</span>
788
- <span class="cstat-no" title="statement not covered" > closeButton={closeButton}</span>
789
- <span class="cstat-no" title="statement not covered" > disableWrapper={disableToastContent}</span>
790
- <span class="cstat-no" title="statement not covered" > {...contentProps}</span>
791
- <span class="cstat-no" title="statement not covered" > &gt;</span>
792
- <span class="cstat-no" title="statement not covered" > {children}</span>
793
- <span class="cstat-no" title="statement not covered" > &lt;/ToastContent&gt;</span>
794
- <span class="cstat-no" title="statement not covered" > {actionButton}</span>
795
- <span class="cstat-no" title="statement not covered" > {closeButton &amp;&amp; (</span>
796
- <span class="cstat-no" title="statement not covered" > &lt;ToastCloseButton reordered={reordered} {...closeButtonProps}&gt;</span>
797
- <span class="cstat-no" title="statement not covered" > {closeIcon}</span>
798
- <span class="cstat-no" title="statement not covered" > &lt;/ToastCloseButton&gt;</span>
799
- <span class="cstat-no" title="statement not covered" > )}</span>
800
- <span class="cstat-no" title="statement not covered" > &lt;/div&gt;</span>
801
- <span class="cstat-no" title="statement not covered" > );</span>
802
- <span class="cstat-no" title="statement not covered" > }</span>
803
- <span class="cstat-no" title="statement not covered" >);</span>
792
+ &nbsp;
793
+ const action = !!actionButton;
794
+ const reordered = <span class="branch-0 cbranch-no" title="branch not covered" >stacked &amp;&amp; <span class="branch-0 cbranch-no" title="branch not covered" >action &amp;&amp; c</span>loseButton;</span>
795
+ const { elementProps, rendered } = useScaleTransition({
796
+ appear: true,
797
+ nodeRef: ref,
798
+ className: toast({
799
+ className,
800
+ theme,
801
+ action,
802
+ paused,
803
+ stacked,
804
+ position,
805
+ reordered,
806
+ closeButton,
807
+ }),
808
+ timeout,
809
+ classNames,
810
+ onEnter,
811
+ onEntering,
812
+ onEntered,
813
+ onExit,
814
+ onExiting,
815
+ onExited,
816
+ temporary: true,
817
+ transitionIn: visible,
818
+ exitedHidden: true,
819
+ });
820
+ &nbsp;
821
+ // this might get rid of the weird popping-back-in for a split second
822
+ // that sometimes happens on mobile firefox
823
+ if (!rendered) {
824
+ return null;
825
+ }
826
+ &nbsp;
827
+ return (
828
+ &lt;div {...remaining} {...elementProps} id={id}&gt;
829
+ &lt;ToastContent
830
+ action={action}
831
+ stacked={stacked}
832
+ multiline={multiline}
833
+ closeButton={closeButton}
834
+ disableWrapper={disableToastContent}
835
+ {...contentProps}
836
+ &gt;
837
+ {children}
838
+ &lt;/ToastContent&gt;
839
+ {actionButton}
840
+ {closeButton &amp;&amp; (
841
+ &lt;ToastCloseButton reordered={reordered} {...closeButtonProps}&gt;
842
+ {closeIcon}
843
+ &lt;/ToastCloseButton&gt;
844
+ )}
845
+ &lt;/div&gt;
846
+ );
847
+ }
848
+ );
804
849
  &nbsp;</pre></td></tr></table></pre>
805
850
 
806
851
  <div class='push'></div><!-- for sticky footer -->
@@ -808,7 +853,7 @@
808
853
  <div class='footer quiet pad2 space-top1 center small'>
809
854
  Code coverage generated by
810
855
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
811
- at 2023-09-23T21:43:31.437Z
856
+ at 2023-11-18T21:34:40.818Z
812
857
  </div>
813
858
  <script src="../prettify.js"></script>
814
859
  <script>