diff --git a/web/app/components/doc/folder-affordance.hbs b/web/app/components/doc/folder-affordance.hbs index 065b5e42a..1fa64a851 100644 --- a/web/app/components/doc/folder-affordance.hbs +++ b/web/app/components/doc/folder-affordance.hbs @@ -2,7 +2,7 @@ data-test-doc-thumbnail-folder-affordance xmlns="http://www.w3.org/2000/svg" fill="none" - viewBox={{if this.sizeIsLarge "0 0 97 145" "0 0 43 63"}} + viewBox={{if this.sizeIsSmall "0 0 43 63" "0 0 97 145"}} class="folder-affordance" > diff --git a/web/app/components/doc/folder-affordance.ts b/web/app/components/doc/folder-affordance.ts index 2b6e8f0f4..6d8581381 100644 --- a/web/app/components/doc/folder-affordance.ts +++ b/web/app/components/doc/folder-affordance.ts @@ -1,14 +1,16 @@ import Component from "@glimmer/component"; +import { DocThumbnailSize } from "hermes/components/doc/thumbnail"; +import { HermesSize } from "hermes/types/sizes"; interface DocFolderAffordanceSignature { Args: { - size?: "large"; + size?: `${DocThumbnailSize}`; }; } export default class DocFolderAffordance extends Component { - protected get sizeIsLarge(): boolean { - return this.args.size === "large"; + protected get sizeIsSmall(): boolean { + return this.args.size === HermesSize.Small || !this.args.size; } } diff --git a/web/app/components/doc/thumbnail.ts b/web/app/components/doc/thumbnail.ts index 11b2db692..b9c102e16 100644 --- a/web/app/components/doc/thumbnail.ts +++ b/web/app/components/doc/thumbnail.ts @@ -1,18 +1,16 @@ import Component from "@glimmer/component"; import { dasherize } from "@ember/string"; import getProductId from "hermes/utils/get-product-id"; +import { HermesSize } from "hermes/types/sizes"; -export enum DocThumbnailSize { - Small = "small", - Large = "large", -} +export type DocThumbnailSize = Exclude; interface DocThumbnailComponentSignature { Element: HTMLDivElement; Args: { status?: string; product?: string; - size?: "large"; + size?: `${DocThumbnailSize}`; }; } @@ -26,7 +24,7 @@ export default class DocThumbnailComponent extends Component { - protected size = this.args.size ?? HermesBasicAvatarSize.Small; + protected size = this.args.size ?? HermesSize.Small; } declare module "@glint/environment-ember-loose/registry" { diff --git a/web/app/components/product/avatar.gts b/web/app/components/product/avatar.gts index 5840955d0..f1d55de0e 100644 --- a/web/app/components/product/avatar.gts +++ b/web/app/components/product/avatar.gts @@ -4,13 +4,13 @@ import { inject as service } from "@ember/service"; import FlightIcon from "@hashicorp/ember-flight-icons/components/flight-icon"; import ProductAreasService from "hermes/services/product-areas"; import { assert } from "@ember/debug"; -import { HermesBasicAvatarSize } from "hermes/types/avatar-size"; +import { HermesSize } from "hermes/types/sizes"; interface ProductAvatarComponentSignature { Element: HTMLDivElement; Args: { product?: string; - size?: `${HermesBasicAvatarSize}`; + size?: `${Exclude}`; }; Blocks: { default: []; @@ -27,7 +27,7 @@ export default class ProductAvatarComponent extends Component diff --git a/web/app/styles/components/doc/thumbnail.scss b/web/app/styles/components/doc/thumbnail.scss index 337a4fec2..41db29813 100644 --- a/web/app/styles/components/doc/thumbnail.scss +++ b/web/app/styles/components/doc/thumbnail.scss @@ -40,6 +40,22 @@ } } + &.medium { + @apply w-16; + + .status-icon { + @apply top-[6px] h-[60px] w-[60px]; + + &.approved { + @apply -right-2.5; + } + + &.obsolete { + @apply -left-3.5; + } + } + } + &.large { @apply w-28; diff --git a/web/app/types/avatar-size.ts b/web/app/types/avatar-size.ts deleted file mode 100644 index 6ae2aa5d0..000000000 --- a/web/app/types/avatar-size.ts +++ /dev/null @@ -1,13 +0,0 @@ -export enum HermesBasicAvatarSize { - Small = "small", - Medium = "medium", - Large = "large", -} - -export enum HermesExtendedAvatarSize { - XL = "xl", -} - -export type HermesPersonAvatarSize = - | HermesBasicAvatarSize - | HermesExtendedAvatarSize; diff --git a/web/app/types/sizes.ts b/web/app/types/sizes.ts new file mode 100644 index 000000000..fd4caa0ec --- /dev/null +++ b/web/app/types/sizes.ts @@ -0,0 +1,6 @@ +export enum HermesSize { + Small = "small", + Medium = "medium", + Large = "large", + XL = "xl", +}