From 4d99f1ec597a781e2a8129e2cd570b8be56d0051 Mon Sep 17 00:00:00 2001 From: Bryan Cunningham Date: Fri, 9 Jan 2026 11:54:28 -0500 Subject: [PATCH] remove emoji and use correct change detection --- libs/components/src/menu/menu-item.component.ts | 1 + libs/components/src/menu/menu.stories.ts | 11 ++++------- 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/libs/components/src/menu/menu-item.component.ts b/libs/components/src/menu/menu-item.component.ts index 9911f578d0c..d1d65a241fa 100644 --- a/libs/components/src/menu/menu-item.component.ts +++ b/libs/components/src/menu/menu-item.component.ts @@ -26,6 +26,7 @@ import { ariaDisableElement } from "../utils"; export class MenuItemComponent implements ButtonLikeAbstraction { readonly disabled = model(false); readonly loading = model(false); + readonly elementRef = inject(ElementRef); protected readonly disabledAttr = computed(() => { diff --git a/libs/components/src/menu/menu.stories.ts b/libs/components/src/menu/menu.stories.ts index 6ef5ec4fea0..555f1f58212 100644 --- a/libs/components/src/menu/menu.stories.ts +++ b/libs/components/src/menu/menu.stories.ts @@ -1,6 +1,6 @@ import { OverlayModule } from "@angular/cdk/overlay"; import { NgTemplateOutlet } from "@angular/common"; -import { Component } from "@angular/core"; +import { ChangeDetectionStrategy, Component } from "@angular/core"; import { Meta, StoryObj, moduleMetadata } from "@storybook/angular"; import { I18nService } from "@bitwarden/common/platform/abstractions/i18n.service"; @@ -19,15 +19,14 @@ const template = /*html*/ ` - + `; -// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush -// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection @Component({ template, selector: "app-promise-example", + changeDetection: ChangeDetectionStrategy.OnPush, imports: [ NgTemplateOutlet, AsyncActionsModule, @@ -38,12 +37,10 @@ const template = /*html*/ ` ], }) class PromiseExampleComponent { - statusEmoji = "🟡"; action = async () => { - await new Promise((resolve, reject) => { + await new Promise((resolve) => { setTimeout(() => { resolve(); - this.statusEmoji = "🟢"; }, 5000); }); };