From 77dbabf35a89e6140fd4308c8551c3c1bf347d4f Mon Sep 17 00:00:00 2001 From: Burcu Noyan Date: Wed, 15 Jul 2026 13:52:41 -0400 Subject: [PATCH 01/13] Stack default edit format field labels when the card is narrow The default edit template renders top-level fields with FieldContainer's horizontal layout, which reserves a minmax(8rem, 25%) label column and leaves little room for inputs in narrow stack items. Make the edit template an inline-size query container and switch the horizontal FieldContainers to a stacked label-over-input layout below 400px. Co-Authored-By: Claude Fable 5 --- .../default-templates/isolated-and-edit.gts | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/packages/base/default-templates/isolated-and-edit.gts b/packages/base/default-templates/isolated-and-edit.gts index 89ccae24ed1..5cc2b6da778 100644 --- a/packages/base/default-templates/isolated-and-edit.gts +++ b/packages/base/default-templates/isolated-and-edit.gts @@ -141,6 +141,23 @@ export default class DefaultCardDefTemplate extends GlimmerComponent<{ .default-card-template.edit > .notes-footer { background-color: var(--muted, var(--boxel-100)); } + .default-card-template.edit { + container-name: default-edit-template; + container-type: inline-size; + } + /* stack field labels above their inputs when the template is narrow */ + @container default-edit-template (width < 400px) { + .default-card-template.edit :deep(.boxel-field.horizontal) { + grid-template-columns: 1fr; + grid-template-rows: auto 1fr; + gap: var(--boxel-sp-4xs); + min-height: unset; + } + .default-card-template.edit + :deep(.boxel-field.horizontal > .label-container) { + padding-top: 0; + } + } /* this aligns edit fields with containsMany, linksTo, and linksToMany fields */ .default-card-template.edit > :deep( From c814f4686aab5bb6b42e11c1364eca7f1a51cd18 Mon Sep 17 00:00:00 2001 From: Burcu Noyan Date: Wed, 15 Jul 2026 19:44:03 -0400 Subject: [PATCH 02/13] Rework card-info editor into preview group and thumbnail/fields grid --- packages/base/default-templates/card-info.gts | 400 ++++++++++-------- .../default-templates/isolated-and-edit.gts | 117 ++--- 2 files changed, 286 insertions(+), 231 deletions(-) diff --git a/packages/base/default-templates/card-info.gts b/packages/base/default-templates/card-info.gts index d4ddb35e489..8fef0ffad1e 100644 --- a/packages/base/default-templates/card-info.gts +++ b/packages/base/default-templates/card-info.gts @@ -131,180 +131,182 @@ interface EditSignature { class CardInfoEditor extends GlimmerComponent { diff --git a/packages/base/default-templates/isolated-and-edit.gts b/packages/base/default-templates/isolated-and-edit.gts index 5cc2b6da778..4bf8466a26f 100644 --- a/packages/base/default-templates/isolated-and-edit.gts +++ b/packages/base/default-templates/isolated-and-edit.gts @@ -61,58 +61,63 @@ export default class DefaultCardDefTemplate extends GlimmerComponent<{ class={{cn 'default-card-template' @format}} data-test-base-template={{@format}} > -
- {{#if (eq @format 'isolated')}} - - {{else}} - +
+
+ {{#if (eq @format 'isolated')}} + + {{else}} + + {{/if}} +
+ {{#if this.displayFields}} +
+ {{#each-in this.displayFields as |key Field|}} + + + + {{/each-in}} +
{{/if}} -
- {{#if this.displayFields}} -
- {{#each-in this.displayFields as |key Field|}} - - - - {{/each-in}} -
- {{/if}} -
- - <@fields.cardInfo.notes /> - -
+
+ + <@fields.cardInfo.notes /> + +
+