D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
proc
/
self
/
root
/
usr
/
share
/
grafana
/
public
/
app
/
core
/
history
/
Filename :
richHistoryStorageProvider.ts
back
Copy
import { config } from '@grafana/runtime'; import { contextSrv } from 'app/core/core'; import { SortOrder } from '../utils/richHistoryTypes'; import RichHistoryLocalStorage from './RichHistoryLocalStorage'; import RichHistoryRemoteStorage from './RichHistoryRemoteStorage'; import RichHistoryStorage from './RichHistoryStorage'; const richHistoryLocalStorage = new RichHistoryLocalStorage(); const richHistoryRemoteStorage = new RichHistoryRemoteStorage(); export const getRichHistoryStorage = (): RichHistoryStorage => { return config.queryHistoryEnabled ? richHistoryRemoteStorage : richHistoryLocalStorage; }; interface RichHistorySupportedFeatures { availableFilters: SortOrder[]; lastUsedDataSourcesAvailable: boolean; clearHistory: boolean; onlyActiveDataSource: boolean; changeRetention: boolean; queryHistoryAvailable: boolean; } export const supportedFeatures = (): RichHistorySupportedFeatures => { return config.queryHistoryEnabled ? { availableFilters: [SortOrder.Descending, SortOrder.Ascending], lastUsedDataSourcesAvailable: false, clearHistory: false, onlyActiveDataSource: false, changeRetention: false, queryHistoryAvailable: contextSrv.isSignedIn, } : { availableFilters: [SortOrder.Descending, SortOrder.Ascending, SortOrder.DatasourceAZ, SortOrder.DatasourceZA], lastUsedDataSourcesAvailable: true, clearHistory: true, onlyActiveDataSource: true, changeRetention: true, queryHistoryAvailable: true, }; };