@qn-pandora/pandora-visualization
Version:
Pandora 通用可视化库
52 lines (51 loc) • 1.81 kB
TypeScript
import moment from 'moment';
import { ISearchCondition } from '@qn-pandora/app-sdk';
import { ESearchFormat } from '@qn-pandora/app-sdk';
import Store from '../../stores/store';
import { ITimeRange, TimeShiftUnit } from './constants';
import ISearchConditionService from './type';
export default abstract class SearchConditionService extends Store implements ISearchConditionService {
/**
* 存储到dashboard的line
*/
abstract option: any;
/**
* 可能影响dataset fields的因素
*/
abstract datasetParams: any;
/**
* 用于获取数据的参数
*/
abstract getParams(): any;
abstract queryString: string;
sorts: ISearchCondition['sorts'];
queries: string[];
/**
* setOriginQueryString时是否需要触发 datasetReaction
*/
shouldDatasetReaction: boolean;
/**
* setOriginQueryString的唯一ID,用来触发dataSetReaction
*/
uniqOriginQueryStringSetId: string;
_originQueryString: string;
format?: ESearchFormat;
get originQueryString(): string;
setQueries(v: string[]): void;
setOriginQueryString(queryString: string, shouldDatasetReaction?: boolean): void;
time: ITimeRange;
setTime(time: ITimeRange): void;
setSorts(v: ISearchCondition['sorts']): void;
get timeShift(): string;
get timeShiftValue(): number;
get timeShiftUnit(): TimeShiftUnit.Second | TimeShiftUnit;
get isGlobalTime(): boolean;
getRelativeTime(time?: any): moment.Moment | undefined;
calcTime(): {
start: number | undefined;
end: number | undefined;
onlyTradingDay: boolean | undefined;
};
setFormat(format?: ESearchFormat): void;
setTimeAndOriginqueryString(time: ITimeRange, queryString: string, shouldDatasetReaction?: boolean): void;
}