@rogieking/figui3 8.9.20 → 8.9.22

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.
@@ -49,9 +49,9 @@ Shared:
49
49
  | Tag | Playground | Inner control | Notes |
50
50
  |---|---|---|---|
51
51
  | `propskit-switch` | `#propskit-switch` | `fig-switch` | `checked`, `default` boolean |
52
- | `propskit-color` | `#propskit-color` | `fig-fill-picker` + `fig-swatch` | Solid swatch, same size as gradient. Clicking the field opens the picker. Focus ring on the field, not the swatch. `alpha` default true |
53
- | `propskit-fill` | `#propskit-fill` | `fig-fill-picker` + `fig-swatch` | Same chrome as color. Clicking the field opens the picker. Focus ring on the field, not the swatch. Full fill JSON (`solid` / `gradient` / `image` / `video` / `webcam` / custom). Forwards `mode-*` slots |
54
- | `propskit-gradient` | `#propskit-gradient` | `fig-input-gradient` | Default `edit="picker"`. Clicking the field opens the picker. Focus ring on the field, not the gradient. `mode="handle\|tip"` for inline edit |
52
+ | `propskit-color` | `#propskit-color` | `fig-fill-picker` + `fig-swatch` | Solid swatch, same size as gradient. Clicking the field opens the picker anchored to the host. Focus ring on the field, not the swatch. `alpha` default true |
53
+ | `propskit-fill` | `#propskit-fill` | `fig-fill-picker` + `fig-swatch` | Same chrome as color. Clicking the field opens the picker anchored to the host. Focus ring on the field, not the swatch. Value may be fill JSON or a bare video URL. Forwards `mode-*` slots |
54
+ | `propskit-gradient` | `#propskit-gradient` | `fig-input-gradient` | Default `edit="picker"`. Clicking the field opens the picker anchored to the host. Focus ring on the field, not the gradient. `mode="handle\|tip"` for inline edit |
55
55
  | `propskit-select` | `#propskit-select` | `fig-select` | `options` or slotted `fig-select-options` |
56
56
  | `propskit-text` | `#propskit-text` | `fig-input-text` | `type`, `readonly` |
57
57
  | `propskit-number` | `#propskit-number` | `fig-input-number` | `min`, `max`, `step`, `precision`, `units`, `steppers` |
package/components.css CHANGED
@@ -1369,6 +1369,10 @@ input[type="color"] {
1369
1369
  outline-offset: var(--figma-focus-outline-offset);
1370
1370
  }
1371
1371
 
1372
+ :is(fig-swatch, fig-chit):focus-within:not(:focus) & {
1373
+ outline: 0;
1374
+ }
1375
+
1372
1376
  &::-webkit-color-swatch-wrapper {
1373
1377
  padding: 0;
1374
1378
  border: 0;
@@ -1514,6 +1518,16 @@ input[type="color"] {
1514
1518
  &[size="large"]::before {
1515
1519
  border-radius: calc(var(--border-radius) - var(--padding));
1516
1520
  }
1521
+ &:focus,
1522
+ &:active {
1523
+ outline: var(--figma-focus-outline);
1524
+ outline-offset: var(--figma-focus-outline-offset);
1525
+ }
1526
+
1527
+ &:focus-within:not(:focus) {
1528
+ outline: 0;
1529
+ }
1530
+
1517
1531
  input[type="color"] {
1518
1532
  background: none;
1519
1533
  width: var(--width);
@@ -1522,6 +1536,11 @@ input[type="color"] {
1522
1536
  place-self: center;
1523
1537
  box-sizing: border-box;
1524
1538
  opacity: 0;
1539
+
1540
+ &:focus,
1541
+ &:focus-visible {
1542
+ outline: 0;
1543
+ }
1525
1544
  }
1526
1545
 
1527
1546
  /* Gradient/Image types - inset thumbnail with hidden input */