ecosystem/applications/application-plugins/install-plugin.component.ts
selector | c8y-install-plugin |
templateUrl | ./install-plugin.component.html |
Properties |
Methods |
Inputs |
constructor(bsModalRef: BsModalRef, modal: ModalService)
|
|||||||||
Parameters :
|
plugins$ |
Type : BehaviorSubject<ApplicationPlugin[]>
|
cancel |
cancel()
|
Returns :
void
|
Async install |
install()
|
Returns :
any
|
ngOnInit |
ngOnInit()
|
Returns :
void
|
filteredPlugins$ |
Type : Observable<ApplicationPlugin[]>
|
Default value : new BehaviorSubject([])
|
filterTerm$ |
Type : BehaviorSubject<string>
|
Default value : new BehaviorSubject('')
|
result |
Type : Promise<void>
|
Default value : new Promise((resolve, reject) => {
this._install = resolve;
this._cancel = reject;
})
|
selectedPlugins |
Type : string[]
|
Default value : []
|
<div class="viewport-modal">
<div class="modal-header dialog-header">
<i [c8yIcon]="'plugin'"></i>
<h4 translate>Available plugins</h4>
</div>
<div class="p-t-8 p-16 text-center separator-bottom">
<p class="text-medium m-b-8" translate>Select the compatible plugins to install</p>
<c8y-filter (onSearch)="this.filterTerm$.next($event)"></c8y-filter>
</div>
<div class="modal-inner-scroll">
<div class="modal-body p-t-0 p-b-0">
<c8y-plugin-list
(selectedItems)="selectedPlugins = $event"
[emptyListText]="'No plugins available' | translate"
[plugins$]="filteredPlugins$"
[selectable]="true"
class="m-t-16"
></c8y-plugin-list>
</div>
</div>
<div class="modal-footer">
<button
(click)="cancel()"
class="btn btn-default"
title="{{ 'Cancel' | translate }}"
translate
type="button"
>
Cancel
</button>
<button
(click)="install()"
[disabled]="selectedPlugins.length === 0"
class="btn btn-primary"
title="{{ 'Install' | translate }}"
type="button"
>
{{ 'Install' | translate }} ({{ selectedPlugins.length }})
</button>
</div>
</div>