Fold layout.css and components.css into all.css
Plan step 37: all.css replaces the two interim import lists with one entry for an application that wants everything — the foundation, every layout stylesheet and every component stylesheet, grouped under the same block comments components.css used, plus a Layout block. It also directly imports the three files nothing imported by name before (layout/spacing.css, layout/visibility.css, components/selection.css), so every file under components/ and layout/ is now one @import away. Every test that read a block of components.css or layout.css now reads the matching block of all.css through one shared helper (allCssBlock(), in tests/Pest.php so it loads for any test run) instead of repeating the same substr() search in each file. StylesheetsTest.php's shape, Tailwind-free and breakpoint checks, previously run twice (once for the foundation, once for the layout tree), now run once over the whole tree all.css reaches, since every component and layout stylesheet is plain CSS after step 36; a new test asserts all.css imports everything under components/ and layout/ exactly once. The Workbench imports all.css in place of layout.css and components.css. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Qwx5USif3wFFmxtHg5U1g9
This commit is contained in:
co-authored by
Claude Sonnet 5
parent
04271bf227
commit
925d9a4439
@@ -0,0 +1,113 @@
|
||||
/*
|
||||
* Livewire Material for an application that wants everything: the foundation, every layout
|
||||
* stylesheet and every component stylesheet, each imported once. The blocks below are the same
|
||||
* groups `components.css` and `layout.css` used before this file replaced both of them (plan step
|
||||
* 37) — one block per audit stream, so a stylesheet still lands in a predictable place — plus the
|
||||
* Layout block those two files didn't share.
|
||||
*
|
||||
* This is not the recommended way to bring the package's CSS in: importing `all.css` pulls in
|
||||
* every component's rules whether an application's views render them or not. The recommended path
|
||||
* is `foundation.css` (the one required import) followed by only the component stylesheets a
|
||||
* view actually renders — each component file already imports the stylesheets of the components
|
||||
* it draws, so the list an application writes stays short. `all.css` is for the showcase, for an
|
||||
* error page rendered without a build, and for an application that would rather not track
|
||||
* per-component imports at all.
|
||||
*
|
||||
* Same shape as every package stylesheet: the layer statement first, then plain imports, nothing
|
||||
* else at the top level — an `@import` cannot sit inside a `@layer` block, and `layer()` on it
|
||||
* would nest the layer a second time inside a file that already declares it.
|
||||
*/
|
||||
|
||||
@layer material.reset, material.tokens, material.base, material.layout, material.components, material.text, material.visibility;
|
||||
|
||||
@import './foundation.css';
|
||||
|
||||
/* Layout */
|
||||
@import './layout/spacing.css';
|
||||
@import './layout/visibility.css';
|
||||
@import './layout/stack.css';
|
||||
@import './layout/row.css';
|
||||
@import './layout/grid.css';
|
||||
@import './layout/surface.css';
|
||||
@import './layout/pane.css';
|
||||
@import './layout/list-detail.css';
|
||||
@import './layout/supporting-pane.css';
|
||||
@import './layout/feed.css';
|
||||
@import './layout/scaffold.css';
|
||||
|
||||
/* 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/selection.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 */
|
||||
@import './components/app-bar.css';
|
||||
@import './components/toolbar.css';
|
||||
@import './components/tabs.css';
|
||||
@import './components/navigation-item.css';
|
||||
@import './components/navigation-bar.css';
|
||||
@import './components/navigation-bar-item.css';
|
||||
@import './components/navigation-rail.css';
|
||||
@import './components/navigation-rail-item.css';
|
||||
@import './components/navigation-rail-section.css';
|
||||
@import './components/section-nav.css';
|
||||
@import './components/account-menu.css';
|
||||
@import './components/theme-toggle.css';
|
||||
@import './components/scheme-picker.css';
|
||||
Reference in New Issue
Block a user