@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 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-3);
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
  }