projects/cobbler-frontend/src/app/actions/mkloaders/mkloaders.component.ts

Implements

OnDestroy

Metadata

Relationships

Used by

No results matching.

Depends on

Index

Properties
Methods

Methods

ngOnDestroy
ngOnDestroy()
Returns : void
runMkloaders
runMkloaders()
Returns : void

Properties

Private _snackBar
Type : unknown
Default value : inject(MatSnackBar)
Private cobblerApiService
Type : unknown
Default value : inject(CobblerApiService)
Private ngUnsubscribe
Type : unknown
Default value : new Subject<void>()
userService
Type : unknown
Default value : inject(UserService)
import { Component, OnDestroy, inject } from '@angular/core';
import { takeUntil } from 'rxjs/operators';
import { UserService } from '../../services/user.service';
import { CobblerApiService } from 'cobbler-api';
import { Subject } from 'rxjs';
import { MatSnackBar } from '@angular/material/snack-bar';
import { MatButton } from '@angular/material/button';
import Utils from '../../utils';

@Component({
  selector: 'cobbler-mkloaders',
  imports: [MatButton],
  templateUrl: './mkloaders.component.html',
  styleUrl: './mkloaders.component.scss',
})
export class MkloadersComponent implements OnDestroy {
  userService = inject(UserService);
  private cobblerApiService = inject(CobblerApiService);
  private _snackBar = inject(MatSnackBar);

  // Unsubscribe
  private ngUnsubscribe = new Subject<void>();

  ngOnDestroy(): void {
    this.ngUnsubscribe.next();
    this.ngUnsubscribe.complete();
  }

  runMkloaders(): void {
    this.cobblerApiService
      .background_hardlink(this.userService.token)
      .pipe(takeUntil(this.ngUnsubscribe))
      .subscribe({
        next: (value) => {
          // TODO
        },
        error: (error) => {
          // HTML encode the error message since it originates from XML
          this._snackBar.open(
            Utils.toHTML(error.message),
            $localize`:@@snackbar.action.close:Close`,
          );
        },
      });
  }
}
<h1 i18n="@@action.mkloaders.title">MKLOADERS</h1>

<button mat-button (click)="runMkloaders()" i18n="@@action.mkloaders.run">
  Mkloaders
</button>

./mkloaders.component.scss

Legend
Html element
Component
Html element with directive

results matching ""

    No results matching ""