File

feature-libs/cart/import-export/components/import-export/import-export-order-entries.component.ts

Metadata

changeDetection ChangeDetectionStrategy.OnPush
selector cx-import-export-order-entries
templateUrl ./import-export-order-entries.component.html

Index

Properties

Constructor

constructor(contextService: ContextService)
Parameters :
Name Type Optional
contextService ContextService No

Properties

Protected context$
Type : Observable<OrderEntriesContext | undefined>
Default value : this.contextService.get<OrderEntriesContext>(ORDER_ENTRIES_CONTEXT)
shouldDisplayExport$
Type : Observable<boolean>
Default value : this.context$.pipe( switchMap( (orderEntriesContext) => orderEntriesContext?.getEntries?.() ?? of([]) ), map((entries) => !!entries?.length) )
shouldDisplayImport$
Type : Observable<boolean>
Default value : this.context$.pipe( map((orderEntriesContext) => !!orderEntriesContext?.addEntries) )
import { ChangeDetectionStrategy, Component } from '@angular/core';
import {
  ContextService,
  OrderEntriesContext,
  ORDER_ENTRIES_CONTEXT,
} from '@spartacus/storefront';
import { Observable, of } from 'rxjs';
import { map, switchMap } from 'rxjs/operators';

@Component({
  selector: 'cx-import-export-order-entries',
  templateUrl: './import-export-order-entries.component.html',
  changeDetection: ChangeDetectionStrategy.OnPush,
})
export class ImportExportOrderEntriesComponent {
  constructor(protected contextService: ContextService) {}

  protected context$: Observable<OrderEntriesContext | undefined> =
    this.contextService.get<OrderEntriesContext>(ORDER_ENTRIES_CONTEXT);

  shouldDisplayImport$: Observable<boolean> = this.context$.pipe(
    map((orderEntriesContext) => !!orderEntriesContext?.addEntries)
  );

  shouldDisplayExport$: Observable<boolean> = this.context$.pipe(
    switchMap(
      (orderEntriesContext) => orderEntriesContext?.getEntries?.() ?? of([])
    ),
    map((entries) => !!entries?.length)
  );
}
<cx-import-order-entries
  *ngIf="shouldDisplayImport$ | async"
></cx-import-order-entries>
<cx-export-order-entries
  *ngIf="shouldDisplayExport$ | async"
></cx-export-order-entries>
Legend
Html element
Component
Html element with directive

result-matching ""

    No results matching ""