Skip to content
Snippets Groups Projects
create.view.ts 1 KiB
Newer Older
import {ChangeDetectionStrategy, Component, OnInit} from "@angular/core";
import {Create} from "@app/deposit/deposit.action";
import {StateEnum} from "@app/shared/enums/state.enum";
import {DepositsModel, LanguagesModel, LicensesModel} from "@app/generated-api";
import {Select, Store} from "@ngxs/store";
import {Observable} from "rxjs";
import {SharedStateModel} from "@app/shared/shared.state";
  selector: "dlcm-create-view",
  templateUrl: "./create.view.html",
  styleUrls: ["./create.view.scss"],
  changeDetection: ChangeDetectionStrategy.OnPush,
export class CreateView implements OnInit {
  @Select((state) => (state[StateEnum.shared] as SharedStateModel).language.languages) languages$: Observable<LanguagesModel[]>;
  @Select((state) => (state[StateEnum.shared] as SharedStateModel).license.licenses) licenses$: Observable<LicensesModel[]>;
Florent Poittevin's avatar
Florent Poittevin committed
  constructor(private store: Store) {
Florent Poittevin's avatar
Florent Poittevin committed
  }
Florent Poittevin's avatar
Florent Poittevin committed
  createDeposit(deposit: DepositsModel) {
    this.store.dispatch(new Create(deposit));
  }