1 <div class=
"toggle-plugin-type">
2 <p-selectButton [options]=
"pluginTypeOptions" [(ngModel)]=
"pluginType" (ngModelChange)=
"reloadPlugins()"></p-selectButton>
5 <div class=
"search-bar">
6 <input type=
"text" (input)=
"onSearchChange($event)" i18n-placeholder
placeholder=
"Search..." myAutofocus
/>
9 <div class=
"alert alert-info" i18n *
ngIf=
"pluginInstalled">
10 To load your new installed plugins or themes, refresh the page.
13 <div class=
"result-title" *
ngIf=
"!isSearching">
14 <ng-container *
ngIf=
"!search">
15 <my-global-icon iconName=
"trending" aria-hidden=
"true"></my-global-icon>
16 <ng-container i18n
>Popular
</ng-container>
19 <ng-container *
ngIf=
"!!search">
20 <my-global-icon iconName=
"search"></my-global-icon>
23 {{ pagination.totalItems }} {pagination.totalItems, plural, =
1 {result} other {results}} for "{{ search }}"
28 <div class=
"no-results" i18n *
ngIf=
"pagination.totalItems === 0">
32 <div class=
"plugins" myInfiniteScroller (nearOfBottom)=
"onNearOfBottom()" [dataObservable]=
"onDataSubject.asObservable()">
33 <div class=
"card plugin" *
ngFor=
"let plugin of plugins">
34 <div class=
"card-body">
35 <div class=
"first-row">
36 <span class=
"plugin-name">{{ plugin.name }}
</span>
38 <span class=
"plugin-version">{{ plugin.latestVersion }}
</span>
40 <a class=
"plugin-icon" target=
"_blank" rel=
"noopener noreferrer" [href]=
"plugin.homepage" i18n-title
title=
"Plugin homepage (new window)">
41 <my-global-icon iconName=
"home"></my-global-icon>
44 <a class=
"plugin-icon" target=
"_blank" rel=
"noopener noreferrer" [href]=
"getPluginOrThemeHref(plugin.name)" i18n-title
title=
"Plugin npm package (new window)">
45 <my-global-icon iconName=
"npm"></my-global-icon>
48 <span *
ngIf=
"plugin.installed" class=
"badge badge-success">Installed
</span>
52 *
ngIf=
"plugin.installed === true && !isThemeSearch()" [routerLink]=
"getShowRouterLink(plugin)"
53 label=
"Settings" i18n-label [responsiveLabel]=
"true"
57 class=
"update-button" *
ngIf=
"plugin.installed === false" (click)=
"install(plugin)"
58 [loading]=
"isInstalling(plugin)" label=
"Install" [responsiveLabel]=
"true"
59 icon=
"cloud-download" [attr.disabled]=
"isInstalling(plugin)"
64 <div class=
"second-row">
65 <div class=
"description">{{ plugin.description }}
</div>