@ai-matrx/canvas 0.5.0 → 0.5.2

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/dist/styles.css CHANGED
@@ -396,6 +396,8 @@
396
396
  /* ── tabs ───────────────────────────────────────────────────────────────── */
397
397
 
398
398
  .mxc-tabs {
399
+ /* The tabs' offset parent, so "keep the active tab in view" measures in strip coordinates. */
400
+ position: relative;
399
401
  flex: 0 1 auto;
400
402
  min-width: 0;
401
403
  display: flex;
@@ -411,16 +413,19 @@
411
413
 
412
414
  /*
413
415
  * TAB DENSITY (Claude Code / Codex): 12.5px text, a 14px icon, 6px side
414
- * padding. Tabs shrink evenly from 8rem to a 3.25rem floor (icon + a few
415
- * letters), then the strip scrolls. The active tab keeps icon + ~10 letters.
416
+ * padding. Tabs shrink evenly from 8rem to a 4.5rem floor, then the strip
417
+ * scrolls (a tab is never squeezed to three letters). A background tab
418
+ * narrower than 6rem drops its icon so its name keeps the room. The active
419
+ * tab keeps icon + ~10 letters + its close.
416
420
  * The close button is OVERLAID on the tab's end and costs no width while
417
421
  * hidden; shown (hover, active, focus) the title fades under it.
418
422
  */
419
423
  .mxc-tab {
420
424
  position: relative;
421
425
  flex: 1 1 8rem;
422
- min-width: 3.25rem;
426
+ min-width: 4.5rem;
423
427
  max-width: 12rem;
428
+ container: mxc-tab / inline-size;
424
429
  display: flex;
425
430
  align-items: center;
426
431
  gap: 0.3125rem;
@@ -437,7 +442,7 @@
437
442
  }
438
443
 
439
444
  .mxc-tab[data-active] {
440
- min-width: min(6.5rem, 100%);
445
+ min-width: min(7.5rem, 100%);
441
446
  background: var(--mxc-tab-active-bg);
442
447
  color: var(--mxc-fg);
443
448
  box-shadow: var(--mxc-tab-active-shadow);
@@ -467,6 +472,12 @@
467
472
  opacity: 0.75;
468
473
  }
469
474
 
475
+ @container mxc-tab (max-width: 6rem) {
476
+ .mxc-tab:not([data-active]) .mxc-tab-icon {
477
+ display: none;
478
+ }
479
+ }
480
+
470
481
  .mxc-tab-icon svg,
471
482
  .mxc-favicon {
472
483
  width: 0.875rem;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ai-matrx/canvas",
3
- "version": "0.5.0",
3
+ "version": "0.5.2",
4
4
  "description": "The AI Matrx canvas: a docked right-hand column with split panes, tabs, full screen, a kind registry, Redux-compatible state and persistence.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.cjs",