Ajout de composants Hero Wars
This commit is contained in:
@@ -0,0 +1,94 @@
|
||||
import { DatePipe } from '@angular/common';
|
||||
import { Title } from '@angular/platform-browser';
|
||||
import { trigger, state, style, animate, transition } from '@angular/animations';
|
||||
import { Component, DestroyRef, Injectable, inject, OnInit } from '@angular/core';
|
||||
import { FormsModule } from '@angular/forms';
|
||||
import { STEPPER_GLOBAL_OPTIONS } from '@angular/cdk/stepper';
|
||||
import { MatCardModule } from '@angular/material/card';
|
||||
import { MatButtonModule } from '@angular/material/button';
|
||||
import { MatDividerModule } from '@angular/material/divider';
|
||||
import { MatFormFieldModule } from '@angular/material/form-field';
|
||||
import { MatIconModule } from '@angular/material/icon';
|
||||
import { MatInputModule } from '@angular/material/input';
|
||||
import { MatStepperIntl, MatStepperModule } from '@angular/material/stepper';
|
||||
|
||||
import { ListErrorsComponent } from 'src/app/components/shared';
|
||||
import { Errors } from 'src/app/core/models';
|
||||
import { HWGuildRaid, HWGuildRaidAttacker, HWGuildRaidAttackers, HWGuildRaidStage, HWMember } from 'src/app/core/models/herowars';
|
||||
|
||||
import guildRaids from 'src/files-data/hw-guild-raids.json'; // page Asgard -> Guild Raid -> Log
|
||||
|
||||
@Injectable()
|
||||
export class GuildRaidStepperIntl extends MatStepperIntl {
|
||||
// the default optional label text, if unspecified is "Optional"
|
||||
override optionalLabel = 'Optional Label';
|
||||
}
|
||||
@Component({
|
||||
selector: 'app-herowars-guildraid',
|
||||
standalone: true,
|
||||
providers: [
|
||||
{
|
||||
provide: STEPPER_GLOBAL_OPTIONS,
|
||||
useValue: { displayDefaultIndicatorType: false },
|
||||
},
|
||||
],
|
||||
imports: [
|
||||
DatePipe, FormsModule, ListErrorsComponent,
|
||||
MatButtonModule, MatCardModule, MatDividerModule, MatFormFieldModule,
|
||||
MatIconModule, MatInputModule, MatStepperModule
|
||||
],
|
||||
templateUrl: './herowars-guildraid.component.html',
|
||||
styleUrl: './herowars-guildraid.component.scss',
|
||||
animations: [
|
||||
trigger('flyInOut', [
|
||||
state('in', style({ transform: 'translateY(0)' })),
|
||||
transition('void => *', [
|
||||
style({ transform: 'translateY(-100%)' }),
|
||||
animate(200)
|
||||
]),
|
||||
transition('* => void', [
|
||||
style({ transform: 'translateY(100%)' }),
|
||||
animate(200)
|
||||
])
|
||||
])
|
||||
]
|
||||
})
|
||||
export class HerowarsGuildraidComponent implements OnInit {
|
||||
public title = 'Guild Raids';
|
||||
public subtitle = 'Log';
|
||||
public description = 'Tools in working progress.';
|
||||
public errors: Errors = { errors: {} };
|
||||
public destroyRef = inject(DestroyRef);
|
||||
public minVarPct = 3;
|
||||
public minValue = 0;
|
||||
public now = new Date();
|
||||
private _guildMembers: HWMember[] = [];
|
||||
private _matStepperIntl = inject(MatStepperIntl);
|
||||
private _guildRaids: HWGuildRaid[] = [];
|
||||
private _raidStages: HWGuildRaidStage[] = [
|
||||
{ num: 1, name: 'Stage 1', maxPower: 320000, duration: 8, startTime: 0, endTime: 0 },
|
||||
{ num: 2, name: 'Stage 2', maxPower: 500000, duration: 8, startTime: 0, endTime: 0 },
|
||||
{ num: 3, name: 'Stage 3', maxPower: 0, duration: 0, startTime: 0, endTime: 0 }
|
||||
];
|
||||
|
||||
constructor(
|
||||
private _titleService: Title
|
||||
) { }
|
||||
|
||||
ngOnInit() {
|
||||
this._titleService.setTitle(this.title);
|
||||
this._guildMembers.map((data) => {
|
||||
data.raids = [];
|
||||
data.raidsInfo = {
|
||||
variationAvg: 0,
|
||||
variationSum: 0
|
||||
};
|
||||
return data;
|
||||
});
|
||||
}
|
||||
|
||||
getMembers(): HWMember[] {
|
||||
return this._guildMembers;
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user