Major Changes
-
b7122c0: feat(DST-1213)!: migrate
@marigold/iconsto alucide-reactproxy with 13 custom icons.BREAKING CHANGE: All custom icons without a Lucide equivalent remain; icons with a Lucide equivalent have been removed. Consumers should import equivalents from the re-exported
lucide-react, available through the same package:// Before import { Search, Check, Add, Ticket, Seat, Deal } from '@marigold/icons'; // After (Search, Check still work, re-exported from Lucide) import { Search, Check, Plus as Add, Ticket, Armchair as Seat, BadgePercent as Deal, } from '@marigold/icons';
Using icons
Always import from
@marigold/icons(not directly fromlucide-react). The package re-exports the entire Lucide catalogue plus the 13 retained custom icons:import { DesignTicket, Search, Stadium } from '@marigold/icons';
Pass
sizeandstrokeWidthas props.sizeis now serialized as a numeric attribute (width="24") instead of"24px":<Search size={20} strokeWidth={1.5} />
Coloring
Style with Tailwind text utilities — icons inherit
currentColor, so anytext-*color (including theme tokens) flows through:<TriangleAlert className="text-warning-accent" /> <DesignTicket className="text-primary-700" />
Avoid the
colorprop for theme tokens (Lucide reads it as a literal CSS color value, so"warning"won't resolve). Reservecolor/fill/strokefor literal values likevar(--color-...)or hex codes.Custom icons (filled vs. outline)
11 of the 13 customs are filled silhouettes wrapped with a small helper that defaults
fillandstroketocurrentColorand couples thecolor,fill, andstrokeprops so they move together. Passstrokeexplicitly to differentiate:<DesignTicket fill="var(--color-destructive-accent)" /> <DesignTicket fill="var(--color-destructive-accent)" stroke="var(--color-info-accent)" />
InstagramandTwitterare stroke-based outlines and follow Lucide's standardcolor→strokebehavior.Accessibility
Icons get
aria-hidden="true"automatically when rendered without children or anaria-*attribute. Providearia-labelfor standalone meaningful icons.Other changes
- Custom icons share
LucideProps,<LucideProvider>context, and ref forwarding with the re-exports. - Peer dependency narrowed to
react: >=19.0.0(custom icons rely on React 19's ref-as-prop).
- Custom icons share
Patch Changes
- Updated dependencies [b7122c0]
- Updated dependencies [b7122c0]
- Updated dependencies [b7122c0]
- Updated dependencies [b7122c0]
- Updated dependencies [b7122c0]
- Updated dependencies [b7122c0]
- Updated dependencies [b7122c0]
- Updated dependencies [b7122c0]
- Updated dependencies [b7122c0]
- Updated dependencies [b7122c0]
- Updated dependencies [b7122c0]
- Updated dependencies [b7122c0]
- Updated dependencies [b7122c0]
- Updated dependencies [b7122c0]
- Updated dependencies [b7122c0]
- Updated dependencies [b7122c0]
- Updated dependencies [b7122c0]
- Updated dependencies [b7122c0]
- Updated dependencies [b7122c0]
- Updated dependencies [b7122c0]
- Updated dependencies [b7122c0]
- Updated dependencies [b7122c0]
- Updated dependencies [b7122c0]
- Updated dependencies [b7122c0]
- Updated dependencies [b7122c0]
- Updated dependencies [b7122c0]
- Updated dependencies [b7122c0]
- Updated dependencies [b7122c0]
- Updated dependencies [b7122c0]
- Updated dependencies [b7122c0]
- @marigold/system@18.0.0