@flytedan/flytebot-design-system 0.64.0 → 0.66.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +1173 -1158
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +39 -3
- package/dist/index.d.ts +39 -3
- package/dist/index.js +820 -806
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/styles/components.css +64 -0
package/package.json
CHANGED
package/styles/components.css
CHANGED
|
@@ -1994,6 +1994,44 @@
|
|
|
1994
1994
|
.fd-stat-delta-neutral {
|
|
1995
1995
|
color: var(--text-muted);
|
|
1996
1996
|
}
|
|
1997
|
+
/* MP-311: a pressable tile (StatTile with `onPress`) is a real <button> that filters a list.
|
|
1998
|
+
* Reset the button chrome so it reads as the same tile, then give it hover, press, focus,
|
|
1999
|
+
* pressed and disabled states that only touch border, fill and shadow, never size, so nothing
|
|
2000
|
+
* reflows. `:focus-visible` is restated after `:hover`/`:active` for the reason .fd-card-interactive
|
|
2001
|
+
* gives above (a hovered, focused tile must still show its ring). A pressed tile uses the brand
|
|
2002
|
+
* tokens .fd-tag[aria-pressed] uses, so light, dark and high contrast all resolve. */
|
|
2003
|
+
.fd-stat-pressable {
|
|
2004
|
+
display: block;
|
|
2005
|
+
width: 100%;
|
|
2006
|
+
text-align: left;
|
|
2007
|
+
color: inherit;
|
|
2008
|
+
font: inherit;
|
|
2009
|
+
cursor: pointer;
|
|
2010
|
+
transition:
|
|
2011
|
+
background var(--dur-base) var(--ease),
|
|
2012
|
+
border-color var(--dur-base) var(--ease),
|
|
2013
|
+
box-shadow var(--dur-base) var(--ease);
|
|
2014
|
+
}
|
|
2015
|
+
.fd-stat-pressable:hover {
|
|
2016
|
+
box-shadow: var(--e-2);
|
|
2017
|
+
border-color: var(--border-strong);
|
|
2018
|
+
}
|
|
2019
|
+
.fd-stat-pressable:active {
|
|
2020
|
+
box-shadow: var(--e-1);
|
|
2021
|
+
border-color: var(--border-strong);
|
|
2022
|
+
}
|
|
2023
|
+
.fd-stat-pressable[aria-pressed="true"] {
|
|
2024
|
+
background: var(--surface-brand);
|
|
2025
|
+
border-color: var(--border-brand);
|
|
2026
|
+
}
|
|
2027
|
+
.fd-stat-pressable:focus-visible {
|
|
2028
|
+
box-shadow: var(--focus-ring);
|
|
2029
|
+
}
|
|
2030
|
+
.fd-stat-pressable:disabled {
|
|
2031
|
+
cursor: not-allowed;
|
|
2032
|
+
opacity: 0.6;
|
|
2033
|
+
box-shadow: none;
|
|
2034
|
+
}
|
|
1997
2035
|
|
|
1998
2036
|
/* ============ Meter / progress ============ */
|
|
1999
2037
|
.fd-meterbar {
|
|
@@ -3844,6 +3882,32 @@
|
|
|
3844
3882
|
grid-template-columns: repeat(auto-fit, minmax(min(100%, 175px), 1fr));
|
|
3845
3883
|
gap: 16px;
|
|
3846
3884
|
}
|
|
3885
|
+
/* MP-310 — StatGrid (src/components/data/StatGrid.tsx): a stat tile set that wraps only into even
|
|
3886
|
+
rows. `fd-grid-stats` above is `auto-fit` and stays as it is; this is the opt-in for a set that
|
|
3887
|
+
must never strand one tile on a line (four tiles at a width that fits three). The root is the
|
|
3888
|
+
size container and the tiles sit in a grid inside it (a grid cannot query its own width), so the
|
|
3889
|
+
count follows the box the set is placed in, not the viewport. Each step is the narrowest
|
|
3890
|
+
container that holds that many tiles at the same 175px floor `fd-grid-stats` uses and one 16px
|
|
3891
|
+
gap between: two tiles need 366px, four need 748px. A set of four stops at 2 between those two
|
|
3892
|
+
widths rather than going to 3. */
|
|
3893
|
+
.fd-stat-grid {
|
|
3894
|
+
container-type: inline-size;
|
|
3895
|
+
}
|
|
3896
|
+
.fd-stat-grid-tiles {
|
|
3897
|
+
display: grid;
|
|
3898
|
+
grid-template-columns: minmax(0, 1fr);
|
|
3899
|
+
gap: 16px;
|
|
3900
|
+
}
|
|
3901
|
+
@container (width >= 366px) {
|
|
3902
|
+
.fd-stat-grid-tiles {
|
|
3903
|
+
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
3904
|
+
}
|
|
3905
|
+
}
|
|
3906
|
+
@container (width >= 748px) {
|
|
3907
|
+
.fd-stat-grid-tiles[data-columns="4"] {
|
|
3908
|
+
grid-template-columns: repeat(4, minmax(0, 1fr));
|
|
3909
|
+
}
|
|
3910
|
+
}
|
|
3847
3911
|
/* MP-271 — CardGrid (src/components/layout/CardGrid.tsx). `auto-fill` rather than
|
|
3848
3912
|
`fd-grid-stats`'s own `auto-fit` above on purpose: a dashboard of Cards should keep a
|
|
3849
3913
|
consistent card width as the count changes, not stretch a lone card to fill the whole row
|