File

src/app/component/popover/popover.component.ts

Implements

AfterContentInit

Metadata

changeDetection ChangeDetectionStrategy.OnPush
exportAs stbuiPopover
moduleId module.id
providers PopoverService
selector stbui-popover
styleUrls ./popover.component.scss
templateUrl ./popover.component.html

Index

Properties
Methods

Constructor

constructor(_popoverService: PopoverService, changeDetectorRef: ChangeDetectorRef)
Parameters :
Name Type Optional
_popoverService PopoverService No
changeDetectorRef ChangeDetectorRef No

Methods

close
close()
Returns : void
ngAfterContentInit
ngAfterContentInit()
Returns : void
open
open()
Returns : void
toggle
toggle()
Returns : void

Properties

Private _focusTrapElement
Type : ElementRef
Decorators :
@ViewChild('focusTrapElement', {static: false})
templateRef
Type : TemplateRef<any>
Decorators :
@ViewChild(TemplateRef, {static: false})
import {
  Component,
  ElementRef,
  ViewChild,
  TemplateRef,
  AfterContentInit,
  ChangeDetectionStrategy,
  ChangeDetectorRef
} from '@angular/core';
import { FocusTrap, FocusTrapFactory } from '@angular/cdk/a11y';
import { PopoverService } from './popover.service';

@Component({
  moduleId: module.id,
  selector: 'stbui-popover',
  templateUrl: './popover.component.html',
  styleUrls: ['./popover.component.scss'],
  exportAs: 'stbuiPopover',
  changeDetection: ChangeDetectionStrategy.OnPush,
  providers: [PopoverService]
})
export class PopoverComponent implements AfterContentInit {
  @ViewChild(TemplateRef, { static: false }) templateRef: TemplateRef<any>;
  @ViewChild('focusTrapElement', { static: false }) private _focusTrapElement: ElementRef;

  constructor(
    private _popoverService: PopoverService,
    private changeDetectorRef: ChangeDetectorRef
  ) { }

  ngAfterContentInit() { }

  open() {
    this._popoverService.afterOpened();
  }

  close() {
    console.log('close');
  }

  toggle() {
    console.log('toggle');
  }
}
<ng-template>
  <div class="stbui-popover-container" #focusTrapElement>
    <ng-content></ng-content>
  </div>
</ng-template>

./popover.component.scss

Legend
Html element
Component
Html element with directive

result-matching ""

    No results matching ""