layout-style-css 1.1.2 → 2.1.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.
Files changed (115) hide show
  1. package/CHANGELOG.md +81 -44
  2. package/CONTRIBUTING.md +55 -50
  3. package/LICENSE +21 -21
  4. package/README.md +236 -636
  5. package/SECURITY.md +50 -45
  6. package/demo/assets/apple-touch-icon.svg +7 -7
  7. package/demo/assets/favicon.svg +7 -7
  8. package/demo/browserconfig.xml +9 -9
  9. package/demo/demo.css +523 -0
  10. package/demo/demo.js +605 -0
  11. package/demo/index.html +325 -976
  12. package/demo/robots.txt +4 -4
  13. package/demo/site.webmanifest +23 -23
  14. package/demo/sitemap.xml +9 -9
  15. package/dist/core.css +6 -0
  16. package/{styles/layout-ui-style-kit-bridge.css → dist/integrations/ui-style-kit.css} +175 -170
  17. package/dist/layout-style-css.css +1473 -1903
  18. package/dist/layout-style-css.min.css +1 -1
  19. package/dist/legacy.css +787 -0
  20. package/dist/personalities/bauhaus.css +46 -0
  21. package/dist/personalities/bento.css +43 -0
  22. package/dist/personalities/brutalism.css +36 -0
  23. package/dist/personalities/cyberpunk.css +36 -0
  24. package/dist/personalities/f-pattern.css +48 -0
  25. package/dist/personalities/maximalist.css +51 -0
  26. package/dist/personalities/minimal-saas.css +37 -0
  27. package/dist/personalities/mondrian.css +44 -0
  28. package/dist/personalities/neumorphism.css +46 -0
  29. package/dist/personalities/retro-glass.css +44 -0
  30. package/dist/personalities/retrofuturism.css +36 -0
  31. package/dist/personalities/split-screen.css +41 -0
  32. package/dist/personalities/synthwave.css +48 -0
  33. package/dist/personalities/tactile.css +39 -0
  34. package/dist/personalities/y2k.css +36 -0
  35. package/dist/personalities/z-pattern.css +49 -0
  36. package/dist/personalities.css +18 -0
  37. package/dist/primitives.css +219 -0
  38. package/dist/recipes.css +270 -0
  39. package/dist/utilities.css +162 -0
  40. package/dist/wrappers.css +174 -0
  41. package/docs/wiki/Contributing.md +36 -30
  42. package/docs/wiki/Demo-And-GitHub-Pages.md +53 -39
  43. package/docs/wiki/Getting-Started.md +51 -68
  44. package/docs/wiki/Home.md +33 -48
  45. package/docs/wiki/Installation-And-CDN.md +72 -58
  46. package/docs/wiki/Layout-Primitives.md +48 -57
  47. package/docs/wiki/Layout-Recipes.md +49 -80
  48. package/docs/wiki/Layout-Styles.md +33 -43
  49. package/docs/wiki/Migrating-To-2.0.md +186 -0
  50. package/docs/wiki/Release-And-Publishing.md +77 -69
  51. package/docs/wiki/Security-And-Support.md +36 -34
  52. package/docs/wiki/UI-Style-Kit-Compatibility.md +49 -54
  53. package/docs/wiki/_Sidebar.md +15 -14
  54. package/package.json +98 -107
  55. package/styles/core.css +6 -0
  56. package/{dist/layout-ui-style-kit-bridge.css → styles/integrations/ui-style-kit.css} +175 -170
  57. package/styles/legacy.css +173 -0
  58. package/styles/personalities/bauhaus.css +46 -0
  59. package/styles/personalities/bento.css +43 -0
  60. package/styles/personalities/brutalism.css +36 -0
  61. package/styles/personalities/cyberpunk.css +36 -0
  62. package/styles/personalities/f-pattern.css +48 -0
  63. package/styles/personalities/maximalist.css +51 -0
  64. package/styles/personalities/minimal-saas.css +37 -0
  65. package/styles/personalities/mondrian.css +44 -0
  66. package/styles/personalities/neumorphism.css +46 -0
  67. package/styles/personalities/retro-glass.css +44 -0
  68. package/styles/personalities/retrofuturism.css +36 -0
  69. package/styles/personalities/split-screen.css +41 -0
  70. package/styles/personalities/synthwave.css +48 -0
  71. package/styles/personalities/tactile.css +39 -0
  72. package/styles/personalities/y2k.css +36 -0
  73. package/styles/personalities/z-pattern.css +49 -0
  74. package/styles/personalities.css +18 -0
  75. package/styles/primitives.css +219 -0
  76. package/styles/recipes.css +270 -0
  77. package/styles/utilities.css +162 -0
  78. package/styles/wrappers.css +174 -0
  79. package/dist/layout-all-with-ui-kit-and-interactive-surface.css +0 -3
  80. package/dist/layout-all-with-ui-kit.css +0 -2
  81. package/dist/layout-all.css +0 -18
  82. package/dist/layout-base.css +0 -539
  83. package/dist/layout-style-bauhaus.css +0 -70
  84. package/dist/layout-style-bento.css +0 -76
  85. package/dist/layout-style-brutalism.css +0 -70
  86. package/dist/layout-style-cyberpunk.css +0 -70
  87. package/dist/layout-style-f-pattern.css +0 -76
  88. package/dist/layout-style-maximalist.css +0 -93
  89. package/dist/layout-style-minimal-saas.css +0 -67
  90. package/dist/layout-style-mondrian.css +0 -77
  91. package/dist/layout-style-neumorphism.css +0 -72
  92. package/dist/layout-style-retro-glass.css +0 -82
  93. package/dist/layout-style-retrofuturism.css +0 -71
  94. package/dist/layout-style-split-screen.css +0 -62
  95. package/dist/layout-style-synthwave.css +0 -88
  96. package/dist/layout-style-tactile.css +0 -70
  97. package/dist/layout-style-y2k.css +0 -72
  98. package/dist/layout-style-z-pattern.css +0 -76
  99. package/styles/layout-base.css +0 -539
  100. package/styles/layout-style-bauhaus.css +0 -70
  101. package/styles/layout-style-bento.css +0 -76
  102. package/styles/layout-style-brutalism.css +0 -70
  103. package/styles/layout-style-cyberpunk.css +0 -70
  104. package/styles/layout-style-f-pattern.css +0 -76
  105. package/styles/layout-style-maximalist.css +0 -93
  106. package/styles/layout-style-minimal-saas.css +0 -67
  107. package/styles/layout-style-mondrian.css +0 -77
  108. package/styles/layout-style-neumorphism.css +0 -72
  109. package/styles/layout-style-retro-glass.css +0 -82
  110. package/styles/layout-style-retrofuturism.css +0 -71
  111. package/styles/layout-style-split-screen.css +0 -62
  112. package/styles/layout-style-synthwave.css +0 -88
  113. package/styles/layout-style-tactile.css +0 -70
  114. package/styles/layout-style-y2k.css +0 -72
  115. package/styles/layout-style-z-pattern.css +0 -76
package/CHANGELOG.md CHANGED
@@ -1,8 +1,45 @@
1
- # Changelog
2
-
3
- All notable changes to `layout-style-css` are documented here.
4
-
5
- This project follows semantic versioning. The `1.1.2` release is a patch recovery for the `1.1.1` package and keeps the existing `ly-*` public contract intact.
1
+ # Changelog
2
+
3
+ All notable changes to `layout-style-css` are documented here. This project follows semantic versioning.
4
+
5
+ ## [2.1.0] - 2026-07-20
6
+
7
+ ### Changed
8
+
9
+ - Updated the ecosystem demo and documentation to use `ui-style-kit-css@2.1.0` visual CSS, `ui-style-kit-css/interactive-surface-theme.css`, `interactive-surface-css@1.5.0` state core, and Layout core as the canonical import order.
10
+ - Kept `layout-style-css/integrations/ui-style-kit.css` available as a frozen deprecated structural bridge for legacy UI-prefixed layout aliases.
11
+ - Updated release metadata and the GitHub Pages demo to identify the 2.1.0 package line.
12
+
13
+ ### Tests
14
+
15
+ - Switched demo fixtures to consume the staged UI Style Kit 2.1 manifest, visual bundle, and token bridge while locking Interactive Surface to the released 1.5.0 package.
16
+
17
+ ## [2.0.0] - 2026-07-19
18
+
19
+ ### Breaking
20
+
21
+ - Rebuilt the package as a dependency-free, container-first layout system requiring Node.js 20 or newer for development scripts.
22
+ - Replaced size-tier wrappers with compact, prose, content, wide, full, and breakout semantics; wrappers now include fluid logical gutters and safe-area compensation.
23
+ - Standardized personalities, recipes, and regions on `data-ly-layout`, `data-ly-recipe`, and `data-ly-area`.
24
+ - Replaced root personality exports and companion `all-with-ui-kit*` aggregates with focused modules under `personalities/` and `integrations/`.
25
+ - Moved v1 containers, root hooks, columns, and recipe aliases into the opt-in `legacy.css` bundle for the v2 line; removal is scheduled for v3.
26
+
27
+ ### Added
28
+
29
+ - Added stack, cluster, center, cover, switcher, sidebar, grid, split, panes, media, reel, frame, and bounded-scroll primitives.
30
+ - Added seven functional recipes that preserve mobile DOM, reading, and focus order while rearranging named areas at `48rem` and `64rem` container thresholds.
31
+ - Made every `data-ly-recipe` value a complete alternative to its matching class and kept explicit wrapper measures authoritative under all personalities.
32
+ - Added sixteen spatially distinct personalities across left-rail, right-rail, three-zone, mosaic, and equal-split families.
33
+ - Added explicit base, medium-container, and large-container order escape hatches with accessibility guidance.
34
+ - Added a maintainable interactive layout lab with allowlisted query state, copyable snippets, ecosystem modes, and rendered coverage at 375px, 768px, 1280px, and 1440px.
35
+ - Added a complete 1.x-to-2.0 migration guide, Node.js 20/22 CI, and Chromium, Firefox, and WebKit release verification.
36
+
37
+ ### Integration
38
+
39
+ - Pinned `ui-style-kit-css@2.0.1` and `interactive-surface-css@1.4.0` as development fixtures only; the default package has no companion imports, peer dependencies, or runtime dependencies.
40
+ - Documented the all-three import order as UI Style Kit bridge, Interactive Surface `state-core.css`, Layout integration bridge, then Layout core.
41
+ - Kept the upcoming UI Style Kit revision as a follow-up outside this release.
42
+ - Preserved structural v1 `.ly-content` and `.ly-divider` compatibility while leaving the removed paint-owned `.ly-surface--raised` selector to UI Style Kit or application themes.
6
43
 
7
44
  ## [1.1.2] - 2026-07-08
8
45
 
@@ -12,42 +49,42 @@ This project follows semantic versioning. The `1.1.2` release is a patch recover
12
49
  - Kept the additive `1.1.1` CSS and documentation contract intact while moving the publish target to a clean patch version.
13
50
 
14
51
  ## [1.1.1] - 2026-07-05
15
-
16
- ### Added
17
-
18
- - Added versioned wiki documentation under `docs/wiki` for installation, layout primitives, recipes, UI Style Kit compatibility, demo deployment, publishing, security, and contribution workflows.
19
- - Added UI Style Kit-compatible structural aliases for `saas`, `bento`, `max`, `bau`, `tactile`, `neo`, `retro`, `brutal`, `cyber`, `y2k`, and `rg` prefixes.
20
- - Added layout recipe helpers for button groups, card grids, card sizing, galleries, and carousels.
21
- - Added F-Pattern, Z-Pattern, Split-Screen, Mondrian, and Synthwave layout styles.
22
- - Added `layout-style-css/all-with-ui-kit-and-interactive-surface.css` for the three-library import path.
23
- - Added direct `./dist/*.css` package exports for consumers that need generated dist files.
24
- - Added `CHANGELOG.md`, `CONTRIBUTING.md`, and `SECURITY.md` to the release documentation set.
25
-
26
- ### Changed
27
-
28
- - Reworked the demo mobile controls into a compact drawer so the sticky header does not consume the mobile viewport.
29
- - Expanded the demo to cover app shell, wrappers, split layouts, sidebars, panes, button groups, card grids, card sizes, galleries, carousels, frames, and scroll areas.
30
- - Updated README examples to use exported CSS entrypoints and valid CDN links.
31
- - Updated npm release metadata, package file allowlist, and release verification scripts for the `1.1.1` package.
32
- - Updated the npm publish workflow to publish from `release.published` events and explicit `workflow_dispatch` tags.
33
-
34
- ### Fixed
35
-
36
- - Fixed README quick-start imports that referenced non-exported paths.
37
- - Fixed malformed UI Style Kit CDN link markup in the README.
38
- - Clarified responsive column utility documentation so class groups do not imply bare numeric class names.
39
- - Preserved GitHub Pages artifact generation with a Pages-root `index.html`.
40
- - Fixed the release automation path so draft releases can be published before the npm workflow runs.
41
-
42
- ### Security
43
-
44
- - Kept the layout CSS contract free of visual properties owned by `ui-style-kit-css`.
45
- - Kept the package CSS-only at runtime with no network calls, dynamic script execution, or secret handling.
46
- - Added release verification coverage for npm pack contents and documentation completeness.
47
-
48
- ## [1.0.0]
49
-
50
- ### Added
51
-
52
- - Initial public release of layout primitives, layout style files, generated dist bundles, and demo coverage.
53
-
52
+
53
+ ### Added
54
+
55
+ - Added versioned wiki documentation under `docs/wiki` for installation, layout primitives, recipes, UI Style Kit compatibility, demo deployment, publishing, security, and contribution workflows.
56
+ - Added UI Style Kit-compatible structural aliases for `saas`, `bento`, `max`, `bau`, `tactile`, `neo`, `retro`, `brutal`, `cyber`, `y2k`, and `rg` prefixes.
57
+ - Added layout recipe helpers for button groups, card grids, card sizing, galleries, and carousels.
58
+ - Added F-Pattern, Z-Pattern, Split-Screen, Mondrian, and Synthwave layout styles.
59
+ - Added `layout-style-css/all-with-ui-kit-and-interactive-surface.css` for the three-library import path.
60
+ - Added direct `./dist/*.css` package exports for consumers that need generated dist files.
61
+ - Added `CHANGELOG.md`, `CONTRIBUTING.md`, and `SECURITY.md` to the release documentation set.
62
+
63
+ ### Changed
64
+
65
+ - Reworked the demo mobile controls into a compact drawer so the sticky header does not consume the mobile viewport.
66
+ - Expanded the demo to cover app shell, wrappers, split layouts, sidebars, panes, button groups, card grids, card sizes, galleries, carousels, frames, and scroll areas.
67
+ - Updated README examples to use exported CSS entrypoints and valid CDN links.
68
+ - Updated npm release metadata, package file allowlist, and release verification scripts for the `1.1.1` package.
69
+ - Updated the npm publish workflow to publish from `release.published` events and explicit `workflow_dispatch` tags.
70
+
71
+ ### Fixed
72
+
73
+ - Fixed README quick-start imports that referenced non-exported paths.
74
+ - Fixed malformed UI Style Kit CDN link markup in the README.
75
+ - Clarified responsive column utility documentation so class groups do not imply bare numeric class names.
76
+ - Preserved GitHub Pages artifact generation with a Pages-root `index.html`.
77
+ - Fixed the release automation path so draft releases can be published before the npm workflow runs.
78
+
79
+ ### Security
80
+
81
+ - Kept the layout CSS contract free of visual properties owned by `ui-style-kit-css`.
82
+ - Kept the package CSS-only at runtime with no network calls, dynamic script execution, or secret handling.
83
+ - Added release verification coverage for npm pack contents and documentation completeness.
84
+
85
+ ## [1.0.0]
86
+
87
+ ### Added
88
+
89
+ - Initial public release of layout primitives, layout style files, generated dist bundles, and demo coverage.
90
+
package/CONTRIBUTING.md CHANGED
@@ -1,50 +1,55 @@
1
- # Contributing
2
-
3
- Thanks for improving `layout-style-css`. This repository is a CSS layout library, so changes should keep structure, spacing, responsive behavior, and package contracts separate from visual styling.
4
-
5
- ## Local Setup
6
-
7
- ```bash
8
- npm install
9
- npm run build
10
- npm run lint
11
- npm test
12
- ```
13
-
14
- Run the full release gate before opening a release PR:
15
-
16
- ```bash
17
- npm run release:verify
18
- ```
19
-
20
- ## Development Rules
21
-
22
- - Keep authored CSS in `styles/`.
23
- - Regenerate `dist/` with `npm run build`; do not hand-edit generated dist files.
24
- - Keep public layout classes prefixed with `ly-`.
25
- - Leave colors, typography, borders, shadows, native controls, focus states, themes, and modes to `ui-style-kit-css`.
26
- - Add structural aliases in `styles/layout-ui-style-kit-bridge.css` only when they map to layout primitives or layout recipes.
27
- - Update README, `docs/wiki`, and `CHANGELOG.md` when a public class, export, recipe, release workflow, or package behavior changes.
28
-
29
- ## Testing Expectations
30
-
31
- Every change that affects public behavior should update or preserve:
32
-
33
- - `test/layout-css-contract.test.mjs` for package, CSS, docs, and tarball contracts.
34
- - `test/demo-smoke.test.mjs` for rendered demo behavior.
35
- - `test/pages-artifact.test.mjs` for GitHub Pages output.
36
- - `stylelint` for authored CSS formatting.
37
-
38
- ## Review Checklist
39
-
40
- - The package remains publishable as a public npm library.
41
- - The npm tarball contains only intended release files.
42
- - README examples use exported package entrypoints.
43
- - Documentation links resolve to versioned files.
44
- - Demo controls remain compact on mobile and tablet viewports.
45
- - New CSS does not introduce UI Style Kit-owned visual declarations.
46
-
47
- ## Wiki Updates
48
-
49
- The source for the project wiki is `docs/wiki/`. If GitHub Wiki is enabled for the repository, mirror those files into the wiki remote after the main branch documentation is merged.
50
-
1
+ # Contributing
2
+
3
+ Thanks for improving `layout-style-css`. This repository is a CSS layout library, so changes should keep structure, spacing, responsive behavior, and package contracts separate from visual styling.
4
+
5
+ ## Local Setup
6
+
7
+ ```bash
8
+ npm install
9
+ npm run build
10
+ npm run lint
11
+ npm run check:demo-js
12
+ npm test
13
+ ```
14
+
15
+ Run the full release gate before opening a release PR:
16
+
17
+ ```bash
18
+ npm run release:verify
19
+ ```
20
+
21
+ ## Development Rules
22
+
23
+ - Keep authored CSS in `styles/`.
24
+ - Regenerate `dist/` with `npm run build`; do not hand-edit generated dist files.
25
+ - Keep public layout classes prefixed with `ly-`.
26
+ - Leave colors, typography, borders, shadows, native controls, focus states, themes, and modes to `ui-style-kit-css`.
27
+ - Add structural aliases in `styles/integrations/ui-style-kit.css` only when they map to layout primitives or layout recipes.
28
+ - Preserve semantic mobile DOM, reading, and focus order; built-in recipes must use named areas instead of `order`.
29
+ - Test container behavior below and above `48rem` and `64rem`.
30
+ - Update README, `docs/wiki`, and `CHANGELOG.md` when a public class, export, recipe, release workflow, or package behavior changes.
31
+
32
+ ## Testing Expectations
33
+
34
+ Every change that affects public behavior should update or preserve:
35
+
36
+ - `test/layout-css-contract.test.mjs` for package, CSS, docs, and tarball contracts.
37
+ - `test/release-docs-contract.test.mjs` for current documentation and workflow contracts.
38
+ - `test/demo-smoke.test.mjs` for rendered demo behavior.
39
+ - `test/pages-artifact.test.mjs` for GitHub Pages output.
40
+ - `stylelint` for authored CSS formatting.
41
+
42
+ ## Review Checklist
43
+
44
+ - The package remains publishable as a public npm library.
45
+ - The npm tarball contains only intended release files.
46
+ - README examples use exported package entrypoints.
47
+ - Documentation links resolve to versioned files.
48
+ - Demo controls remain compact on mobile and tablet viewports.
49
+ - Chromium, Firefox, and WebKit pass for release-facing rendered changes.
50
+ - New CSS does not introduce UI Style Kit-owned visual declarations.
51
+
52
+ ## Wiki Updates
53
+
54
+ The source for the project wiki is `docs/wiki/`. If GitHub Wiki is enabled for the repository, mirror those files into the wiki remote after the main branch documentation is merged.
55
+
package/LICENSE CHANGED
@@ -1,21 +1,21 @@
1
- MIT License
2
-
3
- Copyright (c) 2026 Foscat
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Foscat
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.