| 1234567891011121314151617181920212223242526272829303132 |
- import angular from "angular";
- import _ from "lodash";
- export class PluginListCtrl {
- plugins: any[];
- tabIndex: number;
- navModel: any;
- searchQuery: string;
- allPlugins: any[];
- /** @ngInject */
- constructor(private backendSrv: any, $location, navModelSrv) {
- this.tabIndex = 0;
- this.navModel = navModelSrv.getNav("cfg", "plugins", 0);
- this.backendSrv.get("api/plugins", { embedded: 0 }).then(plugins => {
- this.plugins = plugins;
- this.allPlugins = plugins;
- });
- }
- onQueryUpdated() {
- let regex = new RegExp(this.searchQuery, "ig");
- this.plugins = _.filter(this.allPlugins, item => {
- return regex.test(item.name) || regex.test(item.type);
- });
- }
- }
- angular
- .module("grafana.controllers")
- .controller("PluginListCtrl", PluginListCtrl);
|