@wizeworks/silicaui-mcp 0.30.0 → 0.32.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.
@@ -1166,6 +1166,9 @@
1166
1166
  "blockquote-cite",
1167
1167
  "caption",
1168
1168
  "display",
1169
+ "display-1",
1170
+ "display-2",
1171
+ "display-3",
1169
1172
  "h1",
1170
1173
  "h2",
1171
1174
  "h3",
@@ -1278,5 +1281,22 @@
1278
1281
  "text-success-content",
1279
1282
  "text-warning",
1280
1283
  "text-warning-content"
1284
+ ],
1285
+ "type-scale": [
1286
+ "text-xs",
1287
+ "text-sm",
1288
+ "text-md",
1289
+ "text-base",
1290
+ "text-lg",
1291
+ "text-xl",
1292
+ "text-2xl",
1293
+ "text-3xl",
1294
+ "text-4xl",
1295
+ "text-5xl",
1296
+ "text-6xl",
1297
+ "text-7xl",
1298
+ "text-8xl",
1299
+ "text-9xl",
1300
+ "text-10xl"
1281
1301
  ]
1282
1302
  }
@@ -3801,7 +3801,7 @@
3801
3801
  "props": [
3802
3802
  {
3803
3803
  "name": "FileInputProps",
3804
- "extends": "extends VoidElementProps<\n Omit<React.InputHTMLAttributes<HTMLInputElement>, \"type\" | \"size\">\n >",
3804
+ "extends": "extends VoidElementProps<\r\n Omit<React.InputHTMLAttributes<HTMLInputElement>, \"type\" | \"size\">\r\n >",
3805
3805
  "members": [
3806
3806
  {
3807
3807
  "name": "size",
@@ -6271,7 +6271,7 @@
6271
6271
  ]
6272
6272
  }
6273
6273
  ],
6274
- "usageExample": "import {\r\n Dialog,\r\n DialogTrigger,\r\n DialogClose,\r\n DialogContent,\r\n DialogTitle,\r\n DialogDescription,\r\n DialogHeader,\r\n DialogFooter,\r\n Button,\r\n} from \"@wizeworks/silicaui-react\";\r\nimport { Section, Row } from \"../lib/Section\";\r\n\r\nexport function DialogDemo() {\r\n return (\r\n <>\r\n <Section title=\"Real use · destructive-action confirmation\">\r\n <Dialog>\r\n <DialogTrigger>\r\n <Button color=\"error\" variant=\"outline\">\r\n Delete project…\r\n </Button>\r\n </DialogTrigger>\r\n <DialogContent>\r\n <DialogTitle>Delete project?</DialogTitle>\r\n <DialogDescription>\r\n This will permanently delete the project and all its data. This\r\n can't be undone.\r\n </DialogDescription>\r\n <div className=\"mt-4 flex justify-end gap-2\">\r\n <DialogClose>\r\n <Button variant=\"ghost\" color=\"neutral\">\r\n Cancel\r\n </Button>\r\n </DialogClose>\r\n <DialogClose>\r\n <Button color=\"error\">Delete</Button>\r\n </DialogClose>\r\n </div>\r\n </DialogContent>\r\n </Dialog>\r\n </Section>\r\n\r\n <Section title=\"Header + Footer · placeable docking bars, sticky footer\">\r\n <Row>\r\n <Dialog>\r\n <DialogTrigger>\r\n <Button variant=\"outline\">Header/Footer</Button>\r\n </DialogTrigger>\r\n <DialogContent>\r\n <DialogHeader>\r\n <DialogTitle>Invite teammates</DialogTitle>\r\n <DialogClose>\r\n <Button variant=\"ghost\" shape=\"circle\" size=\"sm\">\r\n ✕\r\n </Button>\r\n </DialogClose>\r\n </DialogHeader>\r\n <DialogDescription>\r\n Send an invite by email — they'll get access once they accept.\r\n </DialogDescription>\r\n <DialogFooter>\r\n <DialogClose>\r\n <Button variant=\"ghost\" color=\"neutral\">\r\n Cancel\r\n </Button>\r\n </DialogClose>\r\n <DialogClose>\r\n <Button>Send invite</Button>\r\n </DialogClose>\r\n </DialogFooter>\r\n </DialogContent>\r\n </Dialog>\r\n\r\n <Dialog>\r\n <DialogTrigger>\r\n <Button variant=\"outline\">Sticky footer (scrolling content)</Button>\r\n </DialogTrigger>\r\n <DialogContent className=\"max-h-[70dvh]\">\r\n <DialogHeader sticky>\r\n <DialogTitle>Terms of service</DialogTitle>\r\n </DialogHeader>\r\n <DialogDescription>\r\n {Array.from({ length: 12 }, (_, i) => (\r\n <p key={i} className=\"mb-3\">\r\n Section {i + 1} — placeholder legal text to force this\r\n dialog to scroll so the sticky footer below stays pinned.\r\n </p>\r\n ))}\r\n </DialogDescription>\r\n <DialogFooter sticky>\r\n <DialogClose>\r\n <Button variant=\"ghost\" color=\"neutral\">\r\n Decline\r\n </Button>\r\n </DialogClose>\r\n <DialogClose>\r\n <Button>Accept</Button>\r\n </DialogClose>\r\n </DialogFooter>\r\n </DialogContent>\r\n </Dialog>\r\n </Row>\r\n </Section>\r\n\r\n <Section title=\"Glass · frosted popup over the dimmed backdrop\">\r\n <Dialog>\r\n <DialogTrigger>\r\n <Button variant=\"outline\">Glass dialog</Button>\r\n </DialogTrigger>\r\n <DialogContent className=\"glass\">\r\n <DialogTitle>Restart required</DialogTitle>\r\n <DialogDescription>\r\n <code>DialogContent className=&quot;glass&quot;</code> frosts the\r\n popup over the existing dimmed backdrop — same class, no new prop.\r\n </DialogDescription>\r\n <div className=\"mt-4 flex justify-end gap-2\">\r\n <DialogClose>\r\n <Button variant=\"ghost\" color=\"neutral\">\r\n Later\r\n </Button>\r\n </DialogClose>\r\n <DialogClose>\r\n <Button>Restart now</Button>\r\n </DialogClose>\r\n </div>\r\n </DialogContent>\r\n </Dialog>\r\n </Section>\r\n </>\r\n );\r\n}"
6274
+ "usageExample": "import {\r\n Dialog,\r\n DialogTrigger,\r\n DialogClose,\r\n DialogContent,\r\n DialogTitle,\r\n DialogDescription,\r\n DialogHeader,\r\n DialogFooter,\r\n Button,\r\n} from \"@wizeworks/silicaui-react\";\r\nimport { Section, Row } from \"../lib/Section\";\r\n\r\nexport function DialogDemo() {\r\n return (\r\n <>\r\n <Section title=\"Real use · destructive-action confirmation\">\r\n <Dialog>\r\n <DialogTrigger>\r\n <Button color=\"error\" variant=\"outline\">\r\n Delete project…\r\n </Button>\r\n </DialogTrigger>\r\n <DialogContent>\r\n <DialogTitle>Delete project?</DialogTitle>\r\n <DialogDescription>\r\n This will permanently delete the project and all its data. This\r\n can't be undone.\r\n </DialogDescription>\r\n <div className=\"mt-4 flex justify-end gap-2\">\r\n <DialogClose>\r\n <Button variant=\"ghost\" color=\"neutral\">\r\n Cancel\r\n </Button>\r\n </DialogClose>\r\n <DialogClose>\r\n <Button color=\"error\">Delete</Button>\r\n </DialogClose>\r\n </div>\r\n </DialogContent>\r\n </Dialog>\r\n </Section>\r\n\r\n <Section title=\"Header + Footer · placeable docking bars, sticky footer\">\r\n <Row>\r\n <Dialog>\r\n <DialogTrigger>\r\n <Button variant=\"outline\">Header/Footer</Button>\r\n </DialogTrigger>\r\n <DialogContent>\r\n <DialogHeader>\r\n <DialogTitle>Invite teammates</DialogTitle>\r\n <DialogClose>\r\n <Button variant=\"ghost\" shape=\"circle\" size=\"sm\">\r\n ✕\r\n </Button>\r\n </DialogClose>\r\n </DialogHeader>\r\n <DialogDescription>\r\n Send an invite by email — they'll get access once they accept.\r\n </DialogDescription>\r\n <DialogFooter>\r\n <DialogClose>\r\n <Button variant=\"ghost\" color=\"neutral\">\r\n Cancel\r\n </Button>\r\n </DialogClose>\r\n <DialogClose>\r\n <Button>Send invite</Button>\r\n </DialogClose>\r\n </DialogFooter>\r\n </DialogContent>\r\n </Dialog>\r\n\r\n <Dialog>\r\n <DialogTrigger>\r\n <Button variant=\"outline\">Sticky footer (scrolling content)</Button>\r\n </DialogTrigger>\r\n <DialogContent className=\"max-h-[70dvh]\">\r\n <DialogHeader sticky>\r\n <DialogTitle>Terms of service</DialogTitle>\r\n </DialogHeader>\r\n <div>\r\n {Array.from({ length: 12 }, (_, i) => (\r\n <p key={i} className=\"mb-3\">\r\n Section {i + 1} — placeholder legal text to force this\r\n dialog to scroll so the sticky footer below stays pinned.\r\n </p>\r\n ))}\r\n </div>\r\n <DialogFooter sticky>\r\n <DialogClose>\r\n <Button variant=\"ghost\" color=\"neutral\">\r\n Decline\r\n </Button>\r\n </DialogClose>\r\n <DialogClose>\r\n <Button>Accept</Button>\r\n </DialogClose>\r\n </DialogFooter>\r\n </DialogContent>\r\n </Dialog>\r\n </Row>\r\n </Section>\r\n\r\n <Section title=\"Glass · frosted popup over the dimmed backdrop\">\r\n <Dialog>\r\n <DialogTrigger>\r\n <Button variant=\"outline\">Glass dialog</Button>\r\n </DialogTrigger>\r\n <DialogContent className=\"glass\">\r\n <DialogTitle>Restart required</DialogTitle>\r\n <DialogDescription>\r\n <code>DialogContent className=&quot;glass&quot;</code> frosts the\r\n popup over the existing dimmed backdrop — same class, no new prop.\r\n </DialogDescription>\r\n <div className=\"mt-4 flex justify-end gap-2\">\r\n <DialogClose>\r\n <Button variant=\"ghost\" color=\"neutral\">\r\n Later\r\n </Button>\r\n </DialogClose>\r\n <DialogClose>\r\n <Button>Restart now</Button>\r\n </DialogClose>\r\n </div>\r\n </DialogContent>\r\n </Dialog>\r\n </Section>\r\n </>\r\n );\r\n}"
6275
6275
  },
6276
6276
  {
6277
6277
  "name": "Drawer",
@@ -6648,7 +6648,7 @@
6648
6648
  ]
6649
6649
  }
6650
6650
  ],
6651
- "usageExample": "import { useState, useEffect } from \"react\";\nimport { RadialProgress } from \"@wizeworks/silicaui-react\";\nimport { Section, Row } from \"../lib/Section\";\nimport { COLORS } from \"../lib/data\";\n\nexport function RadialProgressDemo() {\n const [pct, setPct] = useState(0);\n\n useEffect(() => {\n const id = setInterval(() => setPct((p) => (p >= 100 ? 0 : p + 5)), 200);\n return () => clearInterval(id);\n }, []);\n\n return (\n <>\n <Section title=\"Colors\">\n <Row>\n {COLORS.slice(0, 6).map((color) => (\n <RadialProgress key={color} value={70} color={color} />\n ))}\n </Row>\n </Section>\n\n <Section title=\"Sizes\">\n <Row>\n <RadialProgress value={60} color=\"primary\" diameter=\"3rem\" thickness=\"0.35rem\" />\n <RadialProgress value={60} color=\"primary\" diameter=\"5rem\" thickness=\"0.5rem\" />\n <RadialProgress value={60} color=\"primary\" diameter=\"8rem\" thickness=\"0.75rem\" />\n </Row>\n </Section>\n\n <Section title=\"Real use · animated upload progress\">\n <RadialProgress value={pct} color=\"brand\" diameter=\"6rem\" />\n </Section>\n </>\n );\n}"
6651
+ "usageExample": "import { useState, useEffect } from \"react\";\r\nimport { RadialProgress } from \"@wizeworks/silicaui-react\";\r\nimport { Section, Row } from \"../lib/Section\";\r\nimport { COLORS } from \"../lib/data\";\r\n\r\nexport function RadialProgressDemo() {\r\n const [pct, setPct] = useState(0);\r\n\r\n useEffect(() => {\r\n const id = setInterval(() => setPct((p) => (p >= 100 ? 0 : p + 5)), 200);\r\n return () => clearInterval(id);\r\n }, []);\r\n\r\n return (\r\n <>\r\n <Section title=\"Colors\">\r\n <Row>\r\n {COLORS.slice(0, 6).map((color) => (\r\n <RadialProgress key={color} value={70} color={color} />\r\n ))}\r\n </Row>\r\n </Section>\r\n\r\n <Section title=\"Sizes\">\r\n <Row>\r\n <RadialProgress value={60} color=\"primary\" diameter=\"3rem\" thickness=\"0.35rem\" />\r\n <RadialProgress value={60} color=\"primary\" diameter=\"5rem\" thickness=\"0.5rem\" />\r\n <RadialProgress value={60} color=\"primary\" diameter=\"8rem\" thickness=\"0.75rem\" />\r\n </Row>\r\n </Section>\r\n\r\n <Section title=\"Real use · animated upload progress\">\r\n <RadialProgress value={pct} color=\"brand\" diameter=\"6rem\" />\r\n </Section>\r\n </>\r\n );\r\n}"
6652
6652
  },
6653
6653
  {
6654
6654
  "name": "Skeleton",
@@ -7616,11 +7616,17 @@
7616
7616
  "type": "HeadingLevel",
7617
7617
  "doc": "Semantic level → renders `<h1>`…`<h6>`. Default 2."
7618
7618
  },
7619
+ {
7620
+ "name": "size",
7621
+ "optional": true,
7622
+ "type": "HeadingSize",
7623
+ "doc": "Visual size, independent of the semantic `level`: an h-level (`1`–`6`), `\"display\"`, or `\"display-1\"`–`\"display-3\"`. Omit to use the tag default — set it only when the outline needs one level but the design wants another size (an `<h2>` that should read as an h4, a hero `<h1>` sized to `display-1`)."
7624
+ },
7619
7625
  {
7620
7626
  "name": "visualLevel",
7621
7627
  "optional": true,
7622
- "type": "HeadingLevel | \"display\"",
7623
- "doc": "Visual heading scale (`1`–`6` or `\"display\"`), independent of the semantic `level`; omit to use the tag default. Named `visualLevel`, not `size`, on purpose: everywhere else in Silica `size` is the `xs`–`xl` token scale, and a prop that takes `3` in one component and `\"lg\"` in the next is a prop in name only."
7628
+ "type": "HeadingSize",
7629
+ "doc": "@deprecated Renamed to `size`. Still honored; `size` wins if both are set."
7624
7630
  }
7625
7631
  ]
7626
7632
  },
@@ -7632,7 +7638,19 @@
7632
7638
  "name": "level",
7633
7639
  "optional": true,
7634
7640
  "type": "HeadingLevel",
7635
- "doc": "Semantic level for the outline (the look is always `.display`). Default 1."
7641
+ "doc": "Semantic level for the outline (default 1) — independent of the visual size."
7642
+ },
7643
+ {
7644
+ "name": "size",
7645
+ "optional": true,
7646
+ "type": "DisplayStep",
7647
+ "doc": "Which step of the display ramp (`1`–`3`, largest → smallest). Omit for the base `.display` (equal to `.display-3`)."
7648
+ },
7649
+ {
7650
+ "name": "visualLevel",
7651
+ "optional": true,
7652
+ "type": "DisplayStep",
7653
+ "doc": "@deprecated Renamed to `size`. Still honored; `size` wins if both are set."
7636
7654
  }
7637
7655
  ]
7638
7656
  },
@@ -7646,6 +7664,12 @@
7646
7664
  "type": "TextVariant",
7647
7665
  "doc": "`body` (default), `lead` (larger intro), or `caption` (small, muted)."
7648
7666
  },
7667
+ {
7668
+ "name": "size",
7669
+ "optional": true,
7670
+ "type": "TextSize",
7671
+ "doc": "Explicit font size from the type scale (`text-*`). Overrides the size implied by `variant`; omit to use the variant's own size."
7672
+ },
7649
7673
  {
7650
7674
  "name": "as",
7651
7675
  "optional": true,
@@ -7678,7 +7702,7 @@
7678
7702
  "package": "@wizeworks/silicaui-react",
7679
7703
  "category": "Typography",
7680
7704
  "sourceFile": "silicaui-react/src/typography.tsx",
7681
- "description": "Oversized hero/display heading (`.display`) on a semantic heading element.",
7705
+ "description": "Oversized hero/display heading on a semantic heading element.",
7682
7706
  "props": [
7683
7707
  {
7684
7708
  "name": "HeadingProps",
@@ -7690,11 +7714,17 @@
7690
7714
  "type": "HeadingLevel",
7691
7715
  "doc": "Semantic level → renders `<h1>`…`<h6>`. Default 2."
7692
7716
  },
7717
+ {
7718
+ "name": "size",
7719
+ "optional": true,
7720
+ "type": "HeadingSize",
7721
+ "doc": "Visual size, independent of the semantic `level`: an h-level (`1`–`6`), `\"display\"`, or `\"display-1\"`–`\"display-3\"`. Omit to use the tag default — set it only when the outline needs one level but the design wants another size (an `<h2>` that should read as an h4, a hero `<h1>` sized to `display-1`)."
7722
+ },
7693
7723
  {
7694
7724
  "name": "visualLevel",
7695
7725
  "optional": true,
7696
- "type": "HeadingLevel | \"display\"",
7697
- "doc": "Visual heading scale (`1`–`6` or `\"display\"`), independent of the semantic `level`; omit to use the tag default. Named `visualLevel`, not `size`, on purpose: everywhere else in Silica `size` is the `xs`–`xl` token scale, and a prop that takes `3` in one component and `\"lg\"` in the next is a prop in name only."
7726
+ "type": "HeadingSize",
7727
+ "doc": "@deprecated Renamed to `size`. Still honored; `size` wins if both are set."
7698
7728
  }
7699
7729
  ]
7700
7730
  },
@@ -7706,7 +7736,19 @@
7706
7736
  "name": "level",
7707
7737
  "optional": true,
7708
7738
  "type": "HeadingLevel",
7709
- "doc": "Semantic level for the outline (the look is always `.display`). Default 1."
7739
+ "doc": "Semantic level for the outline (default 1) — independent of the visual size."
7740
+ },
7741
+ {
7742
+ "name": "size",
7743
+ "optional": true,
7744
+ "type": "DisplayStep",
7745
+ "doc": "Which step of the display ramp (`1`–`3`, largest → smallest). Omit for the base `.display` (equal to `.display-3`)."
7746
+ },
7747
+ {
7748
+ "name": "visualLevel",
7749
+ "optional": true,
7750
+ "type": "DisplayStep",
7751
+ "doc": "@deprecated Renamed to `size`. Still honored; `size` wins if both are set."
7710
7752
  }
7711
7753
  ]
7712
7754
  },
@@ -7720,6 +7762,12 @@
7720
7762
  "type": "TextVariant",
7721
7763
  "doc": "`body` (default), `lead` (larger intro), or `caption` (small, muted)."
7722
7764
  },
7765
+ {
7766
+ "name": "size",
7767
+ "optional": true,
7768
+ "type": "TextSize",
7769
+ "doc": "Explicit font size from the type scale (`text-*`). Overrides the size implied by `variant`; omit to use the variant's own size."
7770
+ },
7723
7771
  {
7724
7772
  "name": "as",
7725
7773
  "optional": true,
@@ -7764,11 +7812,17 @@
7764
7812
  "type": "HeadingLevel",
7765
7813
  "doc": "Semantic level → renders `<h1>`…`<h6>`. Default 2."
7766
7814
  },
7815
+ {
7816
+ "name": "size",
7817
+ "optional": true,
7818
+ "type": "HeadingSize",
7819
+ "doc": "Visual size, independent of the semantic `level`: an h-level (`1`–`6`), `\"display\"`, or `\"display-1\"`–`\"display-3\"`. Omit to use the tag default — set it only when the outline needs one level but the design wants another size (an `<h2>` that should read as an h4, a hero `<h1>` sized to `display-1`)."
7820
+ },
7767
7821
  {
7768
7822
  "name": "visualLevel",
7769
7823
  "optional": true,
7770
- "type": "HeadingLevel | \"display\"",
7771
- "doc": "Visual heading scale (`1`–`6` or `\"display\"`), independent of the semantic `level`; omit to use the tag default. Named `visualLevel`, not `size`, on purpose: everywhere else in Silica `size` is the `xs`–`xl` token scale, and a prop that takes `3` in one component and `\"lg\"` in the next is a prop in name only."
7824
+ "type": "HeadingSize",
7825
+ "doc": "@deprecated Renamed to `size`. Still honored; `size` wins if both are set."
7772
7826
  }
7773
7827
  ]
7774
7828
  },
@@ -7780,7 +7834,19 @@
7780
7834
  "name": "level",
7781
7835
  "optional": true,
7782
7836
  "type": "HeadingLevel",
7783
- "doc": "Semantic level for the outline (the look is always `.display`). Default 1."
7837
+ "doc": "Semantic level for the outline (default 1) — independent of the visual size."
7838
+ },
7839
+ {
7840
+ "name": "size",
7841
+ "optional": true,
7842
+ "type": "DisplayStep",
7843
+ "doc": "Which step of the display ramp (`1`–`3`, largest → smallest). Omit for the base `.display` (equal to `.display-3`)."
7844
+ },
7845
+ {
7846
+ "name": "visualLevel",
7847
+ "optional": true,
7848
+ "type": "DisplayStep",
7849
+ "doc": "@deprecated Renamed to `size`. Still honored; `size` wins if both are set."
7784
7850
  }
7785
7851
  ]
7786
7852
  },
@@ -7794,6 +7860,12 @@
7794
7860
  "type": "TextVariant",
7795
7861
  "doc": "`body` (default), `lead` (larger intro), or `caption` (small, muted)."
7796
7862
  },
7863
+ {
7864
+ "name": "size",
7865
+ "optional": true,
7866
+ "type": "TextSize",
7867
+ "doc": "Explicit font size from the type scale (`text-*`). Overrides the size implied by `variant`; omit to use the variant's own size."
7868
+ },
7797
7869
  {
7798
7870
  "name": "as",
7799
7871
  "optional": true,
@@ -7860,11 +7932,17 @@
7860
7932
  "type": "HeadingLevel",
7861
7933
  "doc": "Semantic level → renders `<h1>`…`<h6>`. Default 2."
7862
7934
  },
7935
+ {
7936
+ "name": "size",
7937
+ "optional": true,
7938
+ "type": "HeadingSize",
7939
+ "doc": "Visual size, independent of the semantic `level`: an h-level (`1`–`6`), `\"display\"`, or `\"display-1\"`–`\"display-3\"`. Omit to use the tag default — set it only when the outline needs one level but the design wants another size (an `<h2>` that should read as an h4, a hero `<h1>` sized to `display-1`)."
7940
+ },
7863
7941
  {
7864
7942
  "name": "visualLevel",
7865
7943
  "optional": true,
7866
- "type": "HeadingLevel | \"display\"",
7867
- "doc": "Visual heading scale (`1`–`6` or `\"display\"`), independent of the semantic `level`; omit to use the tag default. Named `visualLevel`, not `size`, on purpose: everywhere else in Silica `size` is the `xs`–`xl` token scale, and a prop that takes `3` in one component and `\"lg\"` in the next is a prop in name only."
7944
+ "type": "HeadingSize",
7945
+ "doc": "@deprecated Renamed to `size`. Still honored; `size` wins if both are set."
7868
7946
  }
7869
7947
  ]
7870
7948
  },
@@ -7876,7 +7954,19 @@
7876
7954
  "name": "level",
7877
7955
  "optional": true,
7878
7956
  "type": "HeadingLevel",
7879
- "doc": "Semantic level for the outline (the look is always `.display`). Default 1."
7957
+ "doc": "Semantic level for the outline (default 1) — independent of the visual size."
7958
+ },
7959
+ {
7960
+ "name": "size",
7961
+ "optional": true,
7962
+ "type": "DisplayStep",
7963
+ "doc": "Which step of the display ramp (`1`–`3`, largest → smallest). Omit for the base `.display` (equal to `.display-3`)."
7964
+ },
7965
+ {
7966
+ "name": "visualLevel",
7967
+ "optional": true,
7968
+ "type": "DisplayStep",
7969
+ "doc": "@deprecated Renamed to `size`. Still honored; `size` wins if both are set."
7880
7970
  }
7881
7971
  ]
7882
7972
  },
@@ -7890,6 +7980,12 @@
7890
7980
  "type": "TextVariant",
7891
7981
  "doc": "`body` (default), `lead` (larger intro), or `caption` (small, muted)."
7892
7982
  },
7983
+ {
7984
+ "name": "size",
7985
+ "optional": true,
7986
+ "type": "TextSize",
7987
+ "doc": "Explicit font size from the type scale (`text-*`). Overrides the size implied by `variant`; omit to use the variant's own size."
7988
+ },
7893
7989
  {
7894
7990
  "name": "as",
7895
7991
  "optional": true,
@@ -156,6 +156,99 @@
156
156
  ],
157
157
  "typography": {
158
158
  "baseFontSize": "100% (≈16px) — an explicit anchor, not the UA default by accident; the whole rem-based type scale (text-md = 1rem) scales with it.",
159
+ "scale": {
160
+ "xs": {
161
+ "class": "text-xs",
162
+ "fontSize": "0.75rem",
163
+ "px": 12,
164
+ "lineHeight": "1rem"
165
+ },
166
+ "sm": {
167
+ "class": "text-sm",
168
+ "fontSize": "0.875rem",
169
+ "px": 14,
170
+ "lineHeight": "1.25rem"
171
+ },
172
+ "md": {
173
+ "class": "text-md",
174
+ "fontSize": "1rem",
175
+ "px": 16,
176
+ "lineHeight": "1.5rem"
177
+ },
178
+ "base": {
179
+ "class": "text-base",
180
+ "fontSize": "1rem",
181
+ "px": 16,
182
+ "lineHeight": "1.5rem"
183
+ },
184
+ "lg": {
185
+ "class": "text-lg",
186
+ "fontSize": "1.125rem",
187
+ "px": 18,
188
+ "lineHeight": "1.75rem"
189
+ },
190
+ "xl": {
191
+ "class": "text-xl",
192
+ "fontSize": "1.25rem",
193
+ "px": 20,
194
+ "lineHeight": "1.75rem"
195
+ },
196
+ "2xl": {
197
+ "class": "text-2xl",
198
+ "fontSize": "1.5rem",
199
+ "px": 24,
200
+ "lineHeight": "2rem"
201
+ },
202
+ "3xl": {
203
+ "class": "text-3xl",
204
+ "fontSize": "1.875rem",
205
+ "px": 30,
206
+ "lineHeight": "2.25rem"
207
+ },
208
+ "4xl": {
209
+ "class": "text-4xl",
210
+ "fontSize": "2.25rem",
211
+ "px": 36,
212
+ "lineHeight": "2.5rem"
213
+ },
214
+ "5xl": {
215
+ "class": "text-5xl",
216
+ "fontSize": "3rem",
217
+ "px": 48,
218
+ "lineHeight": "1"
219
+ },
220
+ "6xl": {
221
+ "class": "text-6xl",
222
+ "fontSize": "3.75rem",
223
+ "px": 60,
224
+ "lineHeight": "1"
225
+ },
226
+ "7xl": {
227
+ "class": "text-7xl",
228
+ "fontSize": "4.5rem",
229
+ "px": 72,
230
+ "lineHeight": "1"
231
+ },
232
+ "8xl": {
233
+ "class": "text-8xl",
234
+ "fontSize": "6rem",
235
+ "px": 96,
236
+ "lineHeight": "1"
237
+ },
238
+ "9xl": {
239
+ "class": "text-9xl",
240
+ "fontSize": "8rem",
241
+ "px": 128,
242
+ "lineHeight": "1"
243
+ },
244
+ "10xl": {
245
+ "class": "text-10xl",
246
+ "fontSize": "10rem",
247
+ "px": 160,
248
+ "lineHeight": "1"
249
+ }
250
+ },
251
+ "scaleNote": "The `text-*` size ladder — `text-md` == `text-base` == 1rem == 16px. `text-8xl`/`9xl` match Tailwind's defaults; `text-10xl` (160px) extends past them. Prefer a step over a `text-[13px]` magic number.",
159
252
  "fontFamilyTokens": [
160
253
  "--font-sans",
161
254
  "--font-serif",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wizeworks/silicaui-mcp",
3
- "version": "0.30.0",
3
+ "version": "0.32.0",
4
4
  "description": "A local MCP server that lets AI coding assistants query the Silica UI design system — real class names, component props, blocks, and behaviors — instead of guessing.",
5
5
  "type": "module",
6
6
  "license": "MIT",