@flytedan/flytebot-design-system 0.51.3 → 0.51.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flytedan/flytebot-design-system",
3
- "version": "0.51.3",
3
+ "version": "0.51.4",
4
4
  "description": "flytedesk Design System — shared component library, tokens, and business-logic kits for flytedesk apps.",
5
5
  "type": "module",
6
6
  "license": "UNLICENSED",
@@ -2714,24 +2714,44 @@
2714
2714
  color: var(--text);
2715
2715
  font-size: var(--body-size);
2716
2716
  }
2717
- /* ToastProvider's stack: pinned to the bottom-right of the viewport (z-index is set inline
2718
- from OVERLAY_CEILING, above every layer). The region itself takes no clicks: it has a real
2719
- box wherever a toast is, including the gap between two stacked toasts and the shadow around
2720
- each, and without this a click aimed at the control underneath would land on it. Each toast
2721
- takes its clicks back, so its close button works. */
2722
- .fd-toast-region {
2717
+ /* The corner stack: the one bottom-right box every floating surface (the toasts, the job
2718
+ tray) renders into a slot of, so they lay out one above the next instead of each pinning
2719
+ itself to the same corner (z-index is set inline from OVERLAY_CEILING, above every layer).
2720
+ It is 340px wide, and on a phone the width between two gutters. The stack
2721
+ takes no clicks: it has a real box wherever a surface is, including the gaps between
2722
+ surfaces and the shadow around each, and without this a click aimed at the control
2723
+ underneath would land on it. Each surface takes its clicks back. Slots run bottom to top;
2724
+ two occupied slots are one gap apart, and an empty one (the toast region is always mounted
2725
+ for its live region) takes no room. */
2726
+ .fd-corner-stack {
2723
2727
  position: fixed;
2724
2728
  bottom: var(--s-lg);
2725
2729
  right: var(--s-lg);
2730
+ display: flex;
2731
+ flex-direction: column-reverse;
2732
+ width: 340px;
2733
+ pointer-events: none;
2734
+ }
2735
+ @media (max-width: 640px) {
2736
+ .fd-corner-stack {
2737
+ width: calc(100vw - 2 * var(--s-lg));
2738
+ }
2739
+ }
2740
+ .fd-corner-stack-slot:has(> :not(:empty)) ~ .fd-corner-stack-slot:has(> :not(:empty)) {
2741
+ margin-bottom: var(--s-sm);
2742
+ }
2743
+ /* ToastProvider's stack, in the corner stack's toasts slot. */
2744
+ .fd-toast-region {
2726
2745
  display: flex;
2727
2746
  flex-direction: column;
2728
2747
  gap: var(--s-sm);
2729
- max-width: calc(100vw - 2 * var(--s-lg));
2730
- pointer-events: none;
2731
2748
  }
2732
2749
  .fd-toast-region > * {
2733
2750
  pointer-events: auto;
2734
2751
  }
2752
+ .fd-toast-region > .fd-toast {
2753
+ width: auto;
2754
+ }
2735
2755
 
2736
2756
  /* ============ Flag / empty ============ */
2737
2757
  .fd-flag {
@@ -7488,15 +7508,9 @@ button.fd-erow-metric:focus-visible {
7488
7508
  A stack of background-job cards (exports, syncs) and an ordered-phase display for the
7489
7509
  same kind of job. Both are entirely props-driven — no timers here, only layout. */
7490
7510
  .fd-job-tray{
7491
- position:fixed;
7492
- right:var(--s-16,16px);
7493
- bottom:var(--s-16,16px);
7494
- z-index:40;
7495
7511
  display:flex;
7496
7512
  flex-direction:column-reverse;
7497
7513
  gap:10px;
7498
- width:340px;
7499
- max-width:calc(100vw - 32px);
7500
7514
  pointer-events:none;
7501
7515
  }
7502
7516
  .fd-job-tray>.fd-job-card{pointer-events:auto}
@@ -7519,16 +7533,6 @@ button.fd-erow-metric:focus-visible {
7519
7533
  .fd-job-card-done-note{display:block}
7520
7534
  .fd-job-card-failed{display:flex;align-items:flex-start;gap:8px;color:var(--danger-text);font-size:var(--body-sm-size)}
7521
7535
  .fd-job-card-failed .ph{flex:none;font-size:16px;margin-top:1px}
7522
- @media (max-width:640px){
7523
- .fd-job-tray{
7524
- left:16px;
7525
- right:16px;
7526
- bottom:0;
7527
- width:auto;
7528
- max-width:none;
7529
- padding-bottom:12px;
7530
- }
7531
- }
7532
7536
 
7533
7537
  .fd-phased-progress{display:flex;flex-direction:column;gap:12px}
7534
7538
  .fd-phase-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}