[READ-ONLY] Mirror of https://github.com/lukebennett88/luke-ui. luke-ui.netlify.app

Delete the recipe code nothing uses, and the leftovers (#272) master

The recipe engine had two features with no consumers. `extend` was declared on both config shapes and implemented across three functions, including the recursive config merging that was also the only untested logic in the file. Slotted compound variants were similar: the four slot-using recipes declare no compound variants, and the two recipes that do are both single part. Deleting both takes recipe.ts from 457 to 354 lines. Single-part compound variants stay, because button and text use them. Re-add either the day a second recipe needs it. Delete the nine hand-written Text variant types rather than deriving them. Four string unions and three key arrays duplicated what the recipe already knows with nothing type-checking the two against each other, so adding a wrap value or a colour role would have gone stale silently. All nine were exported publicly with no consumers, invisible to knip because the barrel is an entry point. Text's own component already derives its prop types by indexing TextVariants, and button, field and icon already export only the aggregate, so the barrel now matches that convention. input-states.css.ts emits no CSS at all, yet the suffix marked it as having side effects and kept it out of consumer tree shaking. Renamed to input-states.ts. The barrel exported loadingSkeleton as a plain class string among twelve callable recipes, which invited a consumer to call it; it is now loadingSkeletonClassName. Renaming rather than wrapping it in recipe() keeps the emitted CSS untouched. Two recipes also both exported something named `icon`, so icon-button's is now iconButtonIcon. The emitted stylesheet is byte-identical at 78007 bytes and the v2 goldens are unchanged, which is expected: the deleted code paths were never exercised, and the renames do not reach content-hashed class names.