@flytedan/flytebot-design-system 0.11.3 → 0.11.5

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.11.3",
3
+ "version": "0.11.5",
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",
@@ -217,7 +217,12 @@
217
217
  background: var(--btn-solid-bg-hover);
218
218
  color: var(--btn-solid-ink);
219
219
  }
220
- .fd-btn-icon-solid:active {
220
+ /* Pressed restates every selector hover uses: a toned `:hover` is three classes deep, so a
221
+ bare `.fd-btn-icon-solid:active` loses to it and a pressed add/remove button would keep
222
+ its hover fill. */
223
+ .fd-btn-icon-solid:active,
224
+ .fd-btn-icon-solid.is-ok:active,
225
+ .fd-btn-icon-solid.is-danger:active {
221
226
  background: var(--btn-solid-bg-active);
222
227
  box-shadow: none;
223
228
  }
@@ -4045,18 +4050,33 @@
4045
4050
  display: flex;
4046
4051
  align-items: center;
4047
4052
  min-width: 0;
4048
- /* Cells are fixed-width, so a strip wider than the row it's in has to lose the
4049
- tail rather than push it: without this the overflowing cells paint straight
4050
- through whatever is pinned to the end of the strip. Clipping the last column
4051
- is the right failure here — the alternative is columns that shift row to row,
4052
- which is the one thing an aligned strip must never do. */
4053
+ /* When even the figures themselves don't fit (see .fd-erow-cell), the strip loses
4054
+ the tail rather than pushing it: without this the overflowing cells paint straight
4055
+ through whatever is pinned to the end of the strip. */
4053
4056
  overflow: hidden;
4054
4057
  }
4058
+ /* One column slot. It takes its column's width (--erow-metric-w, set per cell by
4059
+ EntityRowMetrics) whenever the strip has room for every column at its width, which keeps
4060
+ rows and totals aligned. In a strip too narrow for that — a phone, or a list pane squeezed
4061
+ beside another — the slots shrink toward their own figure instead of clipping whole
4062
+ columns off the end: a narrow row gives up alignment before it gives up a figure. The
4063
+ right padding (inside the width) keeps shrunk figures from running into each other. */
4064
+ .fd-erow-cell {
4065
+ display: flex;
4066
+ flex: 0 1 auto;
4067
+ width: var(--erow-metric-w);
4068
+ min-width: min-content;
4069
+ padding-right: 6px;
4070
+ }
4071
+ .fd-erow-cell > .fd-tooltip-anchor,
4072
+ .fd-erow-cell .fd-erow-metric {
4073
+ flex: 1 1 auto;
4074
+ min-width: 0;
4075
+ }
4055
4076
  .fd-erow-metric {
4056
4077
  display: inline-flex;
4057
4078
  align-items: center;
4058
4079
  gap: 4px;
4059
- flex: none;
4060
4080
  font-size: var(--overline-size);
4061
4081
  color: var(--text-2);
4062
4082
  white-space: nowrap;
@@ -4137,6 +4157,42 @@ button.fd-erow-metric:focus-visible {
4137
4157
  opacity: 0.6;
4138
4158
  }
4139
4159
 
4160
+ /* TransferList: two panels side by side, each its own bordered surface — while the
4161
+ component itself is wide enough for that. Below 600px of its OWN width (a phone, or a
4162
+ half-width card on a desktop page) the panels stack: two panes under ~290px each are too
4163
+ narrow for a search field beside its sort button, or for a row's name beside its figures
4164
+ and action, so a list you cannot read is traded for one you scroll past. A container
4165
+ query, not a media query, because the width that matters is the list's, not the
4166
+ screen's. */
4167
+ .fd-tlist {
4168
+ container-type: inline-size;
4169
+ }
4170
+ .fd-tlist-panes {
4171
+ display: flex;
4172
+ gap: 16px;
4173
+ align-items: flex-start;
4174
+ }
4175
+ @container (max-width: 600px) {
4176
+ .fd-tlist-panes {
4177
+ flex-direction: column;
4178
+ align-items: stretch;
4179
+ }
4180
+ }
4181
+ .fd-tlist-side {
4182
+ flex: 1;
4183
+ min-width: 0;
4184
+ display: flex;
4185
+ flex-direction: column;
4186
+ gap: 8px;
4187
+ padding: 10px;
4188
+ border-radius: 10px;
4189
+ border: 1px solid var(--border);
4190
+ background: var(--surface);
4191
+ position: relative;
4192
+ }
4193
+ .fd-tlist-side.is-drop-target {
4194
+ border-color: var(--brand);
4195
+ }
4140
4196
  /* TransferList's full-panel drop overlay — extends the existing subtle
4141
4197
  dragOverSide border-color change into real visual weight: a dashed blue
4142
4198
  border and a translucent brand scrim across the WHOLE target side, with