Plan step 36 (containment group, error pages): errors::minimal's class lists move into resources/css/components/error-page.css, keyed on data-md-error-page/-art/-shape/-code/-headline/-message/-actions; body carries no hook of its own and is styled by a bare `body` selector, matching how ErrorPage::fallbackStyles() already styles it (no other rewritten view is a full HTML document). The section contract (title, code, headline, message, shape, actions) and the framework's 401/402 compatibility are untouched, since neither depends on a class or a hook. The shape's <x-shape> (a component outside this batch, and one with no "fill the parent" prop) is coloured and sized to its container by a plain `svg` descendant selector rather than a class or a new prop. The page's font stays a literal system stack, not var(--md-ref-typeface-brand): Tailwind's own `font-sans` utility this replaces was never the brand font either (resources/css/tokens/theme.css's --font-sans is the only utility that is), and an error page must read before any webfont has loaded. ErrorPage::fallbackStyles() draws onto the same hooks, renamed the same way (data-error-* -> data-md-error-*, data-error-fallback -> data-md-error-fallback) so the no-build path keeps working; how it is built (a hand-written heredoc, not Stylesheets::bundle()) is unchanged, per step 40. Updated in the same commit: tests/Feature/ErrorPagesTest.php and tests/Browser/ErrorPagesTest.php. The error pages' views live outside resources/views/components/, so they are not in ContainmentStylesheetsTest's dataset (its "imports what its view renders" check reads a fixed resources/views/components/<name>.blade.php path); adapted tests/Feature/ErrorPagesTest.php instead, with the same stylesheet- shape, import, ViewClasses, token/px-breakpoint and containment-block checks the dataset gives every other component. Imported from the Containment block of components.css. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Qwx5USif3wFFmxtHg5U1g9
72 lines
2.5 KiB
CSS
72 lines
2.5 KiB
CSS
/*
|
|
* The component stylesheets already written without Tailwind (plan step 36), while the rest are
|
|
* still in tailwind.css. Each lives in `material.components`, so it can be imported anywhere in
|
|
* the entry: the layer statement, not the import order, decides where its rules rank. Step 37
|
|
* replaces this file with all.css. One block per stream, so parallel rewrites merge cleanly.
|
|
*/
|
|
|
|
@layer material.reset, material.tokens, material.base, material.layout, material.components, material.text, material.visibility;
|
|
|
|
/* Foundation components */
|
|
@import './components/icon.css';
|
|
@import './components/shape.css';
|
|
|
|
/* Actions and communication */
|
|
@import './components/loading.css';
|
|
@import './components/tooltip.css';
|
|
@import './components/badge.css';
|
|
@import './components/button.css';
|
|
@import './components/group.css';
|
|
@import './components/button-group.css';
|
|
@import './components/split-button.css';
|
|
@import './components/fab.css';
|
|
@import './components/menu-separator.css';
|
|
@import './components/menu-group.css';
|
|
@import './components/menu-item.css';
|
|
@import './components/menu.css';
|
|
@import './components/fab-menu-item.css';
|
|
@import './components/fab-menu.css';
|
|
@import './components/rich-tooltip.css';
|
|
@import './components/toast.css';
|
|
@import './components/progress.css';
|
|
@import './components/alert.css';
|
|
@import './components/stat.css';
|
|
@import './components/empty-state.css';
|
|
|
|
/* Inputs, selection and data */
|
|
@import './components/form.css';
|
|
@import './components/field.css';
|
|
@import './components/input.css';
|
|
@import './components/password.css';
|
|
@import './components/textarea.css';
|
|
@import './components/select.css';
|
|
@import './components/file.css';
|
|
@import './components/checkbox.css';
|
|
@import './components/radio.css';
|
|
@import './components/toggle.css';
|
|
@import './components/chip.css';
|
|
@import './components/chip-set.css';
|
|
@import './components/choices.css';
|
|
@import './components/slider.css';
|
|
@import './components/search.css';
|
|
@import './components/table.css';
|
|
@import './components/sort-header.css';
|
|
@import './components/pagination.css';
|
|
@import './components/datepicker.css';
|
|
@import './components/timepicker.css';
|
|
|
|
/* Containment */
|
|
@import './components/divider.css';
|
|
@import './components/collapse.css';
|
|
@import './components/card.css';
|
|
@import './components/list-item.css';
|
|
@import './components/list.css';
|
|
@import './components/modal.css';
|
|
@import './components/drawer.css';
|
|
@import './components/bottom-sheet.css';
|
|
@import './components/carousel-item.css';
|
|
@import './components/carousel.css';
|
|
@import './components/error-page.css';
|
|
|
|
/* Navigation */
|