From 6feb97aeaa958fdab3917125454c426529969768 Mon Sep 17 00:00:00 2001 From: Burcu Noyan Date: Tue, 5 Nov 2024 15:34:12 -0500 Subject: [PATCH] Fix stack item container scroll and style bugs (#1758) * fix styling bugs * add snapshot for special styling * lint fix * move utility to utilities layer --- .../src/components/card-header/index.gts | 6 +- packages/boxel-ui/addon/src/styles/global.css | 7 +- .../components/operator-mode/stack-item.gts | 78 +++++++++---------- .../operator-mode-acceptance-test.gts | 39 ++++++++++ 4 files changed, 85 insertions(+), 45 deletions(-) diff --git a/packages/boxel-ui/addon/src/components/card-header/index.gts b/packages/boxel-ui/addon/src/components/card-header/index.gts index 76b44c2b73..b1fb003e6d 100644 --- a/packages/boxel-ui/addon/src/components/card-header/index.gts +++ b/packages/boxel-ui/addon/src/components/card-header/index.gts @@ -93,7 +93,7 @@ export default class CardHeader extends Component { {{#if @isSaving}} Saving… {{else if (bool @lastSavedMessage)}} -
+
{{@lastSavedMessage}}
{{/if}} @@ -256,8 +256,8 @@ export default class CardHeader extends Component { margin-bottom: calc(1rem - var(--boxel-font-size-sm)); } .save-indicator { - font-weight: normal; - line-height: 1.1; + font: var(--boxel-font-xs); + letter-spacing: var(--boxel-lsp-sm); } .realm-icon-container { display: flex; diff --git a/packages/boxel-ui/addon/src/styles/global.css b/packages/boxel-ui/addon/src/styles/global.css index 4470e12aaa..cefc0c9317 100644 --- a/packages/boxel-ui/addon/src/styles/global.css +++ b/packages/boxel-ui/addon/src/styles/global.css @@ -86,6 +86,10 @@ } @layer utilities { + .boxel-contents-only { + display: contents; + } + /* Hides content visually only (accessible via screen readers) */ .boxel-sr-only:not(:focus):not(:active) { @@ -102,6 +106,7 @@ } } -#ember-basic-dropdown-wormhole .boxel-dropdown__content.ember-basic-dropdown-content { +#ember-basic-dropdown-wormhole + .boxel-dropdown__content.ember-basic-dropdown-content { z-index: calc(var(--boxel-layer-modal-urgent) + 1); } diff --git a/packages/host/app/components/operator-mode/stack-item.gts b/packages/host/app/components/operator-mode/stack-item.gts index e0473ff5ee..f231984179 100644 --- a/packages/host/app/components/operator-mode/stack-item.gts +++ b/packages/host/app/components/operator-mode/stack-item.gts @@ -33,7 +33,7 @@ import { LoadingIndicator, } from '@cardstack/boxel-ui/components'; import { MenuItem, getContrastColor } from '@cardstack/boxel-ui/helpers'; -import { cn, cssVar, optional } from '@cardstack/boxel-ui/helpers'; +import { cssVar, optional } from '@cardstack/boxel-ui/helpers'; import { IconTrash, IconLink } from '@cardstack/boxel-ui/icons'; @@ -481,7 +481,7 @@ export default class OperatorModeStackItem extends Component { {{ContentElement onSetup=this.setupItemEl}} > {{#if this.loadCard.isRunning}} @@ -503,7 +503,7 @@ export default class OperatorModeStackItem extends Component { @onEdit={{if this.canEdit (fn @publicAPI.editCard this.card)}} @onFinishEditing={{if this.isEditing (perform this.doneEditing)}} @onClose={{unless this.isBuried (perform this.closeItem)}} - class='header' + class='stack-item-header' style={{cssVar boxel-card-header-icon-container-min-width=(if this.isBuried '50px' '95px' @@ -515,6 +515,7 @@ export default class OperatorModeStackItem extends Component { @item.headerColor 'transparent' ) }} + role={{if this.isBuried 'button' 'banner'}} {{on 'click' (optional @@ -525,11 +526,12 @@ export default class OperatorModeStackItem extends Component { /> {{/let}}
{ + + }; } class ShippingInfo extends FieldDef { static displayName = 'Shipping Info'; @@ -466,6 +487,24 @@ module('Acceptance | operator mode tests', function (hooks) { ], submode: Submodes.Interact, }); + + await click(`[data-test-cards-grid-item="${testRealmURL}Pet/mango"]`); + await percySnapshot(assert); /* snapshot for special styling */ + assert.operatorModeParametersMatch(currentURL(), { + stacks: [ + [ + { + id: `${testRealmURL}index`, + format: 'isolated', + }, + { + id: `${testRealmURL}Pet/mango`, + format: 'isolated', + }, + ], + ], + submode: Submodes.Interact, + }); }); test('can access and save settings via profile info popover', async function (assert) {