@rogieking/figui3 6.15.0 → 6.17.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/README.md +21 -0
- package/components.css +45 -2
- package/dist/components.css +1 -1
- package/dist/fig-editor.css +1 -1
- package/dist/fig-lab.css +1 -1
- package/dist/fig-lab.js +88 -16
- package/dist/fig.css +1 -1
- package/dist/fig.js +22 -22
- package/fig-lab.css +391 -7
- package/fig-lab.js +1206 -2
- package/fig.js +36 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -89,6 +89,7 @@ Minimal example:
|
|
|
89
89
|
| [Switch](#switch) | `<fig-switch>` | Toggle switch |
|
|
90
90
|
| [Slider](#slider) | `<fig-slider>` | Range, hue, opacity, delta, stepper |
|
|
91
91
|
| [Propskit Slider](#propskit-slider) | `<propskit-slider>` | Labeled field + slider combo |
|
|
92
|
+
| [Propskit Color](#propskit-color) | `<propskit-color>` | Full-surface labeled color control |
|
|
92
93
|
| [Propskit Number](#propskit-number) | `<propskit-number>` | Full-surface labeled number control |
|
|
93
94
|
| [Propskit Select](#propskit-select) | `<propskit-select>` | Full-surface labeled select control |
|
|
94
95
|
| [Propskit Switch](#propskit-switch) | `<propskit-switch>` | Full-surface labeled switch control |
|
|
@@ -316,6 +317,22 @@ Composes a `<fig-field>` and `<fig-input-number>` into a full-surface property c
|
|
|
316
317
|
|
|
317
318
|
---
|
|
318
319
|
|
|
320
|
+
#### Propskit Color
|
|
321
|
+
|
|
322
|
+
`<propskit-color>`
|
|
323
|
+
|
|
324
|
+
Composes a `<fig-field>` and `<fig-input-color>` into a full-surface property control. Color attributes are forwarded to the inner input and text editing remains enabled.
|
|
325
|
+
|
|
326
|
+
**Attributes:** `label`, `value`, `alpha`, `disabled`, `experimental`, `size`
|
|
327
|
+
|
|
328
|
+
**Events:** `input`, `change` — forwarded from the inner color input.
|
|
329
|
+
|
|
330
|
+
```html
|
|
331
|
+
<propskit-color label="Fill" value="#0D99FF" alpha="true"></propskit-color>
|
|
332
|
+
```
|
|
333
|
+
|
|
334
|
+
---
|
|
335
|
+
|
|
319
336
|
#### Propskit Switch
|
|
320
337
|
|
|
321
338
|
`<propskit-switch>`
|
|
@@ -1161,9 +1178,13 @@ Triggered menu with native keyboard patterns. The trigger gets `aria-haspopup="m
|
|
|
1161
1178
|
<fig-menu-item value="paste">Paste</fig-menu-item>
|
|
1162
1179
|
<fig-menu-separator></fig-menu-separator>
|
|
1163
1180
|
<fig-menu-item value="delete" disabled>Delete</fig-menu-item>
|
|
1181
|
+
<fig-menu-separator label="More"></fig-menu-separator>
|
|
1182
|
+
<fig-menu-item value="settings">Settings</fig-menu-item>
|
|
1164
1183
|
</fig-menu>
|
|
1165
1184
|
```
|
|
1166
1185
|
|
|
1186
|
+
`fig-menu-separator` accepts optional `label` — renders the rule, then secondary group text underneath.
|
|
1187
|
+
|
|
1167
1188
|
---
|
|
1168
1189
|
|
|
1169
1190
|
#### Header
|
package/components.css
CHANGED
|
@@ -5345,7 +5345,7 @@ fig-menu {
|
|
|
5345
5345
|
}
|
|
5346
5346
|
|
|
5347
5347
|
fig-menu-item {
|
|
5348
|
-
--fig-menu-item-padding: var(--spacer-
|
|
5348
|
+
--fig-menu-item-padding: var(--spacer-4);
|
|
5349
5349
|
display: flex;
|
|
5350
5350
|
align-items: center;
|
|
5351
5351
|
gap: var(--spacer-2);
|
|
@@ -5383,8 +5383,51 @@ fig-menu-item {
|
|
|
5383
5383
|
}
|
|
5384
5384
|
|
|
5385
5385
|
fig-menu-separator {
|
|
5386
|
+
--fig-menu-separator-color: var(--figma-color-border);
|
|
5387
|
+
--fig-menu-separator-label-color: var(--figma-color-text-secondary);
|
|
5388
|
+
|
|
5386
5389
|
display: block;
|
|
5387
5390
|
height: 1px;
|
|
5388
|
-
background: var(--figma-color-border);
|
|
5389
5391
|
margin: var(--spacer-2) 0;
|
|
5392
|
+
padding: 0;
|
|
5393
|
+
border: 0;
|
|
5394
|
+
background: var(--fig-menu-separator-color);
|
|
5395
|
+
color: var(--fig-menu-separator-label-color);
|
|
5396
|
+
font-weight: var(--body-medium-fontWeight);
|
|
5397
|
+
pointer-events: none;
|
|
5398
|
+
user-select: none;
|
|
5399
|
+
|
|
5400
|
+
/* Labeled: rule, then secondary group label (same pattern as menu optgroups). */
|
|
5401
|
+
&[label]:not([label=""]) {
|
|
5402
|
+
display: flex;
|
|
5403
|
+
flex-direction: column;
|
|
5404
|
+
gap: var(--spacer-2);
|
|
5405
|
+
height: auto;
|
|
5406
|
+
margin: var(--spacer-2) 0;
|
|
5407
|
+
margin-bottom: var(--spacer-1);
|
|
5408
|
+
padding: 0 var(--fig-menu-item-padding, var(--spacer-4));
|
|
5409
|
+
background: transparent;
|
|
5410
|
+
|
|
5411
|
+
&::before {
|
|
5412
|
+
content: "";
|
|
5413
|
+
display: block;
|
|
5414
|
+
height: 1px;
|
|
5415
|
+
margin-inline: calc(-1 * var(--fig-menu-item-padding, var(--spacer-4)));
|
|
5416
|
+
background: var(--fig-menu-separator-color);
|
|
5417
|
+
}
|
|
5418
|
+
|
|
5419
|
+
&::after {
|
|
5420
|
+
content: attr(label);
|
|
5421
|
+
display: block;
|
|
5422
|
+
color: var(--fig-menu-separator-label-color);
|
|
5423
|
+
line-height: var(--spacer-4);
|
|
5424
|
+
min-height: var(--spacer-4);
|
|
5425
|
+
}
|
|
5426
|
+
}
|
|
5427
|
+
}
|
|
5428
|
+
|
|
5429
|
+
dialog[is="fig-popup"][theme="menu"] fig-menu-separator,
|
|
5430
|
+
fig-select-options > fig-menu-separator {
|
|
5431
|
+
--fig-menu-separator-color: var(--figma-color-border-menu);
|
|
5432
|
+
--fig-menu-separator-label-color: var(--figma-color-text-menu-secondary);
|
|
5390
5433
|
}
|