@vectoriox/iox-ui 5.84.0 → 5.86.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.
Files changed (47) hide show
  1. package/actions-core/index.d.ts +47 -3
  2. package/composite-core/index.d.ts +93 -15
  3. package/design-core/index.d.ts +2013 -187
  4. package/fesm2022/vectoriox-iox-ui-actions-core.mjs +153 -70
  5. package/fesm2022/vectoriox-iox-ui-actions-core.mjs.map +1 -1
  6. package/fesm2022/vectoriox-iox-ui-composite-core.mjs +307 -39
  7. package/fesm2022/vectoriox-iox-ui-composite-core.mjs.map +1 -1
  8. package/fesm2022/vectoriox-iox-ui-design-core.mjs +2222 -85
  9. package/fesm2022/vectoriox-iox-ui-design-core.mjs.map +1 -1
  10. package/fesm2022/vectoriox-iox-ui-forms-core.mjs +27 -4
  11. package/fesm2022/vectoriox-iox-ui-forms-core.mjs.map +1 -1
  12. package/fesm2022/vectoriox-iox-ui-generation-core.mjs +250 -12
  13. package/fesm2022/vectoriox-iox-ui-generation-core.mjs.map +1 -1
  14. package/fesm2022/vectoriox-iox-ui-scene-core.mjs +101 -5
  15. package/fesm2022/vectoriox-iox-ui-scene-core.mjs.map +1 -1
  16. package/fesm2022/vectoriox-iox-ui.mjs +1545 -78
  17. package/fesm2022/vectoriox-iox-ui.mjs.map +1 -1
  18. package/forms-core/index.d.ts +23 -4
  19. package/generation-core/index.d.ts +13 -0
  20. package/index.d.ts +563 -62
  21. package/package.json +1 -1
  22. package/scene-core/index.d.ts +32 -4
  23. package/src/actions-core/action.model.ts +1 -1
  24. package/src/actions-core/dialog-motion.ts +25 -0
  25. package/src/actions-core/dialog-opener.ts +9 -3
  26. package/src/actions-core/element-actions.ts +25 -1
  27. package/src/actions-core/popover-opener.ts +50 -0
  28. package/src/actions-core/public-api.ts +1 -0
  29. package/src/composite-core/header.ts +25 -0
  30. package/src/composite-core/public-api.ts +1 -0
  31. package/src/composite-core/slider-runtime.ts +82 -0
  32. package/src/composite-core/slider.ts +194 -27
  33. package/src/composite-core/structure.ts +14 -9
  34. package/src/design-core/flavor-spec.generated.ts +2145 -85
  35. package/src/design-core/header-behaviour.ts +76 -0
  36. package/src/design-core/public-api.ts +1 -0
  37. package/src/design-core/theme-color.ts +21 -5
  38. package/src/forms-core/submit-lifecycle.ts +30 -3
  39. package/src/generation-core/baseline-roles.ts +1 -0
  40. package/src/generation-core/compose-site.ts +8 -0
  41. package/src/generation-core/node-baselines.generated.ts +231 -11
  42. package/src/generation-core/patterns.ts +2 -0
  43. package/src/generation-core/site-spec.generated.ts +8 -0
  44. package/src/scene-core/scene.ts +18 -0
  45. package/src/scene-core/scroll-driver.ts +83 -6
  46. package/styles/iox-design.css +431 -1
  47. package/styles/iox-forms.css +29 -4
@@ -519,6 +519,30 @@ const SPEC_TIERS = {
519
519
  "type": "number",
520
520
  "group": "motion",
521
521
  "desc": ""
522
+ },
523
+ {
524
+ "name": "dur-hover",
525
+ "type": "duration",
526
+ "group": "motion",
527
+ "desc": "Hover colour: links, chips (≤150ms)"
528
+ },
529
+ {
530
+ "name": "ease-hover",
531
+ "type": "easing",
532
+ "group": "motion",
533
+ "desc": "Hover colour (ease)"
534
+ },
535
+ {
536
+ "name": "dur-press",
537
+ "type": "duration",
538
+ "group": "motion",
539
+ "desc": "A press, faster than its release"
540
+ },
541
+ {
542
+ "name": "dur-ui",
543
+ "type": "duration",
544
+ "group": "motion",
545
+ "desc": "UI motion ≤300ms: a linked card, the header"
522
546
  }
523
547
  ],
524
548
  "component": [
@@ -747,6 +771,11 @@ const SPEC_TIERS = {
747
771
  "type": "effect",
748
772
  "default": "none"
749
773
  },
774
+ {
775
+ "name": "card-shadow-raise",
776
+ "type": "shadow",
777
+ "default": "var(--iox-card-shadow-hover)"
778
+ },
750
779
  {
751
780
  "name": "panel-bg",
752
781
  "type": "color",
@@ -877,6 +906,156 @@ const SPEC_TIERS = {
877
906
  "type": "size",
878
907
  "default": "0px"
879
908
  },
909
+ {
910
+ "name": "tooltip-bg",
911
+ "type": "color",
912
+ "default": "var(--iox-text)"
913
+ },
914
+ {
915
+ "name": "tooltip-ink",
916
+ "type": "color",
917
+ "default": "var(--iox-bg)"
918
+ },
919
+ {
920
+ "name": "tooltip-radius",
921
+ "type": "radius",
922
+ "default": "var(--iox-radius-xs)"
923
+ },
924
+ {
925
+ "name": "tooltip-shadow",
926
+ "type": "shadow",
927
+ "default": "var(--iox-shadow-md)"
928
+ },
929
+ {
930
+ "name": "tooltip-size",
931
+ "type": "size",
932
+ "default": "var(--iox-size-small)"
933
+ },
934
+ {
935
+ "name": "tooltip-scale",
936
+ "type": "number",
937
+ "default": "0.97"
938
+ },
939
+ {
940
+ "name": "tooltip-ease",
941
+ "type": "easing",
942
+ "default": "var(--iox-ease-enter)"
943
+ },
944
+ {
945
+ "name": "tooltip-dur-in",
946
+ "type": "duration",
947
+ "default": "125ms"
948
+ },
949
+ {
950
+ "name": "tooltip-dur-out",
951
+ "type": "duration",
952
+ "default": "80ms"
953
+ },
954
+ {
955
+ "name": "popover-bg",
956
+ "type": "color",
957
+ "default": "var(--iox-surface)"
958
+ },
959
+ {
960
+ "name": "popover-border",
961
+ "type": "color",
962
+ "default": "var(--iox-line)"
963
+ },
964
+ {
965
+ "name": "popover-border-width",
966
+ "type": "size",
967
+ "default": "var(--iox-border-width)"
968
+ },
969
+ {
970
+ "name": "popover-radius",
971
+ "type": "radius",
972
+ "default": "var(--iox-radius-lg)"
973
+ },
974
+ {
975
+ "name": "popover-shadow",
976
+ "type": "shadow",
977
+ "default": "var(--iox-shadow-lg)"
978
+ },
979
+ {
980
+ "name": "popover-pad",
981
+ "type": "spacing",
982
+ "default": "var(--iox-space-pad)"
983
+ },
984
+ {
985
+ "name": "popover-scale",
986
+ "type": "number",
987
+ "default": "0.95"
988
+ },
989
+ {
990
+ "name": "popover-ease",
991
+ "type": "easing",
992
+ "default": "var(--iox-ease-enter)"
993
+ },
994
+ {
995
+ "name": "popover-dur-in",
996
+ "type": "duration",
997
+ "default": "200ms"
998
+ },
999
+ {
1000
+ "name": "popover-dur-out",
1001
+ "type": "duration",
1002
+ "default": "140ms"
1003
+ },
1004
+ {
1005
+ "name": "sheet-ease",
1006
+ "type": "easing",
1007
+ "default": "cubic-bezier(0.32, 0.72, 0, 1)"
1008
+ },
1009
+ {
1010
+ "name": "sheet-dur-in",
1011
+ "type": "duration",
1012
+ "default": "500ms"
1013
+ },
1014
+ {
1015
+ "name": "sheet-dur-out",
1016
+ "type": "duration",
1017
+ "default": "280ms"
1018
+ },
1019
+ {
1020
+ "name": "toast-bg",
1021
+ "type": "color",
1022
+ "default": "var(--iox-text)"
1023
+ },
1024
+ {
1025
+ "name": "toast-ink",
1026
+ "type": "color",
1027
+ "default": "var(--iox-bg)"
1028
+ },
1029
+ {
1030
+ "name": "toast-radius",
1031
+ "type": "radius",
1032
+ "default": "var(--iox-radius-md)"
1033
+ },
1034
+ {
1035
+ "name": "toast-shadow",
1036
+ "type": "shadow",
1037
+ "default": "var(--iox-shadow-lg)"
1038
+ },
1039
+ {
1040
+ "name": "toast-ease",
1041
+ "type": "easing",
1042
+ "default": "ease"
1043
+ },
1044
+ {
1045
+ "name": "toast-dur-in",
1046
+ "type": "duration",
1047
+ "default": "400ms"
1048
+ },
1049
+ {
1050
+ "name": "toast-dur-out",
1051
+ "type": "duration",
1052
+ "default": "220ms"
1053
+ },
1054
+ {
1055
+ "name": "dialog-edge",
1056
+ "type": "color",
1057
+ "default": "var(--iox-line)"
1058
+ },
880
1059
  {
881
1060
  "name": "image-radius",
882
1061
  "type": "radius",
@@ -912,6 +1091,31 @@ const SPEC_TIERS = {
912
1091
  "type": "keyword",
913
1092
  "default": "underline 2px var(--iox-accent-text)"
914
1093
  },
1094
+ {
1095
+ "name": "link-underline-rest",
1096
+ "type": "number",
1097
+ "default": "1"
1098
+ },
1099
+ {
1100
+ "name": "link-underline-thickness",
1101
+ "type": "size",
1102
+ "default": "max(1px, 0.06em)"
1103
+ },
1104
+ {
1105
+ "name": "link-underline-offset",
1106
+ "type": "size",
1107
+ "default": "0.12em"
1108
+ },
1109
+ {
1110
+ "name": "link-current-underline",
1111
+ "type": "color",
1112
+ "default": "var(--iox-accent-text)"
1113
+ },
1114
+ {
1115
+ "name": "link-current-underline-thickness",
1116
+ "type": "size",
1117
+ "default": "2px"
1118
+ },
915
1119
  {
916
1120
  "name": "tabbar-bg",
917
1121
  "type": "color",
@@ -1231,6 +1435,11 @@ const SPEC_TIERS = {
1231
1435
  "name": "video-play-size",
1232
1436
  "type": "size",
1233
1437
  "default": "64px"
1438
+ },
1439
+ {
1440
+ "name": "slider-ease",
1441
+ "type": "easing",
1442
+ "default": "var(--iox-ease-standard)"
1234
1443
  }
1235
1444
  ]
1236
1445
  };
@@ -1325,7 +1534,18 @@ const SPEC_AXES = {
1325
1534
  "ease-spring": "linear",
1326
1535
  "dur-spring": "0ms",
1327
1536
  "hover-lift": "0px",
1328
- "press-scale": "1"
1537
+ "press-scale": "1",
1538
+ "dur-hover": "0ms",
1539
+ "dur-press": "0ms",
1540
+ "dur-ui": "0ms",
1541
+ "tooltip-dur-in": "0ms",
1542
+ "tooltip-dur-out": "0ms",
1543
+ "popover-dur-in": "0ms",
1544
+ "popover-dur-out": "0ms",
1545
+ "sheet-dur-in": "0ms",
1546
+ "sheet-dur-out": "0ms",
1547
+ "toast-dur-in": "0ms",
1548
+ "toast-dur-out": "0ms"
1329
1549
  },
1330
1550
  "snappy": {
1331
1551
  "label": "Snappy",
@@ -1336,7 +1556,18 @@ const SPEC_AXES = {
1336
1556
  "ease-spring": "cubic-bezier(0.2, 0, 0, 1)",
1337
1557
  "dur-spring": "140ms",
1338
1558
  "hover-lift": "-2px",
1339
- "press-scale": "0.97"
1559
+ "press-scale": "0.97",
1560
+ "dur-hover": "80ms",
1561
+ "dur-press": "60ms",
1562
+ "dur-ui": "140ms",
1563
+ "tooltip-dur-in": "100ms",
1564
+ "tooltip-dur-out": "70ms",
1565
+ "popover-dur-in": "160ms",
1566
+ "popover-dur-out": "110ms",
1567
+ "sheet-dur-in": "400ms",
1568
+ "sheet-dur-out": "240ms",
1569
+ "toast-dur-in": "320ms",
1570
+ "toast-dur-out": "180ms"
1340
1571
  },
1341
1572
  "standard": {
1342
1573
  "label": "Standard",
@@ -1347,7 +1578,18 @@ const SPEC_AXES = {
1347
1578
  "ease-spring": "cubic-bezier(0.2, 0, 0, 1)",
1348
1579
  "dur-spring": "200ms",
1349
1580
  "hover-lift": "-2px",
1350
- "press-scale": "0.98"
1581
+ "press-scale": "0.98",
1582
+ "dur-hover": "120ms",
1583
+ "dur-press": "90ms",
1584
+ "dur-ui": "200ms",
1585
+ "tooltip-dur-in": "125ms",
1586
+ "tooltip-dur-out": "80ms",
1587
+ "popover-dur-in": "200ms",
1588
+ "popover-dur-out": "140ms",
1589
+ "sheet-dur-in": "500ms",
1590
+ "sheet-dur-out": "280ms",
1591
+ "toast-dur-in": "400ms",
1592
+ "toast-dur-out": "220ms"
1351
1593
  },
1352
1594
  "calm": {
1353
1595
  "label": "Calm",
@@ -1358,7 +1600,18 @@ const SPEC_AXES = {
1358
1600
  "ease-spring": "cubic-bezier(0.33, 0, 0.1, 1)",
1359
1601
  "dur-spring": "400ms",
1360
1602
  "hover-lift": "0px",
1361
- "press-scale": "0.98"
1603
+ "press-scale": "0.98",
1604
+ "dur-hover": "150ms",
1605
+ "dur-press": "120ms",
1606
+ "dur-ui": "300ms",
1607
+ "tooltip-dur-in": "160ms",
1608
+ "tooltip-dur-out": "110ms",
1609
+ "popover-dur-in": "260ms",
1610
+ "popover-dur-out": "180ms",
1611
+ "sheet-dur-in": "600ms",
1612
+ "sheet-dur-out": "340ms",
1613
+ "toast-dur-in": "480ms",
1614
+ "toast-dur-out": "280ms"
1362
1615
  },
1363
1616
  "lively": {
1364
1617
  "label": "Lively",
@@ -1369,12 +1622,24 @@ const SPEC_AXES = {
1369
1622
  "ease-spring": "linear(0, 0.018, 0.0651, 0.132, 0.2115, 0.2974, 0.3852, 0.4714, 0.5535, 0.6296, 0.6987, 0.7603, 0.8142, 0.8605, 0.8996, 0.9321, 0.9585, 0.9794, 0.9957, 1.0079, 1.0167, 1.0226, 1.0262, 1.028, 1.0284, 1.0276, 1.0262, 1.0242, 1.0219, 1.0194, 1.0169, 1.0145, 1.0122, 1.0101, 1.0082, 1.0065, 1.005, 1.0037, 1.0026, 1.0018, 1)",
1370
1623
  "dur-spring": "470ms",
1371
1624
  "hover-lift": "-3px",
1372
- "press-scale": "0.97"
1625
+ "press-scale": "0.97",
1626
+ "dur-hover": "150ms",
1627
+ "dur-press": "100ms",
1628
+ "dur-ui": "280ms",
1629
+ "tooltip-dur-in": "140ms",
1630
+ "tooltip-dur-out": "90ms",
1631
+ "popover-dur-in": "220ms",
1632
+ "popover-dur-out": "150ms",
1633
+ "sheet-dur-in": "500ms",
1634
+ "sheet-dur-out": "280ms",
1635
+ "toast-dur-in": "400ms",
1636
+ "toast-dur-out": "220ms"
1373
1637
  }
1374
1638
  },
1375
1639
  "motionCommon": {
1376
1640
  "ease-enter": "cubic-bezier(0.05, 0.7, 0.1, 1)",
1377
- "ease-exit": "cubic-bezier(0.3, 0, 0.8, 0.15)"
1641
+ "ease-exit": "cubic-bezier(0.3, 0, 0.8, 0.15)",
1642
+ "ease-hover": "ease"
1378
1643
  },
1379
1644
  "modes": [
1380
1645
  "light",
@@ -2591,6 +2856,7 @@ const SPEC_A11Y = {
2591
2856
  "dur-slow": "0ms",
2592
2857
  "dur-spring": "0ms",
2593
2858
  "ease-spring": "linear",
2859
+ "dur-press": "0ms",
2594
2860
  "hover-lift": "0px",
2595
2861
  "press-scale": "1",
2596
2862
  "card-hover-x": "0px",
@@ -3278,6 +3544,54 @@ const SPEC_ELEMENT_STYLES = [
3278
3544
  "borderColor": "var(--iox-dialog-border)"
3279
3545
  }
3280
3546
  },
3547
+ {
3548
+ "id": "popover",
3549
+ "label": "Popover",
3550
+ "group": "Overlays",
3551
+ "appliesTo": [
3552
+ "Popover"
3553
+ ],
3554
+ "base": {
3555
+ "backgroundColor": "var(--iox-popover-bg)",
3556
+ "color": "var(--iox-text)",
3557
+ "borderRadius": "var(--iox-popover-radius)",
3558
+ "boxShadow": "var(--iox-popover-shadow)",
3559
+ "padding": "var(--iox-popover-pad)",
3560
+ "borderWidth": "var(--iox-popover-border-width)",
3561
+ "borderStyle": "solid",
3562
+ "borderColor": "var(--iox-popover-border)"
3563
+ }
3564
+ },
3565
+ {
3566
+ "id": "tooltip",
3567
+ "label": "Tooltip",
3568
+ "group": "Floating",
3569
+ "appliesTo": [],
3570
+ "base": {
3571
+ "backgroundColor": "var(--iox-tooltip-bg)",
3572
+ "color": "var(--iox-tooltip-ink)",
3573
+ "borderRadius": "var(--iox-tooltip-radius)",
3574
+ "boxShadow": "var(--iox-tooltip-shadow)",
3575
+ "fontFamily": "var(--iox-font-body)",
3576
+ "fontSize": "var(--iox-tooltip-size)",
3577
+ "fontWeight": "var(--iox-weight-strong)"
3578
+ }
3579
+ },
3580
+ {
3581
+ "id": "toast",
3582
+ "label": "Toast",
3583
+ "group": "Floating",
3584
+ "appliesTo": [],
3585
+ "base": {
3586
+ "backgroundColor": "var(--iox-toast-bg)",
3587
+ "color": "var(--iox-toast-ink)",
3588
+ "borderRadius": "var(--iox-toast-radius)",
3589
+ "boxShadow": "var(--iox-toast-shadow)",
3590
+ "fontFamily": "var(--iox-font-body)",
3591
+ "fontSize": "var(--iox-size-body)",
3592
+ "fontWeight": "var(--iox-weight-strong)"
3593
+ }
3594
+ },
3281
3595
  {
3282
3596
  "id": "form",
3283
3597
  "label": "Form",
@@ -3538,6 +3852,7 @@ const SPEC_DEFAULT_ELEMENT_STYLE = {
3538
3852
  "Divider": "rule",
3539
3853
  "Icon": "icon",
3540
3854
  "Dialog": "dialog",
3855
+ "Popover": "popover",
3541
3856
  "Form": "form",
3542
3857
  "Field": "field",
3543
3858
  "FormSuccess": "notice-success",
@@ -3758,10 +4073,11 @@ const SPEC_FIELD_CLASS_BASELINE = {
3758
4073
  "font-family": "var(--iox-font-label)",
3759
4074
  "font-size": "var(--iox-badge-size)",
3760
4075
  "font-weight": "var(--iox-weight-label)",
3761
- "transition": "border-color var(--iox-dur-fast) var(--iox-ease-standard), background-color var(--iox-dur-fast) var(--iox-ease-standard), color var(--iox-dur-fast) var(--iox-ease-standard), box-shadow var(--iox-dur-fast) var(--iox-ease-standard), opacity var(--iox-dur-fast) var(--iox-ease-standard), transform var(--iox-dur-fast) var(--iox-ease-standard)"
4076
+ "transition": "border-color var(--iox-dur-hover) var(--iox-ease-hover), background-color var(--iox-dur-hover) var(--iox-ease-hover), color var(--iox-dur-hover) var(--iox-ease-hover), box-shadow var(--iox-dur-hover) var(--iox-ease-hover), opacity var(--iox-dur-hover) var(--iox-ease-hover), transform var(--iox-dur-fast) var(--iox-ease-standard)"
3762
4077
  },
3763
4078
  ".iox-es-field .iox-field__chip:active:not(:has(:disabled))": {
3764
- "transform": "scale(var(--iox-press-scale))"
4079
+ "transform": "scale(var(--iox-press-scale))",
4080
+ "transition-duration": "var(--iox-dur-press)"
3765
4081
  },
3766
4082
  ".iox-es-field .iox-field__chip:hover:not(:has(:disabled))": {
3767
4083
  "border-color": "var(--iox-text)"
@@ -3831,7 +4147,8 @@ const SPEC_FIELD_CLASS_BASELINE = {
3831
4147
  "transition": "background-color var(--iox-dur-fast) var(--iox-ease-standard), color var(--iox-dur-fast) var(--iox-ease-standard), border-color var(--iox-dur-fast) var(--iox-ease-standard), box-shadow var(--iox-dur-fast) var(--iox-ease-standard), opacity var(--iox-dur-fast) var(--iox-ease-standard), transform var(--iox-dur-fast) var(--iox-ease-standard)"
3832
4148
  },
3833
4149
  ".iox-es-field .iox-cal .iox-cal__day:active:not([aria-disabled='true'])": {
3834
- "transform": "scale(var(--iox-press-scale))"
4150
+ "transform": "scale(var(--iox-press-scale))",
4151
+ "transition-duration": "var(--iox-dur-press)"
3835
4152
  },
3836
4153
  ".iox-es-field .iox-cal .iox-cal__day:hover:not([aria-disabled='true'])": {
3837
4154
  "background-color": "var(--iox-surface-2)"
@@ -3854,6 +4171,26 @@ const SPEC_FIELD_CLASS_BASELINE = {
3854
4171
  "outline-offset": "2px"
3855
4172
  }
3856
4173
  };
4174
+ const SPEC_FLOATING_BASELINE = {
4175
+ ".iox-es-tooltip": {
4176
+ "background-color": "var(--iox-tooltip-bg)",
4177
+ "color": "var(--iox-tooltip-ink)",
4178
+ "border-radius": "var(--iox-tooltip-radius)",
4179
+ "box-shadow": "var(--iox-tooltip-shadow)",
4180
+ "font-family": "var(--iox-font-body)",
4181
+ "font-size": "var(--iox-tooltip-size)",
4182
+ "font-weight": "var(--iox-weight-strong)"
4183
+ },
4184
+ ".iox-es-toast": {
4185
+ "background-color": "var(--iox-toast-bg)",
4186
+ "color": "var(--iox-toast-ink)",
4187
+ "border-radius": "var(--iox-toast-radius)",
4188
+ "box-shadow": "var(--iox-toast-shadow)",
4189
+ "font-family": "var(--iox-font-body)",
4190
+ "font-size": "var(--iox-size-body)",
4191
+ "font-weight": "var(--iox-weight-strong)"
4192
+ }
4193
+ };
3857
4194
  const SPEC_INK_SCOPES = [
3858
4195
  {
3859
4196
  "styles": [
@@ -4966,6 +5303,34 @@ const SPEC_FLAVOR_PACKS = [
4966
5303
  "group": "motion",
4967
5304
  "value": "0.98"
4968
5305
  },
5306
+ {
5307
+ "name": "dur-hover",
5308
+ "tier": "semantic",
5309
+ "type": "duration",
5310
+ "group": "motion",
5311
+ "value": "120ms"
5312
+ },
5313
+ {
5314
+ "name": "ease-hover",
5315
+ "tier": "semantic",
5316
+ "type": "easing",
5317
+ "group": "motion",
5318
+ "value": "ease"
5319
+ },
5320
+ {
5321
+ "name": "dur-press",
5322
+ "tier": "semantic",
5323
+ "type": "duration",
5324
+ "group": "motion",
5325
+ "value": "90ms"
5326
+ },
5327
+ {
5328
+ "name": "dur-ui",
5329
+ "tier": "semantic",
5330
+ "type": "duration",
5331
+ "group": "motion",
5332
+ "value": "200ms"
5333
+ },
4969
5334
  {
4970
5335
  "name": "button-font",
4971
5336
  "tier": "component",
@@ -5281,6 +5646,13 @@ const SPEC_FLAVOR_PACKS = [
5281
5646
  "group": "components",
5282
5647
  "value": "none"
5283
5648
  },
5649
+ {
5650
+ "name": "card-shadow-raise",
5651
+ "tier": "component",
5652
+ "type": "shadow",
5653
+ "group": "components",
5654
+ "value": "var(--iox-card-shadow-hover)"
5655
+ },
5284
5656
  {
5285
5657
  "name": "panel-bg",
5286
5658
  "tier": "component",
@@ -5464,81 +5836,326 @@ const SPEC_FLAVOR_PACKS = [
5464
5836
  "value": "0px"
5465
5837
  },
5466
5838
  {
5467
- "name": "image-radius",
5839
+ "name": "tooltip-bg",
5840
+ "tier": "component",
5841
+ "type": "color",
5842
+ "group": "components",
5843
+ "value": "var(--iox-text)"
5844
+ },
5845
+ {
5846
+ "name": "tooltip-ink",
5847
+ "tier": "component",
5848
+ "type": "color",
5849
+ "group": "components",
5850
+ "value": "var(--iox-bg)"
5851
+ },
5852
+ {
5853
+ "name": "tooltip-radius",
5468
5854
  "tier": "component",
5469
5855
  "type": "radius",
5470
5856
  "group": "components",
5471
- "value": "var(--iox-radius-md)"
5857
+ "value": "var(--iox-radius-xs)"
5472
5858
  },
5473
5859
  {
5474
- "name": "image-hover-scale",
5860
+ "name": "tooltip-shadow",
5475
5861
  "tier": "component",
5476
- "type": "number",
5862
+ "type": "shadow",
5477
5863
  "group": "components",
5478
- "value": "1"
5864
+ "value": "var(--iox-shadow-md)"
5479
5865
  },
5480
5866
  {
5481
- "name": "link-color",
5867
+ "name": "tooltip-size",
5482
5868
  "tier": "component",
5483
- "type": "color",
5869
+ "type": "size",
5484
5870
  "group": "components",
5485
- "value": "var(--iox-accent-text)"
5871
+ "value": "var(--iox-size-small)"
5486
5872
  },
5487
5873
  {
5488
- "name": "link-hover-color",
5874
+ "name": "tooltip-scale",
5489
5875
  "tier": "component",
5490
- "type": "color",
5876
+ "type": "number",
5491
5877
  "group": "components",
5492
- "value": "var(--iox-text)"
5878
+ "value": "0.97"
5493
5879
  },
5494
5880
  {
5495
- "name": "link-decoration",
5881
+ "name": "tooltip-ease",
5496
5882
  "tier": "component",
5497
- "type": "keyword",
5883
+ "type": "easing",
5498
5884
  "group": "components",
5499
- "value": "underline"
5885
+ "value": "var(--iox-ease-enter)"
5500
5886
  },
5501
5887
  {
5502
- "name": "link-current-color",
5888
+ "name": "tooltip-dur-in",
5503
5889
  "tier": "component",
5504
- "type": "color",
5890
+ "type": "duration",
5505
5891
  "group": "components",
5506
- "value": "var(--iox-text)"
5892
+ "value": "125ms"
5507
5893
  },
5508
5894
  {
5509
- "name": "link-current-decoration",
5895
+ "name": "tooltip-dur-out",
5510
5896
  "tier": "component",
5511
- "type": "keyword",
5897
+ "type": "duration",
5512
5898
  "group": "components",
5513
- "value": "underline 2px var(--iox-accent-text)"
5899
+ "value": "80ms"
5514
5900
  },
5515
5901
  {
5516
- "name": "tabbar-bg",
5902
+ "name": "popover-bg",
5517
5903
  "tier": "component",
5518
5904
  "type": "color",
5519
5905
  "group": "components",
5520
- "value": "var(--iox-nav-bg)"
5906
+ "value": "var(--iox-surface)"
5521
5907
  },
5522
5908
  {
5523
- "name": "tabbar-border",
5909
+ "name": "popover-border",
5524
5910
  "tier": "component",
5525
5911
  "type": "color",
5526
5912
  "group": "components",
5527
- "value": "var(--iox-nav-border)"
5913
+ "value": "var(--iox-line)"
5528
5914
  },
5529
5915
  {
5530
- "name": "tabbar-border-width",
5916
+ "name": "popover-border-width",
5531
5917
  "tier": "component",
5532
5918
  "type": "size",
5533
5919
  "group": "components",
5534
- "value": "var(--iox-border-width) 0px 0px 0px"
5920
+ "value": "var(--iox-border-width)"
5535
5921
  },
5536
5922
  {
5537
- "name": "tabbar-radius",
5923
+ "name": "popover-radius",
5538
5924
  "tier": "component",
5539
5925
  "type": "radius",
5540
5926
  "group": "components",
5541
- "value": "0px"
5927
+ "value": "var(--iox-radius-lg)"
5928
+ },
5929
+ {
5930
+ "name": "popover-shadow",
5931
+ "tier": "component",
5932
+ "type": "shadow",
5933
+ "group": "components",
5934
+ "value": "var(--iox-shadow-lg)"
5935
+ },
5936
+ {
5937
+ "name": "popover-pad",
5938
+ "tier": "component",
5939
+ "type": "spacing",
5940
+ "group": "components",
5941
+ "value": "var(--iox-space-pad)"
5942
+ },
5943
+ {
5944
+ "name": "popover-scale",
5945
+ "tier": "component",
5946
+ "type": "number",
5947
+ "group": "components",
5948
+ "value": "0.95"
5949
+ },
5950
+ {
5951
+ "name": "popover-ease",
5952
+ "tier": "component",
5953
+ "type": "easing",
5954
+ "group": "components",
5955
+ "value": "var(--iox-ease-enter)"
5956
+ },
5957
+ {
5958
+ "name": "popover-dur-in",
5959
+ "tier": "component",
5960
+ "type": "duration",
5961
+ "group": "components",
5962
+ "value": "200ms"
5963
+ },
5964
+ {
5965
+ "name": "popover-dur-out",
5966
+ "tier": "component",
5967
+ "type": "duration",
5968
+ "group": "components",
5969
+ "value": "140ms"
5970
+ },
5971
+ {
5972
+ "name": "sheet-ease",
5973
+ "tier": "component",
5974
+ "type": "easing",
5975
+ "group": "components",
5976
+ "value": "cubic-bezier(0.32, 0.72, 0, 1)"
5977
+ },
5978
+ {
5979
+ "name": "sheet-dur-in",
5980
+ "tier": "component",
5981
+ "type": "duration",
5982
+ "group": "components",
5983
+ "value": "500ms"
5984
+ },
5985
+ {
5986
+ "name": "sheet-dur-out",
5987
+ "tier": "component",
5988
+ "type": "duration",
5989
+ "group": "components",
5990
+ "value": "280ms"
5991
+ },
5992
+ {
5993
+ "name": "toast-bg",
5994
+ "tier": "component",
5995
+ "type": "color",
5996
+ "group": "components",
5997
+ "value": "var(--iox-text)"
5998
+ },
5999
+ {
6000
+ "name": "toast-ink",
6001
+ "tier": "component",
6002
+ "type": "color",
6003
+ "group": "components",
6004
+ "value": "var(--iox-bg)"
6005
+ },
6006
+ {
6007
+ "name": "toast-radius",
6008
+ "tier": "component",
6009
+ "type": "radius",
6010
+ "group": "components",
6011
+ "value": "var(--iox-radius-md)"
6012
+ },
6013
+ {
6014
+ "name": "toast-shadow",
6015
+ "tier": "component",
6016
+ "type": "shadow",
6017
+ "group": "components",
6018
+ "value": "var(--iox-shadow-lg)"
6019
+ },
6020
+ {
6021
+ "name": "toast-ease",
6022
+ "tier": "component",
6023
+ "type": "easing",
6024
+ "group": "components",
6025
+ "value": "ease"
6026
+ },
6027
+ {
6028
+ "name": "toast-dur-in",
6029
+ "tier": "component",
6030
+ "type": "duration",
6031
+ "group": "components",
6032
+ "value": "400ms"
6033
+ },
6034
+ {
6035
+ "name": "toast-dur-out",
6036
+ "tier": "component",
6037
+ "type": "duration",
6038
+ "group": "components",
6039
+ "value": "220ms"
6040
+ },
6041
+ {
6042
+ "name": "dialog-edge",
6043
+ "tier": "component",
6044
+ "type": "color",
6045
+ "group": "components",
6046
+ "value": "var(--iox-line)"
6047
+ },
6048
+ {
6049
+ "name": "image-radius",
6050
+ "tier": "component",
6051
+ "type": "radius",
6052
+ "group": "components",
6053
+ "value": "var(--iox-radius-md)"
6054
+ },
6055
+ {
6056
+ "name": "image-hover-scale",
6057
+ "tier": "component",
6058
+ "type": "number",
6059
+ "group": "components",
6060
+ "value": "1"
6061
+ },
6062
+ {
6063
+ "name": "link-color",
6064
+ "tier": "component",
6065
+ "type": "color",
6066
+ "group": "components",
6067
+ "value": "var(--iox-accent-text)"
6068
+ },
6069
+ {
6070
+ "name": "link-hover-color",
6071
+ "tier": "component",
6072
+ "type": "color",
6073
+ "group": "components",
6074
+ "value": "var(--iox-text)"
6075
+ },
6076
+ {
6077
+ "name": "link-decoration",
6078
+ "tier": "component",
6079
+ "type": "keyword",
6080
+ "group": "components",
6081
+ "value": "underline"
6082
+ },
6083
+ {
6084
+ "name": "link-current-color",
6085
+ "tier": "component",
6086
+ "type": "color",
6087
+ "group": "components",
6088
+ "value": "var(--iox-text)"
6089
+ },
6090
+ {
6091
+ "name": "link-current-decoration",
6092
+ "tier": "component",
6093
+ "type": "keyword",
6094
+ "group": "components",
6095
+ "value": "underline 2px var(--iox-accent-text)"
6096
+ },
6097
+ {
6098
+ "name": "link-underline-rest",
6099
+ "tier": "component",
6100
+ "type": "number",
6101
+ "group": "components",
6102
+ "value": "1"
6103
+ },
6104
+ {
6105
+ "name": "link-underline-thickness",
6106
+ "tier": "component",
6107
+ "type": "size",
6108
+ "group": "components",
6109
+ "value": "max(1px, 0.06em)"
6110
+ },
6111
+ {
6112
+ "name": "link-underline-offset",
6113
+ "tier": "component",
6114
+ "type": "size",
6115
+ "group": "components",
6116
+ "value": "0.12em"
6117
+ },
6118
+ {
6119
+ "name": "link-current-underline",
6120
+ "tier": "component",
6121
+ "type": "color",
6122
+ "group": "components",
6123
+ "value": "var(--iox-accent-text)"
6124
+ },
6125
+ {
6126
+ "name": "link-current-underline-thickness",
6127
+ "tier": "component",
6128
+ "type": "size",
6129
+ "group": "components",
6130
+ "value": "2px"
6131
+ },
6132
+ {
6133
+ "name": "tabbar-bg",
6134
+ "tier": "component",
6135
+ "type": "color",
6136
+ "group": "components",
6137
+ "value": "var(--iox-nav-bg)"
6138
+ },
6139
+ {
6140
+ "name": "tabbar-border",
6141
+ "tier": "component",
6142
+ "type": "color",
6143
+ "group": "components",
6144
+ "value": "var(--iox-nav-border)"
6145
+ },
6146
+ {
6147
+ "name": "tabbar-border-width",
6148
+ "tier": "component",
6149
+ "type": "size",
6150
+ "group": "components",
6151
+ "value": "var(--iox-border-width) 0px 0px 0px"
6152
+ },
6153
+ {
6154
+ "name": "tabbar-radius",
6155
+ "tier": "component",
6156
+ "type": "radius",
6157
+ "group": "components",
6158
+ "value": "0px"
5542
6159
  },
5543
6160
  {
5544
6161
  "name": "tabbar-shadow",
@@ -5959,6 +6576,13 @@ const SPEC_FLAVOR_PACKS = [
5959
6576
  "type": "size",
5960
6577
  "group": "components",
5961
6578
  "value": "64px"
6579
+ },
6580
+ {
6581
+ "name": "slider-ease",
6582
+ "tier": "component",
6583
+ "type": "easing",
6584
+ "group": "components",
6585
+ "value": "var(--iox-ease-standard)"
5962
6586
  }
5963
6587
  ]
5964
6588
  },
@@ -6753,6 +7377,34 @@ const SPEC_FLAVOR_PACKS = [
6753
7377
  "group": "motion",
6754
7378
  "value": "0.98"
6755
7379
  },
7380
+ {
7381
+ "name": "dur-hover",
7382
+ "tier": "semantic",
7383
+ "type": "duration",
7384
+ "group": "motion",
7385
+ "value": "150ms"
7386
+ },
7387
+ {
7388
+ "name": "ease-hover",
7389
+ "tier": "semantic",
7390
+ "type": "easing",
7391
+ "group": "motion",
7392
+ "value": "ease"
7393
+ },
7394
+ {
7395
+ "name": "dur-press",
7396
+ "tier": "semantic",
7397
+ "type": "duration",
7398
+ "group": "motion",
7399
+ "value": "120ms"
7400
+ },
7401
+ {
7402
+ "name": "dur-ui",
7403
+ "tier": "semantic",
7404
+ "type": "duration",
7405
+ "group": "motion",
7406
+ "value": "300ms"
7407
+ },
6756
7408
  {
6757
7409
  "name": "button-font",
6758
7410
  "tier": "component",
@@ -7083,6 +7735,13 @@ const SPEC_FLAVOR_PACKS = [
7083
7735
  "group": "components",
7084
7736
  "value": "none"
7085
7737
  },
7738
+ {
7739
+ "name": "card-shadow-raise",
7740
+ "tier": "component",
7741
+ "type": "shadow",
7742
+ "group": "components",
7743
+ "value": "var(--iox-card-shadow-hover)"
7744
+ },
7086
7745
  {
7087
7746
  "name": "panel-bg",
7088
7747
  "tier": "component",
@@ -7268,6 +7927,216 @@ const SPEC_FLAVOR_PACKS = [
7268
7927
  "group": "components",
7269
7928
  "value": "0px"
7270
7929
  },
7930
+ {
7931
+ "name": "tooltip-bg",
7932
+ "tier": "component",
7933
+ "type": "color",
7934
+ "group": "components",
7935
+ "value": "var(--iox-text)"
7936
+ },
7937
+ {
7938
+ "name": "tooltip-ink",
7939
+ "tier": "component",
7940
+ "type": "color",
7941
+ "group": "components",
7942
+ "value": "var(--iox-bg)"
7943
+ },
7944
+ {
7945
+ "name": "tooltip-radius",
7946
+ "tier": "component",
7947
+ "type": "radius",
7948
+ "group": "components",
7949
+ "value": "var(--iox-radius-xs)"
7950
+ },
7951
+ {
7952
+ "name": "tooltip-shadow",
7953
+ "tier": "component",
7954
+ "type": "shadow",
7955
+ "group": "components",
7956
+ "value": "var(--iox-shadow-md)"
7957
+ },
7958
+ {
7959
+ "name": "tooltip-size",
7960
+ "tier": "component",
7961
+ "type": "size",
7962
+ "group": "components",
7963
+ "value": "var(--iox-size-small)"
7964
+ },
7965
+ {
7966
+ "name": "tooltip-scale",
7967
+ "tier": "component",
7968
+ "type": "number",
7969
+ "group": "components",
7970
+ "value": "0.97"
7971
+ },
7972
+ {
7973
+ "name": "tooltip-ease",
7974
+ "tier": "component",
7975
+ "type": "easing",
7976
+ "group": "components",
7977
+ "value": "var(--iox-ease-enter)"
7978
+ },
7979
+ {
7980
+ "name": "tooltip-dur-in",
7981
+ "tier": "component",
7982
+ "type": "duration",
7983
+ "group": "components",
7984
+ "value": "160ms"
7985
+ },
7986
+ {
7987
+ "name": "tooltip-dur-out",
7988
+ "tier": "component",
7989
+ "type": "duration",
7990
+ "group": "components",
7991
+ "value": "110ms"
7992
+ },
7993
+ {
7994
+ "name": "popover-bg",
7995
+ "tier": "component",
7996
+ "type": "color",
7997
+ "group": "components",
7998
+ "value": "var(--iox-surface)"
7999
+ },
8000
+ {
8001
+ "name": "popover-border",
8002
+ "tier": "component",
8003
+ "type": "color",
8004
+ "group": "components",
8005
+ "value": "var(--iox-line)"
8006
+ },
8007
+ {
8008
+ "name": "popover-border-width",
8009
+ "tier": "component",
8010
+ "type": "size",
8011
+ "group": "components",
8012
+ "value": "var(--iox-border-width)"
8013
+ },
8014
+ {
8015
+ "name": "popover-radius",
8016
+ "tier": "component",
8017
+ "type": "radius",
8018
+ "group": "components",
8019
+ "value": "var(--iox-radius-lg)"
8020
+ },
8021
+ {
8022
+ "name": "popover-shadow",
8023
+ "tier": "component",
8024
+ "type": "shadow",
8025
+ "group": "components",
8026
+ "value": "var(--iox-shadow-lg)"
8027
+ },
8028
+ {
8029
+ "name": "popover-pad",
8030
+ "tier": "component",
8031
+ "type": "spacing",
8032
+ "group": "components",
8033
+ "value": "var(--iox-space-pad)"
8034
+ },
8035
+ {
8036
+ "name": "popover-scale",
8037
+ "tier": "component",
8038
+ "type": "number",
8039
+ "group": "components",
8040
+ "value": "0.95"
8041
+ },
8042
+ {
8043
+ "name": "popover-ease",
8044
+ "tier": "component",
8045
+ "type": "easing",
8046
+ "group": "components",
8047
+ "value": "var(--iox-ease-enter)"
8048
+ },
8049
+ {
8050
+ "name": "popover-dur-in",
8051
+ "tier": "component",
8052
+ "type": "duration",
8053
+ "group": "components",
8054
+ "value": "260ms"
8055
+ },
8056
+ {
8057
+ "name": "popover-dur-out",
8058
+ "tier": "component",
8059
+ "type": "duration",
8060
+ "group": "components",
8061
+ "value": "180ms"
8062
+ },
8063
+ {
8064
+ "name": "sheet-ease",
8065
+ "tier": "component",
8066
+ "type": "easing",
8067
+ "group": "components",
8068
+ "value": "cubic-bezier(0.32, 0.72, 0, 1)"
8069
+ },
8070
+ {
8071
+ "name": "sheet-dur-in",
8072
+ "tier": "component",
8073
+ "type": "duration",
8074
+ "group": "components",
8075
+ "value": "600ms"
8076
+ },
8077
+ {
8078
+ "name": "sheet-dur-out",
8079
+ "tier": "component",
8080
+ "type": "duration",
8081
+ "group": "components",
8082
+ "value": "340ms"
8083
+ },
8084
+ {
8085
+ "name": "toast-bg",
8086
+ "tier": "component",
8087
+ "type": "color",
8088
+ "group": "components",
8089
+ "value": "var(--iox-text)"
8090
+ },
8091
+ {
8092
+ "name": "toast-ink",
8093
+ "tier": "component",
8094
+ "type": "color",
8095
+ "group": "components",
8096
+ "value": "var(--iox-bg)"
8097
+ },
8098
+ {
8099
+ "name": "toast-radius",
8100
+ "tier": "component",
8101
+ "type": "radius",
8102
+ "group": "components",
8103
+ "value": "var(--iox-radius-md)"
8104
+ },
8105
+ {
8106
+ "name": "toast-shadow",
8107
+ "tier": "component",
8108
+ "type": "shadow",
8109
+ "group": "components",
8110
+ "value": "var(--iox-shadow-lg)"
8111
+ },
8112
+ {
8113
+ "name": "toast-ease",
8114
+ "tier": "component",
8115
+ "type": "easing",
8116
+ "group": "components",
8117
+ "value": "ease"
8118
+ },
8119
+ {
8120
+ "name": "toast-dur-in",
8121
+ "tier": "component",
8122
+ "type": "duration",
8123
+ "group": "components",
8124
+ "value": "480ms"
8125
+ },
8126
+ {
8127
+ "name": "toast-dur-out",
8128
+ "tier": "component",
8129
+ "type": "duration",
8130
+ "group": "components",
8131
+ "value": "280ms"
8132
+ },
8133
+ {
8134
+ "name": "dialog-edge",
8135
+ "tier": "component",
8136
+ "type": "color",
8137
+ "group": "components",
8138
+ "value": "var(--iox-line)"
8139
+ },
7271
8140
  {
7272
8141
  "name": "image-radius",
7273
8142
  "tier": "component",
@@ -7292,33 +8161,68 @@ const SPEC_FLAVOR_PACKS = [
7292
8161
  "overridden": true
7293
8162
  },
7294
8163
  {
7295
- "name": "link-hover-color",
8164
+ "name": "link-hover-color",
8165
+ "tier": "component",
8166
+ "type": "color",
8167
+ "group": "components",
8168
+ "value": "var(--iox-accent-text)",
8169
+ "overridden": true
8170
+ },
8171
+ {
8172
+ "name": "link-decoration",
8173
+ "tier": "component",
8174
+ "type": "keyword",
8175
+ "group": "components",
8176
+ "value": "underline"
8177
+ },
8178
+ {
8179
+ "name": "link-current-color",
8180
+ "tier": "component",
8181
+ "type": "color",
8182
+ "group": "components",
8183
+ "value": "var(--iox-text)"
8184
+ },
8185
+ {
8186
+ "name": "link-current-decoration",
8187
+ "tier": "component",
8188
+ "type": "keyword",
8189
+ "group": "components",
8190
+ "value": "underline 2px var(--iox-accent-text)"
8191
+ },
8192
+ {
8193
+ "name": "link-underline-rest",
8194
+ "tier": "component",
8195
+ "type": "number",
8196
+ "group": "components",
8197
+ "value": "1"
8198
+ },
8199
+ {
8200
+ "name": "link-underline-thickness",
7296
8201
  "tier": "component",
7297
- "type": "color",
8202
+ "type": "size",
7298
8203
  "group": "components",
7299
- "value": "var(--iox-accent-text)",
7300
- "overridden": true
8204
+ "value": "max(1px, 0.06em)"
7301
8205
  },
7302
8206
  {
7303
- "name": "link-decoration",
8207
+ "name": "link-underline-offset",
7304
8208
  "tier": "component",
7305
- "type": "keyword",
8209
+ "type": "size",
7306
8210
  "group": "components",
7307
- "value": "underline"
8211
+ "value": "0.12em"
7308
8212
  },
7309
8213
  {
7310
- "name": "link-current-color",
8214
+ "name": "link-current-underline",
7311
8215
  "tier": "component",
7312
8216
  "type": "color",
7313
8217
  "group": "components",
7314
- "value": "var(--iox-text)"
8218
+ "value": "var(--iox-accent-text)"
7315
8219
  },
7316
8220
  {
7317
- "name": "link-current-decoration",
8221
+ "name": "link-current-underline-thickness",
7318
8222
  "tier": "component",
7319
- "type": "keyword",
8223
+ "type": "size",
7320
8224
  "group": "components",
7321
- "value": "underline 2px var(--iox-accent-text)"
8225
+ "value": "2px"
7322
8226
  },
7323
8227
  {
7324
8228
  "name": "tabbar-bg",
@@ -7773,6 +8677,13 @@ const SPEC_FLAVOR_PACKS = [
7773
8677
  "type": "size",
7774
8678
  "group": "components",
7775
8679
  "value": "64px"
8680
+ },
8681
+ {
8682
+ "name": "slider-ease",
8683
+ "tier": "component",
8684
+ "type": "easing",
8685
+ "group": "components",
8686
+ "value": "var(--iox-ease-standard)"
7776
8687
  }
7777
8688
  ]
7778
8689
  },
@@ -8572,6 +9483,34 @@ const SPEC_FLAVOR_PACKS = [
8572
9483
  "group": "motion",
8573
9484
  "value": "0.98"
8574
9485
  },
9486
+ {
9487
+ "name": "dur-hover",
9488
+ "tier": "semantic",
9489
+ "type": "duration",
9490
+ "group": "motion",
9491
+ "value": "120ms"
9492
+ },
9493
+ {
9494
+ "name": "ease-hover",
9495
+ "tier": "semantic",
9496
+ "type": "easing",
9497
+ "group": "motion",
9498
+ "value": "ease"
9499
+ },
9500
+ {
9501
+ "name": "dur-press",
9502
+ "tier": "semantic",
9503
+ "type": "duration",
9504
+ "group": "motion",
9505
+ "value": "90ms"
9506
+ },
9507
+ {
9508
+ "name": "dur-ui",
9509
+ "tier": "semantic",
9510
+ "type": "duration",
9511
+ "group": "motion",
9512
+ "value": "200ms"
9513
+ },
8575
9514
  {
8576
9515
  "name": "button-font",
8577
9516
  "tier": "component",
@@ -8893,6 +9832,13 @@ const SPEC_FLAVOR_PACKS = [
8893
9832
  "group": "components",
8894
9833
  "value": "none"
8895
9834
  },
9835
+ {
9836
+ "name": "card-shadow-raise",
9837
+ "tier": "component",
9838
+ "type": "shadow",
9839
+ "group": "components",
9840
+ "value": "var(--iox-card-shadow-hover)"
9841
+ },
8896
9842
  {
8897
9843
  "name": "panel-bg",
8898
9844
  "tier": "component",
@@ -9077,6 +10023,216 @@ const SPEC_FLAVOR_PACKS = [
9077
10023
  "group": "components",
9078
10024
  "value": "0px"
9079
10025
  },
10026
+ {
10027
+ "name": "tooltip-bg",
10028
+ "tier": "component",
10029
+ "type": "color",
10030
+ "group": "components",
10031
+ "value": "var(--iox-text)"
10032
+ },
10033
+ {
10034
+ "name": "tooltip-ink",
10035
+ "tier": "component",
10036
+ "type": "color",
10037
+ "group": "components",
10038
+ "value": "var(--iox-bg)"
10039
+ },
10040
+ {
10041
+ "name": "tooltip-radius",
10042
+ "tier": "component",
10043
+ "type": "radius",
10044
+ "group": "components",
10045
+ "value": "var(--iox-radius-xs)"
10046
+ },
10047
+ {
10048
+ "name": "tooltip-shadow",
10049
+ "tier": "component",
10050
+ "type": "shadow",
10051
+ "group": "components",
10052
+ "value": "var(--iox-shadow-md)"
10053
+ },
10054
+ {
10055
+ "name": "tooltip-size",
10056
+ "tier": "component",
10057
+ "type": "size",
10058
+ "group": "components",
10059
+ "value": "var(--iox-size-small)"
10060
+ },
10061
+ {
10062
+ "name": "tooltip-scale",
10063
+ "tier": "component",
10064
+ "type": "number",
10065
+ "group": "components",
10066
+ "value": "0.97"
10067
+ },
10068
+ {
10069
+ "name": "tooltip-ease",
10070
+ "tier": "component",
10071
+ "type": "easing",
10072
+ "group": "components",
10073
+ "value": "var(--iox-ease-enter)"
10074
+ },
10075
+ {
10076
+ "name": "tooltip-dur-in",
10077
+ "tier": "component",
10078
+ "type": "duration",
10079
+ "group": "components",
10080
+ "value": "125ms"
10081
+ },
10082
+ {
10083
+ "name": "tooltip-dur-out",
10084
+ "tier": "component",
10085
+ "type": "duration",
10086
+ "group": "components",
10087
+ "value": "80ms"
10088
+ },
10089
+ {
10090
+ "name": "popover-bg",
10091
+ "tier": "component",
10092
+ "type": "color",
10093
+ "group": "components",
10094
+ "value": "var(--iox-surface)"
10095
+ },
10096
+ {
10097
+ "name": "popover-border",
10098
+ "tier": "component",
10099
+ "type": "color",
10100
+ "group": "components",
10101
+ "value": "var(--iox-line)"
10102
+ },
10103
+ {
10104
+ "name": "popover-border-width",
10105
+ "tier": "component",
10106
+ "type": "size",
10107
+ "group": "components",
10108
+ "value": "var(--iox-border-width)"
10109
+ },
10110
+ {
10111
+ "name": "popover-radius",
10112
+ "tier": "component",
10113
+ "type": "radius",
10114
+ "group": "components",
10115
+ "value": "var(--iox-radius-lg)"
10116
+ },
10117
+ {
10118
+ "name": "popover-shadow",
10119
+ "tier": "component",
10120
+ "type": "shadow",
10121
+ "group": "components",
10122
+ "value": "var(--iox-shadow-lg)"
10123
+ },
10124
+ {
10125
+ "name": "popover-pad",
10126
+ "tier": "component",
10127
+ "type": "spacing",
10128
+ "group": "components",
10129
+ "value": "var(--iox-space-pad)"
10130
+ },
10131
+ {
10132
+ "name": "popover-scale",
10133
+ "tier": "component",
10134
+ "type": "number",
10135
+ "group": "components",
10136
+ "value": "0.95"
10137
+ },
10138
+ {
10139
+ "name": "popover-ease",
10140
+ "tier": "component",
10141
+ "type": "easing",
10142
+ "group": "components",
10143
+ "value": "var(--iox-ease-enter)"
10144
+ },
10145
+ {
10146
+ "name": "popover-dur-in",
10147
+ "tier": "component",
10148
+ "type": "duration",
10149
+ "group": "components",
10150
+ "value": "200ms"
10151
+ },
10152
+ {
10153
+ "name": "popover-dur-out",
10154
+ "tier": "component",
10155
+ "type": "duration",
10156
+ "group": "components",
10157
+ "value": "140ms"
10158
+ },
10159
+ {
10160
+ "name": "sheet-ease",
10161
+ "tier": "component",
10162
+ "type": "easing",
10163
+ "group": "components",
10164
+ "value": "cubic-bezier(0.32, 0.72, 0, 1)"
10165
+ },
10166
+ {
10167
+ "name": "sheet-dur-in",
10168
+ "tier": "component",
10169
+ "type": "duration",
10170
+ "group": "components",
10171
+ "value": "500ms"
10172
+ },
10173
+ {
10174
+ "name": "sheet-dur-out",
10175
+ "tier": "component",
10176
+ "type": "duration",
10177
+ "group": "components",
10178
+ "value": "280ms"
10179
+ },
10180
+ {
10181
+ "name": "toast-bg",
10182
+ "tier": "component",
10183
+ "type": "color",
10184
+ "group": "components",
10185
+ "value": "var(--iox-text)"
10186
+ },
10187
+ {
10188
+ "name": "toast-ink",
10189
+ "tier": "component",
10190
+ "type": "color",
10191
+ "group": "components",
10192
+ "value": "var(--iox-bg)"
10193
+ },
10194
+ {
10195
+ "name": "toast-radius",
10196
+ "tier": "component",
10197
+ "type": "radius",
10198
+ "group": "components",
10199
+ "value": "var(--iox-radius-md)"
10200
+ },
10201
+ {
10202
+ "name": "toast-shadow",
10203
+ "tier": "component",
10204
+ "type": "shadow",
10205
+ "group": "components",
10206
+ "value": "var(--iox-shadow-lg)"
10207
+ },
10208
+ {
10209
+ "name": "toast-ease",
10210
+ "tier": "component",
10211
+ "type": "easing",
10212
+ "group": "components",
10213
+ "value": "ease"
10214
+ },
10215
+ {
10216
+ "name": "toast-dur-in",
10217
+ "tier": "component",
10218
+ "type": "duration",
10219
+ "group": "components",
10220
+ "value": "400ms"
10221
+ },
10222
+ {
10223
+ "name": "toast-dur-out",
10224
+ "tier": "component",
10225
+ "type": "duration",
10226
+ "group": "components",
10227
+ "value": "220ms"
10228
+ },
10229
+ {
10230
+ "name": "dialog-edge",
10231
+ "tier": "component",
10232
+ "type": "color",
10233
+ "group": "components",
10234
+ "value": "var(--iox-line)"
10235
+ },
9080
10236
  {
9081
10237
  "name": "image-radius",
9082
10238
  "tier": "component",
@@ -9096,35 +10252,70 @@ const SPEC_FLAVOR_PACKS = [
9096
10252
  "tier": "component",
9097
10253
  "type": "color",
9098
10254
  "group": "components",
9099
- "value": "var(--iox-accent-text)"
10255
+ "value": "var(--iox-accent-text)"
10256
+ },
10257
+ {
10258
+ "name": "link-hover-color",
10259
+ "tier": "component",
10260
+ "type": "color",
10261
+ "group": "components",
10262
+ "value": "var(--iox-text)"
10263
+ },
10264
+ {
10265
+ "name": "link-decoration",
10266
+ "tier": "component",
10267
+ "type": "keyword",
10268
+ "group": "components",
10269
+ "value": "underline"
10270
+ },
10271
+ {
10272
+ "name": "link-current-color",
10273
+ "tier": "component",
10274
+ "type": "color",
10275
+ "group": "components",
10276
+ "value": "var(--iox-text)"
10277
+ },
10278
+ {
10279
+ "name": "link-current-decoration",
10280
+ "tier": "component",
10281
+ "type": "keyword",
10282
+ "group": "components",
10283
+ "value": "underline 2px var(--iox-accent-text)"
10284
+ },
10285
+ {
10286
+ "name": "link-underline-rest",
10287
+ "tier": "component",
10288
+ "type": "number",
10289
+ "group": "components",
10290
+ "value": "1"
9100
10291
  },
9101
10292
  {
9102
- "name": "link-hover-color",
10293
+ "name": "link-underline-thickness",
9103
10294
  "tier": "component",
9104
- "type": "color",
10295
+ "type": "size",
9105
10296
  "group": "components",
9106
- "value": "var(--iox-text)"
10297
+ "value": "max(1px, 0.06em)"
9107
10298
  },
9108
10299
  {
9109
- "name": "link-decoration",
10300
+ "name": "link-underline-offset",
9110
10301
  "tier": "component",
9111
- "type": "keyword",
10302
+ "type": "size",
9112
10303
  "group": "components",
9113
- "value": "underline"
10304
+ "value": "0.12em"
9114
10305
  },
9115
10306
  {
9116
- "name": "link-current-color",
10307
+ "name": "link-current-underline",
9117
10308
  "tier": "component",
9118
10309
  "type": "color",
9119
10310
  "group": "components",
9120
- "value": "var(--iox-text)"
10311
+ "value": "var(--iox-accent-text)"
9121
10312
  },
9122
10313
  {
9123
- "name": "link-current-decoration",
10314
+ "name": "link-current-underline-thickness",
9124
10315
  "tier": "component",
9125
- "type": "keyword",
10316
+ "type": "size",
9126
10317
  "group": "components",
9127
- "value": "underline 2px var(--iox-accent-text)"
10318
+ "value": "2px"
9128
10319
  },
9129
10320
  {
9130
10321
  "name": "tabbar-bg",
@@ -9575,6 +10766,13 @@ const SPEC_FLAVOR_PACKS = [
9575
10766
  "type": "size",
9576
10767
  "group": "components",
9577
10768
  "value": "64px"
10769
+ },
10770
+ {
10771
+ "name": "slider-ease",
10772
+ "tier": "component",
10773
+ "type": "easing",
10774
+ "group": "components",
10775
+ "value": "var(--iox-ease-standard)"
9578
10776
  }
9579
10777
  ]
9580
10778
  },
@@ -10387,6 +11585,34 @@ const SPEC_FLAVOR_PACKS = [
10387
11585
  "group": "motion",
10388
11586
  "value": "0.97"
10389
11587
  },
11588
+ {
11589
+ "name": "dur-hover",
11590
+ "tier": "semantic",
11591
+ "type": "duration",
11592
+ "group": "motion",
11593
+ "value": "150ms"
11594
+ },
11595
+ {
11596
+ "name": "ease-hover",
11597
+ "tier": "semantic",
11598
+ "type": "easing",
11599
+ "group": "motion",
11600
+ "value": "ease"
11601
+ },
11602
+ {
11603
+ "name": "dur-press",
11604
+ "tier": "semantic",
11605
+ "type": "duration",
11606
+ "group": "motion",
11607
+ "value": "100ms"
11608
+ },
11609
+ {
11610
+ "name": "dur-ui",
11611
+ "tier": "semantic",
11612
+ "type": "duration",
11613
+ "group": "motion",
11614
+ "value": "280ms"
11615
+ },
10390
11616
  {
10391
11617
  "name": "button-font",
10392
11618
  "tier": "component",
@@ -10715,6 +11941,13 @@ const SPEC_FLAVOR_PACKS = [
10715
11941
  "value": "var(--iox-blur-surface)",
10716
11942
  "overridden": true
10717
11943
  },
11944
+ {
11945
+ "name": "card-shadow-raise",
11946
+ "tier": "component",
11947
+ "type": "shadow",
11948
+ "group": "components",
11949
+ "value": "var(--iox-card-shadow-hover)"
11950
+ },
10718
11951
  {
10719
11952
  "name": "panel-bg",
10720
11953
  "tier": "component",
@@ -10910,6 +12143,216 @@ const SPEC_FLAVOR_PACKS = [
10910
12143
  "value": "var(--iox-border-width)",
10911
12144
  "overridden": true
10912
12145
  },
12146
+ {
12147
+ "name": "tooltip-bg",
12148
+ "tier": "component",
12149
+ "type": "color",
12150
+ "group": "components",
12151
+ "value": "var(--iox-text)"
12152
+ },
12153
+ {
12154
+ "name": "tooltip-ink",
12155
+ "tier": "component",
12156
+ "type": "color",
12157
+ "group": "components",
12158
+ "value": "var(--iox-bg)"
12159
+ },
12160
+ {
12161
+ "name": "tooltip-radius",
12162
+ "tier": "component",
12163
+ "type": "radius",
12164
+ "group": "components",
12165
+ "value": "var(--iox-radius-xs)"
12166
+ },
12167
+ {
12168
+ "name": "tooltip-shadow",
12169
+ "tier": "component",
12170
+ "type": "shadow",
12171
+ "group": "components",
12172
+ "value": "var(--iox-shadow-md)"
12173
+ },
12174
+ {
12175
+ "name": "tooltip-size",
12176
+ "tier": "component",
12177
+ "type": "size",
12178
+ "group": "components",
12179
+ "value": "var(--iox-size-small)"
12180
+ },
12181
+ {
12182
+ "name": "tooltip-scale",
12183
+ "tier": "component",
12184
+ "type": "number",
12185
+ "group": "components",
12186
+ "value": "0.97"
12187
+ },
12188
+ {
12189
+ "name": "tooltip-ease",
12190
+ "tier": "component",
12191
+ "type": "easing",
12192
+ "group": "components",
12193
+ "value": "var(--iox-ease-enter)"
12194
+ },
12195
+ {
12196
+ "name": "tooltip-dur-in",
12197
+ "tier": "component",
12198
+ "type": "duration",
12199
+ "group": "components",
12200
+ "value": "140ms"
12201
+ },
12202
+ {
12203
+ "name": "tooltip-dur-out",
12204
+ "tier": "component",
12205
+ "type": "duration",
12206
+ "group": "components",
12207
+ "value": "90ms"
12208
+ },
12209
+ {
12210
+ "name": "popover-bg",
12211
+ "tier": "component",
12212
+ "type": "color",
12213
+ "group": "components",
12214
+ "value": "var(--iox-surface)"
12215
+ },
12216
+ {
12217
+ "name": "popover-border",
12218
+ "tier": "component",
12219
+ "type": "color",
12220
+ "group": "components",
12221
+ "value": "var(--iox-line)"
12222
+ },
12223
+ {
12224
+ "name": "popover-border-width",
12225
+ "tier": "component",
12226
+ "type": "size",
12227
+ "group": "components",
12228
+ "value": "var(--iox-border-width)"
12229
+ },
12230
+ {
12231
+ "name": "popover-radius",
12232
+ "tier": "component",
12233
+ "type": "radius",
12234
+ "group": "components",
12235
+ "value": "var(--iox-radius-lg)"
12236
+ },
12237
+ {
12238
+ "name": "popover-shadow",
12239
+ "tier": "component",
12240
+ "type": "shadow",
12241
+ "group": "components",
12242
+ "value": "var(--iox-shadow-lg)"
12243
+ },
12244
+ {
12245
+ "name": "popover-pad",
12246
+ "tier": "component",
12247
+ "type": "spacing",
12248
+ "group": "components",
12249
+ "value": "var(--iox-space-pad)"
12250
+ },
12251
+ {
12252
+ "name": "popover-scale",
12253
+ "tier": "component",
12254
+ "type": "number",
12255
+ "group": "components",
12256
+ "value": "0.95"
12257
+ },
12258
+ {
12259
+ "name": "popover-ease",
12260
+ "tier": "component",
12261
+ "type": "easing",
12262
+ "group": "components",
12263
+ "value": "var(--iox-ease-enter)"
12264
+ },
12265
+ {
12266
+ "name": "popover-dur-in",
12267
+ "tier": "component",
12268
+ "type": "duration",
12269
+ "group": "components",
12270
+ "value": "220ms"
12271
+ },
12272
+ {
12273
+ "name": "popover-dur-out",
12274
+ "tier": "component",
12275
+ "type": "duration",
12276
+ "group": "components",
12277
+ "value": "150ms"
12278
+ },
12279
+ {
12280
+ "name": "sheet-ease",
12281
+ "tier": "component",
12282
+ "type": "easing",
12283
+ "group": "components",
12284
+ "value": "cubic-bezier(0.32, 0.72, 0, 1)"
12285
+ },
12286
+ {
12287
+ "name": "sheet-dur-in",
12288
+ "tier": "component",
12289
+ "type": "duration",
12290
+ "group": "components",
12291
+ "value": "500ms"
12292
+ },
12293
+ {
12294
+ "name": "sheet-dur-out",
12295
+ "tier": "component",
12296
+ "type": "duration",
12297
+ "group": "components",
12298
+ "value": "280ms"
12299
+ },
12300
+ {
12301
+ "name": "toast-bg",
12302
+ "tier": "component",
12303
+ "type": "color",
12304
+ "group": "components",
12305
+ "value": "var(--iox-text)"
12306
+ },
12307
+ {
12308
+ "name": "toast-ink",
12309
+ "tier": "component",
12310
+ "type": "color",
12311
+ "group": "components",
12312
+ "value": "var(--iox-bg)"
12313
+ },
12314
+ {
12315
+ "name": "toast-radius",
12316
+ "tier": "component",
12317
+ "type": "radius",
12318
+ "group": "components",
12319
+ "value": "var(--iox-radius-md)"
12320
+ },
12321
+ {
12322
+ "name": "toast-shadow",
12323
+ "tier": "component",
12324
+ "type": "shadow",
12325
+ "group": "components",
12326
+ "value": "var(--iox-shadow-lg)"
12327
+ },
12328
+ {
12329
+ "name": "toast-ease",
12330
+ "tier": "component",
12331
+ "type": "easing",
12332
+ "group": "components",
12333
+ "value": "ease"
12334
+ },
12335
+ {
12336
+ "name": "toast-dur-in",
12337
+ "tier": "component",
12338
+ "type": "duration",
12339
+ "group": "components",
12340
+ "value": "400ms"
12341
+ },
12342
+ {
12343
+ "name": "toast-dur-out",
12344
+ "tier": "component",
12345
+ "type": "duration",
12346
+ "group": "components",
12347
+ "value": "220ms"
12348
+ },
12349
+ {
12350
+ "name": "dialog-edge",
12351
+ "tier": "component",
12352
+ "type": "color",
12353
+ "group": "components",
12354
+ "value": "var(--iox-line)"
12355
+ },
10913
12356
  {
10914
12357
  "name": "image-radius",
10915
12358
  "tier": "component",
@@ -10925,39 +12368,74 @@ const SPEC_FLAVOR_PACKS = [
10925
12368
  "value": "1"
10926
12369
  },
10927
12370
  {
10928
- "name": "link-color",
12371
+ "name": "link-color",
12372
+ "tier": "component",
12373
+ "type": "color",
12374
+ "group": "components",
12375
+ "value": "var(--iox-accent-text)"
12376
+ },
12377
+ {
12378
+ "name": "link-hover-color",
12379
+ "tier": "component",
12380
+ "type": "color",
12381
+ "group": "components",
12382
+ "value": "var(--iox-text)"
12383
+ },
12384
+ {
12385
+ "name": "link-decoration",
12386
+ "tier": "component",
12387
+ "type": "keyword",
12388
+ "group": "components",
12389
+ "value": "underline"
12390
+ },
12391
+ {
12392
+ "name": "link-current-color",
12393
+ "tier": "component",
12394
+ "type": "color",
12395
+ "group": "components",
12396
+ "value": "var(--iox-text)"
12397
+ },
12398
+ {
12399
+ "name": "link-current-decoration",
12400
+ "tier": "component",
12401
+ "type": "keyword",
12402
+ "group": "components",
12403
+ "value": "underline 2px var(--iox-accent-text)"
12404
+ },
12405
+ {
12406
+ "name": "link-underline-rest",
10929
12407
  "tier": "component",
10930
- "type": "color",
12408
+ "type": "number",
10931
12409
  "group": "components",
10932
- "value": "var(--iox-accent-text)"
12410
+ "value": "1"
10933
12411
  },
10934
12412
  {
10935
- "name": "link-hover-color",
12413
+ "name": "link-underline-thickness",
10936
12414
  "tier": "component",
10937
- "type": "color",
12415
+ "type": "size",
10938
12416
  "group": "components",
10939
- "value": "var(--iox-text)"
12417
+ "value": "max(1px, 0.06em)"
10940
12418
  },
10941
12419
  {
10942
- "name": "link-decoration",
12420
+ "name": "link-underline-offset",
10943
12421
  "tier": "component",
10944
- "type": "keyword",
12422
+ "type": "size",
10945
12423
  "group": "components",
10946
- "value": "underline"
12424
+ "value": "0.12em"
10947
12425
  },
10948
12426
  {
10949
- "name": "link-current-color",
12427
+ "name": "link-current-underline",
10950
12428
  "tier": "component",
10951
12429
  "type": "color",
10952
12430
  "group": "components",
10953
- "value": "var(--iox-text)"
12431
+ "value": "var(--iox-accent-text)"
10954
12432
  },
10955
12433
  {
10956
- "name": "link-current-decoration",
12434
+ "name": "link-current-underline-thickness",
10957
12435
  "tier": "component",
10958
- "type": "keyword",
12436
+ "type": "size",
10959
12437
  "group": "components",
10960
- "value": "underline 2px var(--iox-accent-text)"
12438
+ "value": "2px"
10961
12439
  },
10962
12440
  {
10963
12441
  "name": "tabbar-bg",
@@ -11421,6 +12899,13 @@ const SPEC_FLAVOR_PACKS = [
11421
12899
  "type": "size",
11422
12900
  "group": "components",
11423
12901
  "value": "64px"
12902
+ },
12903
+ {
12904
+ "name": "slider-ease",
12905
+ "tier": "component",
12906
+ "type": "easing",
12907
+ "group": "components",
12908
+ "value": "var(--iox-ease-standard)"
11424
12909
  }
11425
12910
  ]
11426
12911
  },
@@ -12215,6 +13700,34 @@ const SPEC_FLAVOR_PACKS = [
12215
13700
  "group": "motion",
12216
13701
  "value": "0.97"
12217
13702
  },
13703
+ {
13704
+ "name": "dur-hover",
13705
+ "tier": "semantic",
13706
+ "type": "duration",
13707
+ "group": "motion",
13708
+ "value": "150ms"
13709
+ },
13710
+ {
13711
+ "name": "ease-hover",
13712
+ "tier": "semantic",
13713
+ "type": "easing",
13714
+ "group": "motion",
13715
+ "value": "ease"
13716
+ },
13717
+ {
13718
+ "name": "dur-press",
13719
+ "tier": "semantic",
13720
+ "type": "duration",
13721
+ "group": "motion",
13722
+ "value": "100ms"
13723
+ },
13724
+ {
13725
+ "name": "dur-ui",
13726
+ "tier": "semantic",
13727
+ "type": "duration",
13728
+ "group": "motion",
13729
+ "value": "280ms"
13730
+ },
12218
13731
  {
12219
13732
  "name": "button-font",
12220
13733
  "tier": "component",
@@ -12540,6 +14053,13 @@ const SPEC_FLAVOR_PACKS = [
12540
14053
  "group": "components",
12541
14054
  "value": "none"
12542
14055
  },
14056
+ {
14057
+ "name": "card-shadow-raise",
14058
+ "tier": "component",
14059
+ "type": "shadow",
14060
+ "group": "components",
14061
+ "value": "var(--iox-card-shadow-hover)"
14062
+ },
12543
14063
  {
12544
14064
  "name": "panel-bg",
12545
14065
  "tier": "component",
@@ -12724,6 +14244,216 @@ const SPEC_FLAVOR_PACKS = [
12724
14244
  "group": "components",
12725
14245
  "value": "0px"
12726
14246
  },
14247
+ {
14248
+ "name": "tooltip-bg",
14249
+ "tier": "component",
14250
+ "type": "color",
14251
+ "group": "components",
14252
+ "value": "var(--iox-text)"
14253
+ },
14254
+ {
14255
+ "name": "tooltip-ink",
14256
+ "tier": "component",
14257
+ "type": "color",
14258
+ "group": "components",
14259
+ "value": "var(--iox-bg)"
14260
+ },
14261
+ {
14262
+ "name": "tooltip-radius",
14263
+ "tier": "component",
14264
+ "type": "radius",
14265
+ "group": "components",
14266
+ "value": "var(--iox-radius-xs)"
14267
+ },
14268
+ {
14269
+ "name": "tooltip-shadow",
14270
+ "tier": "component",
14271
+ "type": "shadow",
14272
+ "group": "components",
14273
+ "value": "var(--iox-shadow-md)"
14274
+ },
14275
+ {
14276
+ "name": "tooltip-size",
14277
+ "tier": "component",
14278
+ "type": "size",
14279
+ "group": "components",
14280
+ "value": "var(--iox-size-small)"
14281
+ },
14282
+ {
14283
+ "name": "tooltip-scale",
14284
+ "tier": "component",
14285
+ "type": "number",
14286
+ "group": "components",
14287
+ "value": "0.97"
14288
+ },
14289
+ {
14290
+ "name": "tooltip-ease",
14291
+ "tier": "component",
14292
+ "type": "easing",
14293
+ "group": "components",
14294
+ "value": "var(--iox-ease-enter)"
14295
+ },
14296
+ {
14297
+ "name": "tooltip-dur-in",
14298
+ "tier": "component",
14299
+ "type": "duration",
14300
+ "group": "components",
14301
+ "value": "140ms"
14302
+ },
14303
+ {
14304
+ "name": "tooltip-dur-out",
14305
+ "tier": "component",
14306
+ "type": "duration",
14307
+ "group": "components",
14308
+ "value": "90ms"
14309
+ },
14310
+ {
14311
+ "name": "popover-bg",
14312
+ "tier": "component",
14313
+ "type": "color",
14314
+ "group": "components",
14315
+ "value": "var(--iox-surface)"
14316
+ },
14317
+ {
14318
+ "name": "popover-border",
14319
+ "tier": "component",
14320
+ "type": "color",
14321
+ "group": "components",
14322
+ "value": "var(--iox-line)"
14323
+ },
14324
+ {
14325
+ "name": "popover-border-width",
14326
+ "tier": "component",
14327
+ "type": "size",
14328
+ "group": "components",
14329
+ "value": "var(--iox-border-width)"
14330
+ },
14331
+ {
14332
+ "name": "popover-radius",
14333
+ "tier": "component",
14334
+ "type": "radius",
14335
+ "group": "components",
14336
+ "value": "var(--iox-radius-lg)"
14337
+ },
14338
+ {
14339
+ "name": "popover-shadow",
14340
+ "tier": "component",
14341
+ "type": "shadow",
14342
+ "group": "components",
14343
+ "value": "var(--iox-shadow-lg)"
14344
+ },
14345
+ {
14346
+ "name": "popover-pad",
14347
+ "tier": "component",
14348
+ "type": "spacing",
14349
+ "group": "components",
14350
+ "value": "var(--iox-space-pad)"
14351
+ },
14352
+ {
14353
+ "name": "popover-scale",
14354
+ "tier": "component",
14355
+ "type": "number",
14356
+ "group": "components",
14357
+ "value": "0.95"
14358
+ },
14359
+ {
14360
+ "name": "popover-ease",
14361
+ "tier": "component",
14362
+ "type": "easing",
14363
+ "group": "components",
14364
+ "value": "var(--iox-ease-enter)"
14365
+ },
14366
+ {
14367
+ "name": "popover-dur-in",
14368
+ "tier": "component",
14369
+ "type": "duration",
14370
+ "group": "components",
14371
+ "value": "220ms"
14372
+ },
14373
+ {
14374
+ "name": "popover-dur-out",
14375
+ "tier": "component",
14376
+ "type": "duration",
14377
+ "group": "components",
14378
+ "value": "150ms"
14379
+ },
14380
+ {
14381
+ "name": "sheet-ease",
14382
+ "tier": "component",
14383
+ "type": "easing",
14384
+ "group": "components",
14385
+ "value": "cubic-bezier(0.32, 0.72, 0, 1)"
14386
+ },
14387
+ {
14388
+ "name": "sheet-dur-in",
14389
+ "tier": "component",
14390
+ "type": "duration",
14391
+ "group": "components",
14392
+ "value": "500ms"
14393
+ },
14394
+ {
14395
+ "name": "sheet-dur-out",
14396
+ "tier": "component",
14397
+ "type": "duration",
14398
+ "group": "components",
14399
+ "value": "280ms"
14400
+ },
14401
+ {
14402
+ "name": "toast-bg",
14403
+ "tier": "component",
14404
+ "type": "color",
14405
+ "group": "components",
14406
+ "value": "var(--iox-text)"
14407
+ },
14408
+ {
14409
+ "name": "toast-ink",
14410
+ "tier": "component",
14411
+ "type": "color",
14412
+ "group": "components",
14413
+ "value": "var(--iox-bg)"
14414
+ },
14415
+ {
14416
+ "name": "toast-radius",
14417
+ "tier": "component",
14418
+ "type": "radius",
14419
+ "group": "components",
14420
+ "value": "var(--iox-radius-md)"
14421
+ },
14422
+ {
14423
+ "name": "toast-shadow",
14424
+ "tier": "component",
14425
+ "type": "shadow",
14426
+ "group": "components",
14427
+ "value": "var(--iox-shadow-lg)"
14428
+ },
14429
+ {
14430
+ "name": "toast-ease",
14431
+ "tier": "component",
14432
+ "type": "easing",
14433
+ "group": "components",
14434
+ "value": "ease"
14435
+ },
14436
+ {
14437
+ "name": "toast-dur-in",
14438
+ "tier": "component",
14439
+ "type": "duration",
14440
+ "group": "components",
14441
+ "value": "400ms"
14442
+ },
14443
+ {
14444
+ "name": "toast-dur-out",
14445
+ "tier": "component",
14446
+ "type": "duration",
14447
+ "group": "components",
14448
+ "value": "220ms"
14449
+ },
14450
+ {
14451
+ "name": "dialog-edge",
14452
+ "tier": "component",
14453
+ "type": "color",
14454
+ "group": "components",
14455
+ "value": "var(--iox-line)"
14456
+ },
12727
14457
  {
12728
14458
  "name": "image-radius",
12729
14459
  "tier": "component",
@@ -12764,14 +14494,49 @@ const SPEC_FLAVOR_PACKS = [
12764
14494
  "tier": "component",
12765
14495
  "type": "color",
12766
14496
  "group": "components",
12767
- "value": "var(--iox-text)"
14497
+ "value": "var(--iox-text)"
14498
+ },
14499
+ {
14500
+ "name": "link-current-decoration",
14501
+ "tier": "component",
14502
+ "type": "keyword",
14503
+ "group": "components",
14504
+ "value": "underline 2px var(--iox-accent-text)"
14505
+ },
14506
+ {
14507
+ "name": "link-underline-rest",
14508
+ "tier": "component",
14509
+ "type": "number",
14510
+ "group": "components",
14511
+ "value": "1"
14512
+ },
14513
+ {
14514
+ "name": "link-underline-thickness",
14515
+ "tier": "component",
14516
+ "type": "size",
14517
+ "group": "components",
14518
+ "value": "max(1px, 0.06em)"
14519
+ },
14520
+ {
14521
+ "name": "link-underline-offset",
14522
+ "tier": "component",
14523
+ "type": "size",
14524
+ "group": "components",
14525
+ "value": "0.12em"
14526
+ },
14527
+ {
14528
+ "name": "link-current-underline",
14529
+ "tier": "component",
14530
+ "type": "color",
14531
+ "group": "components",
14532
+ "value": "var(--iox-accent-text)"
12768
14533
  },
12769
14534
  {
12770
- "name": "link-current-decoration",
14535
+ "name": "link-current-underline-thickness",
12771
14536
  "tier": "component",
12772
- "type": "keyword",
14537
+ "type": "size",
12773
14538
  "group": "components",
12774
- "value": "underline 2px var(--iox-accent-text)"
14539
+ "value": "2px"
12775
14540
  },
12776
14541
  {
12777
14542
  "name": "tabbar-bg",
@@ -13229,6 +14994,13 @@ const SPEC_FLAVOR_PACKS = [
13229
14994
  "type": "size",
13230
14995
  "group": "components",
13231
14996
  "value": "64px"
14997
+ },
14998
+ {
14999
+ "name": "slider-ease",
15000
+ "tier": "component",
15001
+ "type": "easing",
15002
+ "group": "components",
15003
+ "value": "var(--iox-ease-standard)"
13232
15004
  }
13233
15005
  ]
13234
15006
  },
@@ -14012,6 +15784,34 @@ const SPEC_FLAVOR_PACKS = [
14012
15784
  "group": "motion",
14013
15785
  "value": "0.97"
14014
15786
  },
15787
+ {
15788
+ "name": "dur-hover",
15789
+ "tier": "semantic",
15790
+ "type": "duration",
15791
+ "group": "motion",
15792
+ "value": "80ms"
15793
+ },
15794
+ {
15795
+ "name": "ease-hover",
15796
+ "tier": "semantic",
15797
+ "type": "easing",
15798
+ "group": "motion",
15799
+ "value": "ease"
15800
+ },
15801
+ {
15802
+ "name": "dur-press",
15803
+ "tier": "semantic",
15804
+ "type": "duration",
15805
+ "group": "motion",
15806
+ "value": "60ms"
15807
+ },
15808
+ {
15809
+ "name": "dur-ui",
15810
+ "tier": "semantic",
15811
+ "type": "duration",
15812
+ "group": "motion",
15813
+ "value": "140ms"
15814
+ },
14015
15815
  {
14016
15816
  "name": "button-font",
14017
15817
  "tier": "component",
@@ -14346,6 +16146,13 @@ const SPEC_FLAVOR_PACKS = [
14346
16146
  "group": "components",
14347
16147
  "value": "none"
14348
16148
  },
16149
+ {
16150
+ "name": "card-shadow-raise",
16151
+ "tier": "component",
16152
+ "type": "shadow",
16153
+ "group": "components",
16154
+ "value": "var(--iox-card-shadow-hover)"
16155
+ },
14349
16156
  {
14350
16157
  "name": "panel-bg",
14351
16158
  "tier": "component",
@@ -14534,6 +16341,216 @@ const SPEC_FLAVOR_PACKS = [
14534
16341
  "value": "var(--iox-border-width)",
14535
16342
  "overridden": true
14536
16343
  },
16344
+ {
16345
+ "name": "tooltip-bg",
16346
+ "tier": "component",
16347
+ "type": "color",
16348
+ "group": "components",
16349
+ "value": "var(--iox-text)"
16350
+ },
16351
+ {
16352
+ "name": "tooltip-ink",
16353
+ "tier": "component",
16354
+ "type": "color",
16355
+ "group": "components",
16356
+ "value": "var(--iox-bg)"
16357
+ },
16358
+ {
16359
+ "name": "tooltip-radius",
16360
+ "tier": "component",
16361
+ "type": "radius",
16362
+ "group": "components",
16363
+ "value": "var(--iox-radius-xs)"
16364
+ },
16365
+ {
16366
+ "name": "tooltip-shadow",
16367
+ "tier": "component",
16368
+ "type": "shadow",
16369
+ "group": "components",
16370
+ "value": "var(--iox-shadow-md)"
16371
+ },
16372
+ {
16373
+ "name": "tooltip-size",
16374
+ "tier": "component",
16375
+ "type": "size",
16376
+ "group": "components",
16377
+ "value": "var(--iox-size-small)"
16378
+ },
16379
+ {
16380
+ "name": "tooltip-scale",
16381
+ "tier": "component",
16382
+ "type": "number",
16383
+ "group": "components",
16384
+ "value": "0.97"
16385
+ },
16386
+ {
16387
+ "name": "tooltip-ease",
16388
+ "tier": "component",
16389
+ "type": "easing",
16390
+ "group": "components",
16391
+ "value": "var(--iox-ease-enter)"
16392
+ },
16393
+ {
16394
+ "name": "tooltip-dur-in",
16395
+ "tier": "component",
16396
+ "type": "duration",
16397
+ "group": "components",
16398
+ "value": "100ms"
16399
+ },
16400
+ {
16401
+ "name": "tooltip-dur-out",
16402
+ "tier": "component",
16403
+ "type": "duration",
16404
+ "group": "components",
16405
+ "value": "70ms"
16406
+ },
16407
+ {
16408
+ "name": "popover-bg",
16409
+ "tier": "component",
16410
+ "type": "color",
16411
+ "group": "components",
16412
+ "value": "var(--iox-surface)"
16413
+ },
16414
+ {
16415
+ "name": "popover-border",
16416
+ "tier": "component",
16417
+ "type": "color",
16418
+ "group": "components",
16419
+ "value": "var(--iox-line)"
16420
+ },
16421
+ {
16422
+ "name": "popover-border-width",
16423
+ "tier": "component",
16424
+ "type": "size",
16425
+ "group": "components",
16426
+ "value": "var(--iox-border-width)"
16427
+ },
16428
+ {
16429
+ "name": "popover-radius",
16430
+ "tier": "component",
16431
+ "type": "radius",
16432
+ "group": "components",
16433
+ "value": "var(--iox-radius-lg)"
16434
+ },
16435
+ {
16436
+ "name": "popover-shadow",
16437
+ "tier": "component",
16438
+ "type": "shadow",
16439
+ "group": "components",
16440
+ "value": "var(--iox-shadow-lg)"
16441
+ },
16442
+ {
16443
+ "name": "popover-pad",
16444
+ "tier": "component",
16445
+ "type": "spacing",
16446
+ "group": "components",
16447
+ "value": "var(--iox-space-pad)"
16448
+ },
16449
+ {
16450
+ "name": "popover-scale",
16451
+ "tier": "component",
16452
+ "type": "number",
16453
+ "group": "components",
16454
+ "value": "0.95"
16455
+ },
16456
+ {
16457
+ "name": "popover-ease",
16458
+ "tier": "component",
16459
+ "type": "easing",
16460
+ "group": "components",
16461
+ "value": "var(--iox-ease-enter)"
16462
+ },
16463
+ {
16464
+ "name": "popover-dur-in",
16465
+ "tier": "component",
16466
+ "type": "duration",
16467
+ "group": "components",
16468
+ "value": "160ms"
16469
+ },
16470
+ {
16471
+ "name": "popover-dur-out",
16472
+ "tier": "component",
16473
+ "type": "duration",
16474
+ "group": "components",
16475
+ "value": "110ms"
16476
+ },
16477
+ {
16478
+ "name": "sheet-ease",
16479
+ "tier": "component",
16480
+ "type": "easing",
16481
+ "group": "components",
16482
+ "value": "cubic-bezier(0.32, 0.72, 0, 1)"
16483
+ },
16484
+ {
16485
+ "name": "sheet-dur-in",
16486
+ "tier": "component",
16487
+ "type": "duration",
16488
+ "group": "components",
16489
+ "value": "400ms"
16490
+ },
16491
+ {
16492
+ "name": "sheet-dur-out",
16493
+ "tier": "component",
16494
+ "type": "duration",
16495
+ "group": "components",
16496
+ "value": "240ms"
16497
+ },
16498
+ {
16499
+ "name": "toast-bg",
16500
+ "tier": "component",
16501
+ "type": "color",
16502
+ "group": "components",
16503
+ "value": "var(--iox-text)"
16504
+ },
16505
+ {
16506
+ "name": "toast-ink",
16507
+ "tier": "component",
16508
+ "type": "color",
16509
+ "group": "components",
16510
+ "value": "var(--iox-bg)"
16511
+ },
16512
+ {
16513
+ "name": "toast-radius",
16514
+ "tier": "component",
16515
+ "type": "radius",
16516
+ "group": "components",
16517
+ "value": "var(--iox-radius-md)"
16518
+ },
16519
+ {
16520
+ "name": "toast-shadow",
16521
+ "tier": "component",
16522
+ "type": "shadow",
16523
+ "group": "components",
16524
+ "value": "var(--iox-shadow-lg)"
16525
+ },
16526
+ {
16527
+ "name": "toast-ease",
16528
+ "tier": "component",
16529
+ "type": "easing",
16530
+ "group": "components",
16531
+ "value": "ease"
16532
+ },
16533
+ {
16534
+ "name": "toast-dur-in",
16535
+ "tier": "component",
16536
+ "type": "duration",
16537
+ "group": "components",
16538
+ "value": "320ms"
16539
+ },
16540
+ {
16541
+ "name": "toast-dur-out",
16542
+ "tier": "component",
16543
+ "type": "duration",
16544
+ "group": "components",
16545
+ "value": "180ms"
16546
+ },
16547
+ {
16548
+ "name": "dialog-edge",
16549
+ "tier": "component",
16550
+ "type": "color",
16551
+ "group": "components",
16552
+ "value": "var(--iox-line)"
16553
+ },
14537
16554
  {
14538
16555
  "name": "image-radius",
14539
16556
  "tier": "component",
@@ -14585,6 +16602,41 @@ const SPEC_FLAVOR_PACKS = [
14585
16602
  "group": "components",
14586
16603
  "value": "underline 2px var(--iox-accent-text)"
14587
16604
  },
16605
+ {
16606
+ "name": "link-underline-rest",
16607
+ "tier": "component",
16608
+ "type": "number",
16609
+ "group": "components",
16610
+ "value": "1"
16611
+ },
16612
+ {
16613
+ "name": "link-underline-thickness",
16614
+ "tier": "component",
16615
+ "type": "size",
16616
+ "group": "components",
16617
+ "value": "max(1px, 0.06em)"
16618
+ },
16619
+ {
16620
+ "name": "link-underline-offset",
16621
+ "tier": "component",
16622
+ "type": "size",
16623
+ "group": "components",
16624
+ "value": "0.12em"
16625
+ },
16626
+ {
16627
+ "name": "link-current-underline",
16628
+ "tier": "component",
16629
+ "type": "color",
16630
+ "group": "components",
16631
+ "value": "var(--iox-accent-text)"
16632
+ },
16633
+ {
16634
+ "name": "link-current-underline-thickness",
16635
+ "tier": "component",
16636
+ "type": "size",
16637
+ "group": "components",
16638
+ "value": "2px"
16639
+ },
14588
16640
  {
14589
16641
  "name": "tabbar-bg",
14590
16642
  "tier": "component",
@@ -15046,6 +17098,13 @@ const SPEC_FLAVOR_PACKS = [
15046
17098
  "type": "size",
15047
17099
  "group": "components",
15048
17100
  "value": "64px"
17101
+ },
17102
+ {
17103
+ "name": "slider-ease",
17104
+ "tier": "component",
17105
+ "type": "easing",
17106
+ "group": "components",
17107
+ "value": "var(--iox-ease-standard)"
15049
17108
  }
15050
17109
  ]
15051
17110
  }
@@ -16139,6 +18198,8 @@ function compileTokenCss(tokens, opts = {}) {
16139
18198
 
16140
18199
  /** The token the browser's own chrome takes its colour from: the page's ground. */
16141
18200
  const THEME_COLOR_TOKEN = 'bg';
18201
+ /** …or the header's ground, when a header stays at the top of the screen (premium components T2, M4). */
18202
+ const HEADER_THEME_COLOR_TOKEN = 'nav-bg';
16142
18203
  const VAR_REF = /^var\(\s*--iox-([\w-]+)\s*(?:,\s*([^()]+))?\)$/;
16143
18204
  /** A colour the browser's chrome can wear: opaque hex, rgb() or hsl() — never a gradient, a mix or a translucent one. */
16144
18205
  const SOLID_COLOUR = /^(#([0-9a-f]{3}|[0-9a-f]{6})|rgb\(\s*[\d.]+\s*,?\s*[\d.]+\s*,?\s*[\d.]+\s*\)|hsl\([^()/]+\))$/i;
@@ -16150,33 +18211,109 @@ function resolveIn$1(map, value, depth = 0) {
16150
18211
  return value.trim();
16151
18212
  return resolveIn$1(map, map.get(ref[1]) ?? ref[2]?.trim(), depth + 1);
16152
18213
  }
16153
- function colourFor(rows, dark) {
18214
+ function colourFor(rows, dark, token) {
16154
18215
  const map = new Map(rows.map(r => [r.name, dark ? (r.values?.dark ?? r.value) : r.value]));
16155
- const colour = resolveIn$1(map, map.get(THEME_COLOR_TOKEN));
18216
+ const colour = resolveIn$1(map, map.get(token));
16156
18217
  return colour && SOLID_COLOUR.test(colour) ? colour : undefined;
16157
18218
  }
18219
+ function themeColourFor(rows, dark, options) {
18220
+ return (options.header ? colourFor(rows, dark, HEADER_THEME_COLOR_TOKEN) : undefined) ?? colourFor(rows, dark, THEME_COLOR_TOKEN);
18221
+ }
16158
18222
  /**
16159
18223
  * The `theme-color` the browser's chrome takes per colour scheme (premium components G15 — mobile-native M10): the
16160
18224
  * page's ground in each mode the site shows, resolved through the org's rows. A light or dark site answers its one
16161
18225
  * mode; `auto` answers both (the engine writes them with `media="(prefers-color-scheme: …)"`). A value that is not a
16162
18226
  * solid colour answers nothing — the browser keeps its own.
16163
18227
  */
16164
- function themeColors(rows, mode = 'auto') {
18228
+ function themeColors(rows, mode = 'auto', options = {}) {
16165
18229
  const list = rows ?? [];
16166
18230
  const out = {};
16167
18231
  if (mode !== 'dark') {
16168
- const light = colourFor(list, false);
18232
+ const light = themeColourFor(list, false, options);
16169
18233
  if (light)
16170
18234
  out.light = light;
16171
18235
  }
16172
18236
  if (mode !== 'light') {
16173
- const dark = colourFor(list, true);
18237
+ const dark = themeColourFor(list, true, options);
16174
18238
  if (dark)
16175
18239
  out.dark = dark;
16176
18240
  }
16177
18241
  return out;
16178
18242
  }
16179
18243
 
18244
+ /**
18245
+ * How a site's header behaves as the page scrolls (premium components T2, M4). Two traits on the header's ROOT (the
18246
+ * Navigation bar, generation-core `NavRole.Root`) — edited in its "Header" section, stamped by the composer from a
18247
+ * `nav.*` pattern's `header` — and ONE answer every renderer applies: the attributes below, which the shared CSS
18248
+ * (`iox-design.css`) and the header runtime (`HeaderRuntime`, main entry) read. A header with neither trait renders
18249
+ * exactly as before (it scrolls away with the page, its divider line as its look draws it).
18250
+ *
18251
+ * Framework-free: the composer (generation-core) and both renderers read it.
18252
+ */
18253
+ var HeaderBehaviour;
18254
+ (function (HeaderBehaviour) {
18255
+ /** It scrolls away with the page (the default; what every header saved before M4 does). */
18256
+ HeaderBehaviour["Scrolls"] = "scrolls";
18257
+ /** It stays at the top while the page scrolls under it. */
18258
+ HeaderBehaviour["Stays"] = "stays";
18259
+ /** It steps aside while the page scrolls down and comes back the moment it scrolls up. */
18260
+ HeaderBehaviour["Hides"] = "hides";
18261
+ })(HeaderBehaviour || (HeaderBehaviour = {}));
18262
+ /** What separates the header from the page once the page has moved under it (Emil 99: an edge, not a divider). */
18263
+ var HeaderEdge;
18264
+ (function (HeaderEdge) {
18265
+ /** A soft fade of the header's own ground over the content under it. */
18266
+ HeaderEdge["Fade"] = "fade";
18267
+ /** A hairline in the header's border colour. */
18268
+ HeaderEdge["Line"] = "line";
18269
+ HeaderEdge["None"] = "none";
18270
+ })(HeaderEdge || (HeaderEdge = {}));
18271
+ /** The traits, stored in the root's props (no default: a plain Container saves neither). */
18272
+ var HeaderTrait;
18273
+ (function (HeaderTrait) {
18274
+ HeaderTrait["Behaviour"] = "headerBehaviour";
18275
+ HeaderTrait["Edge"] = "headerEdge";
18276
+ })(HeaderTrait || (HeaderTrait = {}));
18277
+ var HeaderAttribute;
18278
+ (function (HeaderAttribute) {
18279
+ /** `stays` | `hides` on a header that stays at the top. Absent: it scrolls away. */
18280
+ HeaderAttribute["Behaviour"] = "data-iox-header";
18281
+ /** `fade` | `line` | `none`: the edge it shows once the page has scrolled. Absent: its look's own divider stays. */
18282
+ HeaderAttribute["Edge"] = "data-iox-header-edge";
18283
+ /** Written by the header runtime while a `hides` header has stepped aside. */
18284
+ HeaderAttribute["Hidden"] = "data-iox-header-hidden";
18285
+ })(HeaderAttribute || (HeaderAttribute = {}));
18286
+ /** What a composed header gets (the `nav.*` patterns' `header`, the palette's Navigation bar). */
18287
+ const COMPOSED_HEADER = {
18288
+ behaviour: HeaderBehaviour.Hides,
18289
+ edge: HeaderEdge.Fade,
18290
+ };
18291
+ const BEHAVIOURS = new Set(Object.values(HeaderBehaviour));
18292
+ const EDGES = new Set(Object.values(HeaderEdge));
18293
+ /** A stored behaviour, or Scrolls for anything else. */
18294
+ function headerBehaviourOf(value) {
18295
+ return typeof value === 'string' && BEHAVIOURS.has(value) ? value : HeaderBehaviour.Scrolls;
18296
+ }
18297
+ /** A stored edge, or null (none chosen: the look's divider stays as it is). */
18298
+ function headerEdgeOf(value) {
18299
+ return typeof value === 'string' && EDGES.has(value) ? value : null;
18300
+ }
18301
+ /** True when the header keeps its place at the top of the screen (it stays, or it hides and comes back). */
18302
+ function headerStaysAtTop(behaviour) {
18303
+ return headerBehaviourOf(behaviour) !== HeaderBehaviour.Scrolls;
18304
+ }
18305
+ /** The attributes a header renders, from its two trait values — `{}` for a header that keeps today's behaviour. */
18306
+ function headerAttributes(behaviour, edge) {
18307
+ const out = {};
18308
+ const b = headerBehaviourOf(behaviour);
18309
+ if (b !== HeaderBehaviour.Scrolls)
18310
+ out[HeaderAttribute.Behaviour] = b;
18311
+ const e = headerEdgeOf(edge);
18312
+ if (e)
18313
+ out[HeaderAttribute.Edge] = e;
18314
+ return out;
18315
+ }
18316
+
16180
18317
  /** A pack's own sanity: every token row names itself and carries a value. Returns errors. */
16181
18318
  function validateFlavorPack(pack) {
16182
18319
  const errors = [];
@@ -18832,5 +20969,5 @@ function stylePresetOfChoices(choices) {
18832
20969
  * Generated bundle index. Do not edit.
18833
20970
  */
18834
20971
 
18835
- export { ACCENT_TOKEN_NAMES, ANIMATE_IDS, AdoptOutcome, AdoptSkipReason, BAR_RESERVE_BREAKPOINTS, BAR_RESERVE_CLASS, BETWEEN_IDS, BOTTOM_BAR_STYLE, BUTTON_VARIANT_TO_STYLE, CANVAS_LINK_ATTRIBUTE, CARD_LINK_CLASS, COLOR_SCHEMES, COLOR_SCHEME_TRAIT, COLOR_SCHEME_TYPES, ColorScheme, ColourCheckId, DEFAULT_FLAVOR_ID, DESIGN_TOKEN_GROUPS, DESIGN_TOKEN_TIERS, DESIGN_TOKEN_TYPES, DesignConfigKey, ELEMENT_STYLES, ELEMENT_STYLE_MARKER_CLASS, ELEMENT_STYLE_STATES, EMPTY_IMAGE_ATTRIBUTE, EMPTY_IMAGE_SRC, ElementStyleState, EntranceParam, FLAVOR_SPEC_VERSION, FONT_CATALOG, FONT_FAMILY_TOKENS, FONT_FILE_ACCEPT, FONT_FILE_EXTENSIONS, FONT_FILE_FORMATS, FONT_STYLES, FONT_WEIGHTS, FontUploadError, GOOGLE_FONTS_CSS_ORIGIN, GOOGLE_FONTS_FILE_ORIGIN, HELD_CONTRAST, INHERITED_TEXT, LinkType, MAX_FONT_FILE_BYTES, MOOD_IDS, MOOD_LABELS, NEW_NODE_STYLE_DEFAULTS, OwnedTraitLink, PALETTE_PRESETS, PRE_DS2_FLAVOR_DEFAULTS, PRE_MOTION, PRE_TINT_DEFAULT, REDUCED_DESIGN_MOTION, REDUCED_MOTION_OVERRIDES, REDUCED_TRANSPARENCY_OVERRIDES, REVERT_WINDOW_MS, ROW_INDEX_ATTRIBUTE, SCHEME_INK, SCROLL_IDS, SPEC_A11Y, SPEC_AXES, SPEC_BUTTON_VARIANT_TO_STYLE, SPEC_CONTRAST, SPEC_CONTRAST_AUDIT, SPEC_DEFAULT_ELEMENT_STYLE, SPEC_ELEMENT_STYLES, SPEC_FIELD_CLASS_BASELINE, SPEC_FLAVORS, SPEC_FLAVOR_PACKS, SPEC_FONTS, SPEC_FONT_ROLES, SPEC_INK_SCOPES, SPEC_LEGACY_ALIASES, SPEC_MOODS, SPEC_PALETTE_PRESETS, SPEC_SCHEMES, SPEC_SCHEME_INK, SPEC_SCRIPTS, SPEC_SPRINGS, SPEC_STYLE_PRESETS, SPEC_TIERS, SPEC_TIER_IDS, SPEC_TOKEN_TYPES, STAGGER_MAX_ITEMS, STAGGER_SHRINK, STYLE_PRESETS, SUPERSEDED_STYLE_VALUES, SWISS_FLAVOR, THEME_COLOR_TOKEN, TINT_FULL_CHROMA, TINT_IDS, TINT_LEVELS, TINT_OWN_HUE_CHROMA, TINT_TURN_CHROMA, USER_TOKEN_SOURCE, WCAG_AA_TEXT, WCAG_AA_UI, adoptElementStyles, adoptionStyleFor, apcaLc, applyElementStyle, applyHeadingLevelRule, atLightness, atLightnessMaxChroma, auditDesignContrast, barReserveClass, buildFlavorTokens, buildFontFaceCss, buttonBlockHref, catalogFontId, checkFontWeight, choicesForPack, colorSchemeClass, colorSchemeOf, colourTabChecks, compareFontWeights, compileSchemeCss, compileTokenCss, compileTokenCssBlocks, compositeOver, cssString, defaultDesignChoices, defaultElementStyleFor, deriveAccentTokens, deriveBrandTokens, designApplySnapshot, designBaseline, designConfigEntries, designModeOf, designMotionOf, designRevertConfig, designTokenRepairs, designTokenRows, drawsScript, elementStyleById, elementStyleClass, elementStylesFor, emptyImageLabelSrc, emptyImagePlaceholder, emptyImageSrc, ensureAlpha, ensureContrast, entranceDelay, flavorColours, flavorPackById, flavorSeedWrites, flavorSourceStamp, fontFamilyKey, fontFileName, fontFileStem, fontFormatOf, fontPreloads, fontRoleReferences, fontStackWithout, fontWeightCovers, fontWeightRange, fontWeightValue, fontsForTokens, formatFontFamilies, formatFontFamily, formatFontWeight, googleFontHref, groupFontFamilies, hasElementStyleMarker, headingHref, inSrgbGamut, isDesignTokenGroup, isDesignTokenTier, isDesignTokenType, isFontWeightRange, isRetiredFlavorId, legacyDesignTokenRows, legacyFlavorTokens, legacyRuleTokenReferences, matchFontWeight, missingDesignRows, missingFontRoles, nodeDesignClasses, normalizeFontStyle, normalizeFontWeight, normalizeFontWeightValue, oklabToRgb, ownedTraitStatus, ownedTraitsOf, packDesignChoices, paintColours, parseCssColour, parseFontFamilies, parseFontWeight, parseHexColor, planDesignApply, planDesignRevert, planFlavorRevert, planFlavorSeed, planFontFamilyRemoval, planSwissMigration, preTintAccentGrounds, presetChoices, presetModes, previewElementStyleAdoption, previewFontWeight, quantizeRgb, readDesignConfig, readOwnedTrait, relativeLuminance, releaseElementStyle, repeatedRowIndex, resolveDesignChoices, resolveDesignMotion, resolveSchemeTokenValues, resolveTokenReferences, resolveTokenValues, revertAvailable, rgbToOklab, ringColour, roleClass, sameDesignChoices, scriptsForLocale, setColorScheme, specTokenNames, splitTopLevel, springToLinear, stackNamesFamily, staggerDelay, styleKeyToKebab, stylePresetById, stylePresetOfChoices, switchElementStyle, syncNodeDesignClasses, themeColors, toHexColor, tokenReferences, tokensToDarkVarMap, tokensToVarMap, unknownTokenReferences, untouchedSeedRow, userFontStack, validateFlavorPack, wcagContrastRatio, withSchemeInk, withoutScriptPartners, writeOwnedTrait };
20972
+ export { ACCENT_TOKEN_NAMES, ANIMATE_IDS, AdoptOutcome, AdoptSkipReason, BAR_RESERVE_BREAKPOINTS, BAR_RESERVE_CLASS, BETWEEN_IDS, BOTTOM_BAR_STYLE, BUTTON_VARIANT_TO_STYLE, CANVAS_LINK_ATTRIBUTE, CARD_LINK_CLASS, COLOR_SCHEMES, COLOR_SCHEME_TRAIT, COLOR_SCHEME_TYPES, COMPOSED_HEADER, ColorScheme, ColourCheckId, DEFAULT_FLAVOR_ID, DESIGN_TOKEN_GROUPS, DESIGN_TOKEN_TIERS, DESIGN_TOKEN_TYPES, DesignConfigKey, ELEMENT_STYLES, ELEMENT_STYLE_MARKER_CLASS, ELEMENT_STYLE_STATES, EMPTY_IMAGE_ATTRIBUTE, EMPTY_IMAGE_SRC, ElementStyleState, EntranceParam, FLAVOR_SPEC_VERSION, FONT_CATALOG, FONT_FAMILY_TOKENS, FONT_FILE_ACCEPT, FONT_FILE_EXTENSIONS, FONT_FILE_FORMATS, FONT_STYLES, FONT_WEIGHTS, FontUploadError, GOOGLE_FONTS_CSS_ORIGIN, GOOGLE_FONTS_FILE_ORIGIN, HEADER_THEME_COLOR_TOKEN, HELD_CONTRAST, HeaderAttribute, HeaderBehaviour, HeaderEdge, HeaderTrait, INHERITED_TEXT, LinkType, MAX_FONT_FILE_BYTES, MOOD_IDS, MOOD_LABELS, NEW_NODE_STYLE_DEFAULTS, OwnedTraitLink, PALETTE_PRESETS, PRE_DS2_FLAVOR_DEFAULTS, PRE_MOTION, PRE_TINT_DEFAULT, REDUCED_DESIGN_MOTION, REDUCED_MOTION_OVERRIDES, REDUCED_TRANSPARENCY_OVERRIDES, REVERT_WINDOW_MS, ROW_INDEX_ATTRIBUTE, SCHEME_INK, SCROLL_IDS, SPEC_A11Y, SPEC_AXES, SPEC_BUTTON_VARIANT_TO_STYLE, SPEC_CONTRAST, SPEC_CONTRAST_AUDIT, SPEC_DEFAULT_ELEMENT_STYLE, SPEC_ELEMENT_STYLES, SPEC_FIELD_CLASS_BASELINE, SPEC_FLAVORS, SPEC_FLAVOR_PACKS, SPEC_FLOATING_BASELINE, SPEC_FONTS, SPEC_FONT_ROLES, SPEC_INK_SCOPES, SPEC_LEGACY_ALIASES, SPEC_MOODS, SPEC_PALETTE_PRESETS, SPEC_SCHEMES, SPEC_SCHEME_INK, SPEC_SCRIPTS, SPEC_SPRINGS, SPEC_STYLE_PRESETS, SPEC_TIERS, SPEC_TIER_IDS, SPEC_TOKEN_TYPES, STAGGER_MAX_ITEMS, STAGGER_SHRINK, STYLE_PRESETS, SUPERSEDED_STYLE_VALUES, SWISS_FLAVOR, THEME_COLOR_TOKEN, TINT_FULL_CHROMA, TINT_IDS, TINT_LEVELS, TINT_OWN_HUE_CHROMA, TINT_TURN_CHROMA, USER_TOKEN_SOURCE, WCAG_AA_TEXT, WCAG_AA_UI, adoptElementStyles, adoptionStyleFor, apcaLc, applyElementStyle, applyHeadingLevelRule, atLightness, atLightnessMaxChroma, auditDesignContrast, barReserveClass, buildFlavorTokens, buildFontFaceCss, buttonBlockHref, catalogFontId, checkFontWeight, choicesForPack, colorSchemeClass, colorSchemeOf, colourTabChecks, compareFontWeights, compileSchemeCss, compileTokenCss, compileTokenCssBlocks, compositeOver, cssString, defaultDesignChoices, defaultElementStyleFor, deriveAccentTokens, deriveBrandTokens, designApplySnapshot, designBaseline, designConfigEntries, designModeOf, designMotionOf, designRevertConfig, designTokenRepairs, designTokenRows, drawsScript, elementStyleById, elementStyleClass, elementStylesFor, emptyImageLabelSrc, emptyImagePlaceholder, emptyImageSrc, ensureAlpha, ensureContrast, entranceDelay, flavorColours, flavorPackById, flavorSeedWrites, flavorSourceStamp, fontFamilyKey, fontFileName, fontFileStem, fontFormatOf, fontPreloads, fontRoleReferences, fontStackWithout, fontWeightCovers, fontWeightRange, fontWeightValue, fontsForTokens, formatFontFamilies, formatFontFamily, formatFontWeight, googleFontHref, groupFontFamilies, hasElementStyleMarker, headerAttributes, headerBehaviourOf, headerEdgeOf, headerStaysAtTop, headingHref, inSrgbGamut, isDesignTokenGroup, isDesignTokenTier, isDesignTokenType, isFontWeightRange, isRetiredFlavorId, legacyDesignTokenRows, legacyFlavorTokens, legacyRuleTokenReferences, matchFontWeight, missingDesignRows, missingFontRoles, nodeDesignClasses, normalizeFontStyle, normalizeFontWeight, normalizeFontWeightValue, oklabToRgb, ownedTraitStatus, ownedTraitsOf, packDesignChoices, paintColours, parseCssColour, parseFontFamilies, parseFontWeight, parseHexColor, planDesignApply, planDesignRevert, planFlavorRevert, planFlavorSeed, planFontFamilyRemoval, planSwissMigration, preTintAccentGrounds, presetChoices, presetModes, previewElementStyleAdoption, previewFontWeight, quantizeRgb, readDesignConfig, readOwnedTrait, relativeLuminance, releaseElementStyle, repeatedRowIndex, resolveDesignChoices, resolveDesignMotion, resolveSchemeTokenValues, resolveTokenReferences, resolveTokenValues, revertAvailable, rgbToOklab, ringColour, roleClass, sameDesignChoices, scriptsForLocale, setColorScheme, specTokenNames, splitTopLevel, springToLinear, stackNamesFamily, staggerDelay, styleKeyToKebab, stylePresetById, stylePresetOfChoices, switchElementStyle, syncNodeDesignClasses, themeColors, toHexColor, tokenReferences, tokensToDarkVarMap, tokensToVarMap, unknownTokenReferences, untouchedSeedRow, userFontStack, validateFlavorPack, wcagContrastRatio, withSchemeInk, withoutScriptPartners, writeOwnedTrait };
18836
20973
  //# sourceMappingURL=vectoriox-iox-ui-design-core.mjs.map