config.ts 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. import _ from 'lodash';
  2. class Settings {
  3. datasources: any;
  4. panels: any;
  5. appSubUrl: string;
  6. window_title_prefix: string;
  7. buildInfo: any;
  8. new_panel_title: string;
  9. bootData: any;
  10. externalUserMngLinkUrl: string;
  11. externalUserMngLinkName: string;
  12. externalUserMngInfo: string;
  13. allowOrgCreate: boolean;
  14. disableLoginForm: boolean;
  15. defaultDatasource: string;
  16. alertingEnabled: boolean;
  17. authProxyEnabled: boolean;
  18. exploreEnabled: boolean;
  19. ldapEnabled: boolean;
  20. oauth: any;
  21. disableUserSignUp: boolean;
  22. loginHint: any;
  23. loginError: any;
  24. constructor(options) {
  25. var defaults = {
  26. datasources: {},
  27. window_title_prefix: 'Grafana - ',
  28. panels: {},
  29. new_panel_title: 'Panel Title',
  30. playlist_timespan: '1m',
  31. unsaved_changes_warning: true,
  32. appSubUrl: '',
  33. };
  34. _.extend(this, defaults, options);
  35. }
  36. }
  37. var bootData = (<any>window).grafanaBootData || { settings: {} };
  38. var options = bootData.settings;
  39. options.bootData = bootData;
  40. const config = new Settings(options);
  41. export default config;