File

feature-libs/organization/administration/components/unit/links/addresses/list/link-cell.component.ts

Extends

CellComponent

Metadata

changeDetection ChangeDetectionStrategy.OnPush
selector cx-org-link-cell
template
<ng-container *ngIf="unitKey$ | async as uid">
  <a
    *ngIf="linkable; else text"
    [routerLink]="{ cxRoute: route, params: getRouterModel(uid) } | cxUrl"
    [tabIndex]="tabIndex"
  >
    <ng-container *ngTemplateOutlet="text"></ng-container>
  </a>
</ng-container>

<ng-template #text>
  <span class="text" title="{{ property }}">{{ property }}</span>
</ng-template>

Index

Properties
Methods
Accessors

Constructor

constructor(outlet: OutletContextData<TableDataOutletContext>, itemService: ItemService<B2BUnit>)
Parameters :
Name Type Optional
outlet OutletContextData<TableDataOutletContext> No
itemService ItemService<B2BUnit> No

Methods

getRouterModel
getRouterModel(uid: string)
Parameters :
Name Type Optional
uid string No
Returns : any

Properties

unitKey$
Type : Observable<string>
Default value : this.itemService.key$

Accessors

tabIndex
gettabIndex()
import { ChangeDetectionStrategy, Component } from '@angular/core';
import { B2BUnit } from '@spartacus/core';
import {
  OutletContextData,
  TableDataOutletContext,
} from '@spartacus/storefront';
import { Observable } from 'rxjs';
import { ItemService } from '../../../../shared/item.service';
import { CellComponent } from '../../../../shared/table/cell.component';

@Component({
  selector: 'cx-org-link-cell',
  template: `
    <ng-container *ngIf="unitKey$ | async as uid">
      <a
        *ngIf="linkable; else text"
        [routerLink]="{ cxRoute: route, params: getRouterModel(uid) } | cxUrl"
        [tabIndex]="tabIndex"
      >
        <ng-container *ngTemplateOutlet="text"></ng-container>
      </a>
    </ng-container>

    <ng-template #text>
      <span class="text" title="{{ property }}">{{ property }}</span>
    </ng-template>
  `,
  changeDetection: ChangeDetectionStrategy.OnPush,
})
export class LinkCellComponent extends CellComponent {
  unitKey$: Observable<string> = this.itemService.key$;
  constructor(
    protected outlet: OutletContextData<TableDataOutletContext>,
    protected itemService: ItemService<B2BUnit>
  ) {
    super(outlet);
  }

  get tabIndex() {
    return 0;
  }

  getRouterModel(uid: string): any {
    return { ...this.outlet.context, uid };
  }
}
Legend
Html element
Component
Html element with directive

result-matching ""

    No results matching ""