plugin-search.component.html 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. <div class="toggle-plugin-type">
  2. <p-selectButton [options]="pluginTypeOptions" [(ngModel)]="pluginType" (ngModelChange)="reloadPlugins()"></p-selectButton>
  3. </div>
  4. <div class="search-bar">
  5. <input type="text" (input)="onSearchChange($event.target.value)" i18n-placeholder placeholder="Search..."/>
  6. </div>
  7. <div class="result-title" *ngIf="!isSearching">
  8. <ng-container *ngIf="!search">
  9. <my-global-icon iconName="trending"></my-global-icon>
  10. <ng-container i18n>Popular</ng-container>
  11. </ng-container>
  12. <ng-container i18n *ngIf="!!search">
  13. <my-global-icon iconName="search"></my-global-icon>
  14. <ng-container i18n>
  15. {{ pagination.totalItems }} {pagination.totalItems, plural, =1 {result} other {results}} for "{{ search }}"
  16. </ng-container>
  17. </ng-container>
  18. </div>
  19. <div class="no-results" i18n *ngIf="pagination.totalItems === 0">
  20. No results.
  21. </div>
  22. <div class="plugins" myInfiniteScroller (nearOfBottom)="onNearOfBottom()" [autoInit]="true">
  23. <div class="card plugin" *ngFor="let plugin of plugins">
  24. <div class="card-body">
  25. <div class="first-row">
  26. <span class="plugin-name">{{ plugin.name }}</span>
  27. <span class="plugin-version">{{ plugin.latestVersion }}</span>
  28. </div>
  29. <div class="second-row">
  30. <div class="description">{{ plugin.description }}</div>
  31. <div class="buttons">
  32. <a class="action-button action-button-edit grey-button" target="_blank" rel="noopener noreferrer"
  33. [href]="plugin.homepage" i18n-title title="Go to the plugin homepage"
  34. >
  35. <my-global-icon iconName="go"></my-global-icon>
  36. <span i18n class="button-label">Homepage</span>
  37. </a>
  38. <my-button class="update-button" *ngIf="plugin.installed === false" (click)="install(plugin)" [loading]="isInstalling(plugin)"
  39. label="Install" icon="cloud-download" [attr.disabled]="isInstalling(plugin)"
  40. ></my-button>
  41. </div>
  42. </div>
  43. </div>
  44. </div>
  45. </div>