module.ts 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. import { MysqlDatasource } from './datasource';
  2. import { MysqlQueryCtrl } from './query_ctrl';
  3. import {
  4. createChangeHandler,
  5. createResetHandler,
  6. PasswordFieldEnum,
  7. } from '../../../features/datasources/utils/passwordHandlers';
  8. class MysqlConfigCtrl {
  9. static templateUrl = 'partials/config.html';
  10. current: any;
  11. onPasswordReset: ReturnType<typeof createResetHandler>;
  12. onPasswordChange: ReturnType<typeof createChangeHandler>;
  13. constructor() {
  14. this.onPasswordReset = createResetHandler(this, PasswordFieldEnum.Password);
  15. this.onPasswordChange = createChangeHandler(this, PasswordFieldEnum.Password);
  16. }
  17. }
  18. const defaultQuery = `SELECT
  19. UNIX_TIMESTAMP(<time_column>) as time_sec,
  20. <text_column> as text,
  21. <tags_column> as tags
  22. FROM <table name>
  23. WHERE $__timeFilter(time_column)
  24. ORDER BY <time_column> ASC
  25. LIMIT 100
  26. `;
  27. class MysqlAnnotationsQueryCtrl {
  28. static templateUrl = 'partials/annotations.editor.html';
  29. annotation: any;
  30. /** @ngInject */
  31. constructor() {
  32. this.annotation.rawQuery = this.annotation.rawQuery || defaultQuery;
  33. }
  34. }
  35. export {
  36. MysqlDatasource,
  37. MysqlDatasource as Datasource,
  38. MysqlQueryCtrl as QueryCtrl,
  39. MysqlConfigCtrl as ConfigCtrl,
  40. MysqlAnnotationsQueryCtrl as AnnotationsQueryCtrl,
  41. };