diff --git a/wowup-electron/src/app/components/potential-addon-table-column/potential-addon-table-column.component.html b/wowup-electron/src/app/components/potential-addon-table-column/potential-addon-table-column.component.html index 056f6531..25d7cd56 100644 --- a/wowup-electron/src/app/components/potential-addon-table-column/potential-addon-table-column.component.html +++ b/wowup-electron/src/app/components/potential-addon-table-column/potential-addon-table-column.component.html @@ -1,14 +1,13 @@
-
-
-
-
- {{thumbnailLetter}} +
+
+
+ {{isAlphaChannel ? 'Alpha': 'Beta'}}
{{addon.name}}
{{addon | getAddonListItemFileProp:'version':channel}}
-
\ No newline at end of file +
diff --git a/wowup-electron/src/app/components/potential-addon-table-column/potential-addon-table-column.component.scss b/wowup-electron/src/app/components/potential-addon-table-column/potential-addon-table-column.component.scss index f0fa5c3a..d14b6f5a 100644 --- a/wowup-electron/src/app/components/potential-addon-table-column/potential-addon-table-column.component.scss +++ b/wowup-electron/src/app/components/potential-addon-table-column/potential-addon-table-column.component.scss @@ -4,22 +4,39 @@ padding-top: 0.5em; padding-bottom: 0.5em; - .addon-logo-container { - background-color: $dark-2; - width: 40px; - height: 40px; - display: flex; - flex-direction: column; - justify-content: center; - align-items: center; + .thumbnail-container { margin-right: 11px; - flex-shrink: 0; - background-size: contain; - background-repeat: no-repeat; - background-position: center; - .addon-logo { - width: 100%; + .addon-logo-container { + background-color: $dark-2; + width: 40px; + height: 40px; + display: flex; + flex-direction: column; + justify-content: center; + flex-shrink: 0; + background-size: contain; + background-repeat: no-repeat; + background-position: center; + + .addon-logo { + width: 100%; + } + } + + .channel { + background: $dark-4; + text-align: center; + font-weight: 400; + font-size: 0.8em; + + &.beta { + color: $rare-color; + } + + &.alpha { + color: $epic-color; + } } .addon-logo-letter { diff --git a/wowup-electron/src/app/components/potential-addon-table-column/potential-addon-table-column.component.ts b/wowup-electron/src/app/components/potential-addon-table-column/potential-addon-table-column.component.ts index 3392312d..caa56d88 100644 --- a/wowup-electron/src/app/components/potential-addon-table-column/potential-addon-table-column.component.ts +++ b/wowup-electron/src/app/components/potential-addon-table-column/potential-addon-table-column.component.ts @@ -3,28 +3,36 @@ import { EventEmitter, Input, OnChanges, - OnInit, Output, SimpleChanges, } from "@angular/core"; import { GetAddonListItem } from "app/business-objects/get-addon-list-item"; +import { WowClientType } from "app/models/warcraft/wow-client-type"; import { AddonChannelType } from "app/models/wowup/addon-channel-type"; import { AddonSearchResult } from "app/models/wowup/addon-search-result"; -import { SessionService } from "app/services/session/session.service"; -import { WowUpService } from "app/services/wowup/wowup.service"; +import { GetAddonListItemFilePropPipe } from "app/pipes/get-addon-list-item-file-prop.pipe"; @Component({ selector: "app-potential-addon-table-column", templateUrl: "./potential-addon-table-column.component.html", styleUrls: ["./potential-addon-table-column.component.scss"], }) -export class PotentialAddonTableColumnComponent implements OnInit, OnChanges { +export class PotentialAddonTableColumnComponent implements OnChanges { @Input("addon") addon: GetAddonListItem; @Input() channel: AddonChannelType; + @Input() clientType: WowClientType; @Output() onViewDetails: EventEmitter = new EventEmitter(); - public addonVersion: string = ""; + private _latestChannelType: AddonChannelType = AddonChannelType.Stable; + + public get isBetaChannel(): boolean { + return this._latestChannelType === AddonChannelType.Beta; + } + + public get isAlphaChannel(): boolean { + return this._latestChannelType === AddonChannelType.Alpha; + } public get hasThumbnail() { return !!this.addon.thumbnailUrl; @@ -35,23 +43,15 @@ export class PotentialAddonTableColumnComponent implements OnInit, OnChanges { } constructor( - private _sessionService: SessionService, - private _wowupService: WowUpService + private _getAddonListItemFileProp: GetAddonListItemFilePropPipe ) {} ngOnChanges(changes: SimpleChanges): void { - if (changes.channel) { - const latestFile = this.addon.getLatestFile(this.channel); - this.addonVersion = latestFile?.version; + if (changes.clientType) { + this._latestChannelType = this._getAddonListItemFileProp.transform(this.addon, 'channelType', this.channel) as AddonChannelType; } } - ngOnInit(): void { - // this._defaultChannel = this._wowupService.getDefaultAddonChannel( - // this._sessionService.selectedClientType - // ); - } - viewDetails() { this.onViewDetails.emit(this.addon.searchResult); } diff --git a/wowup-electron/src/app/pages/get-addons/get-addons.component.html b/wowup-electron/src/app/pages/get-addons/get-addons.component.html index 5b774616..63eeec60 100644 --- a/wowup-electron/src/app/pages/get-addons/get-addons.component.html +++ b/wowup-electron/src/app/pages/get-addons/get-addons.component.html @@ -45,7 +45,7 @@ {{'PAGES.GET_ADDONS.TABLE.ADDON_COLUMN_HEADER' | translate}} - diff --git a/wowup-electron/src/app/pages/home/home.module.ts b/wowup-electron/src/app/pages/home/home.module.ts index d36607d2..678c7396 100644 --- a/wowup-electron/src/app/pages/home/home.module.ts +++ b/wowup-electron/src/app/pages/home/home.module.ts @@ -66,7 +66,8 @@ import { AddonUpdateButtonComponent } from "app/components/addon-update-button/a DirectiveModule, ], providers: [ - DatePipe + DatePipe, + GetAddonListItemFilePropPipe, ] }) export class HomeModule {}