@adia-ai/web-modules 0.0.4 → 0.2.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.
package/CHANGELOG.md CHANGED
@@ -11,6 +11,60 @@ Built from `@adia-ai/web-components` primitives.
11
11
 
12
12
  _No pending changes._
13
13
 
14
+ ## [0.2.0] — 2026-05-02
15
+
16
+ **Lockstep cut.** All 8 published `@adia-ai/*` packages now share one
17
+ version, governed by [`docs/specs/package-architecture.md` § 15
18
+ (Versioning Policy)](../../docs/specs/package-architecture.md#15-versioning-policy).
19
+
20
+ ### Changed
21
+
22
+ - `version`: `0.0.5` → `0.2.0`.
23
+ - `peerDependencies["@adia-ai/web-components"]`: `>=0.0.33` → `^0.2.0`.
24
+ - `peerDependencies["@adia-ai/a2ui-utils"]`: `^0.0.2` → `^0.2.0`.
25
+
26
+ ### No source changes
27
+
28
+ Composite element source (shell, chat, editor, runtime clusters) is
29
+ byte-identical to 0.0.5. The cut bumps version + tightens peer-dep
30
+ ranges only. Consumers who want the 0.0.5 work (page-content
31
+ container-query system) get it via either 0.0.5 or 0.2.0 — both ship
32
+ the same module code.
33
+
34
+ ## [0.0.5] — 2026-05-02
35
+
36
+ Additive — `page-content` container-query system on `<admin-shell>`.
37
+ Templates can now react to the available *content width* (sidebars
38
+ expanded vs collapsed, inspector rail open, drawer-embed contexts)
39
+ instead of viewport width. No BREAKING changes.
40
+
41
+ ### Added
42
+
43
+ - `<article data-content-root>` is now an inline-size container query
44
+ provider named `page-content` (`admin-shell.templates.css`). Templates
45
+ react to the available *content width* (sidebars expanded vs
46
+ collapsed, inspector rail open, drawer-embed contexts) instead of
47
+ viewport width.
48
+ - Three documented breakpoint tokens on `:where(admin-shell)` —
49
+ `--page-content-bp-sm` (480px), `--page-content-bp-md` (720px),
50
+ `--page-content-bp-lg` (1024px) — for parity with the literal numbers
51
+ used inside `@container page-content (...)` queries.
52
+
53
+ ### Changed
54
+
55
+ - `[data-tab-content] > section > [data-section]` collapses from
56
+ `1fr 2fr` to a single column at `@container page-content (max-width:
57
+ 720px)` — the canonical settings-template aside/control pair stacks
58
+ vertically when the article is narrow, regardless of viewport.
59
+ - `[data-content-header] / [data-content-body] / [data-content-footer]`
60
+ inner padding tightens from `--page-content-inset` (`var(--a-space-10)`)
61
+ to `var(--a-space-4)` at `@container page-content (max-width: 480px)`
62
+ for the genuinely-narrow case.
63
+ - `site.css` settings-template override migrated from `@media
64
+ (max-width: 720px)` to `@container page-content (max-width: 720px)`
65
+ for the same threshold so the docs site and the canonical
66
+ `<admin-shell>` template behave identically.
67
+
14
68
  ## [0.0.4] — 2026-05-01
15
69
 
16
70
  ⚠️ **BREAKING** — nav family removed (consolidated into
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adia-ai/web-modules",
3
- "version": "0.0.4",
3
+ "version": "0.2.0",
4
4
  "description": "AdiaUI composite custom elements — shell, chat, editor, runtime clusters built from @adia-ai/web-components primitives. Subpath exports per cluster.",
5
5
  "type": "module",
6
6
  "exports": {
@@ -33,8 +33,8 @@
33
33
  "./runtime/**/*.js"
34
34
  ],
35
35
  "peerDependencies": {
36
- "@adia-ai/web-components": ">=0.0.33",
37
- "@adia-ai/a2ui-utils": "^0.0.2"
36
+ "@adia-ai/web-components": "^0.2.0",
37
+ "@adia-ai/a2ui-utils": "^0.2.0"
38
38
  },
39
39
  "publishConfig": {
40
40
  "access": "public",
@@ -18,11 +18,23 @@
18
18
  [data-content-body] to opt out of the column.
19
19
  ═══════════════════════════════════════════════════════════════ */
20
20
 
21
- /* ── Content root ── */
21
+ /* ── Content root ──
22
+ `<article data-content-root>` provides an inline-size query container
23
+ named `page-content` so descendants can adapt to the *available content
24
+ width* (sidebars expanded vs collapsed) instead of the viewport.
25
+
26
+ Breakpoint scale (mirrored in `:where(admin-shell) { --page-content-bp-* }`):
27
+ sm 480px — phone / very narrow rail
28
+ md 720px — tablet / 2-col → 1-col flip for [data-section]
29
+ lg 1024px — wide content (no current rule; reserved)
30
+ Container queries can't read custom properties as thresholds, so the
31
+ numbers below are duplicated — keep them in lockstep with the tokens. */
22
32
  [data-content-root] {
23
33
  position: relative;
24
34
  isolation: isolate;
25
35
  min-block-size: 100%;
36
+ container-type: inline-size;
37
+ container-name: page-content;
26
38
  }
27
39
 
28
40
  /* Fill-mode: when the body contains only an iframe (or explicit opt-in),
@@ -213,3 +225,26 @@
213
225
  [data-tab-content] > section > [data-section] > aside > p {
214
226
  margin: 0;
215
227
  }
228
+
229
+ /* ── Responsive: stack [data-section] vertically when the article is
230
+ narrower than the `md` breakpoint. Container-driven (not viewport)
231
+ so the layout reacts to sidebar collapse / inspector rail / drawer
232
+ embed contexts the same way it reacts to a real narrow window. */
233
+ @container page-content (max-width: 720px) {
234
+ [data-tab-content] > section > [data-section] {
235
+ grid-template-columns: minmax(0, 1fr);
236
+ gap: var(--page-block-gap) 0;
237
+ }
238
+ }
239
+
240
+ /* Tighten the content gutter when the article is genuinely narrow. */
241
+ @container page-content (max-width: 480px) {
242
+ [data-content-header] > :is(header, header-ui),
243
+ [data-content-body] > :is(section, section-ui),
244
+ [data-content-footer] > :is(footer, footer-ui) {
245
+ padding-inline: var(--a-space-4);
246
+ }
247
+ [data-content-body] > :is(section, section-ui) {
248
+ padding-block: var(--a-space-4);
249
+ }
250
+ }
@@ -44,6 +44,14 @@
44
44
  --page-content-border: 1px solid var(--a-border-subtle); /* content dividers (persists in "borderless") */
45
45
  --page-content-shadow: var(--a-shadow-sm); /* soft lift on the content surface */
46
46
 
47
+ /* Content breakpoint scale — `[data-content-root]` is a `page-content`
48
+ container query provider (admin-shell.templates.css). These tokens
49
+ are the documented thresholds; @container queries can't read custom
50
+ properties for thresholds, so the numbers are duplicated in CSS. */
51
+ --page-content-bp-sm: 480px; /* phone / very narrow rail */
52
+ --page-content-bp-md: 720px; /* [data-section] flips to 1-col */
53
+ --page-content-bp-lg: 1024px; /* reserved (wide content) */
54
+
47
55
  /* Section labels (e.g. "WORKSPACE") — maps to "kicker" typography role */
48
56
  --page-section-gap: var(--a-space-6);
49
57
  /* Within-section block rhythm (h2 / [data-note] / code-ui / artifact stack). */