remove any from filter persistable state (#115128) (#115908)

This commit is contained in:
Peter Pisljar 2021-10-21 14:11:50 +02:00 committed by GitHub
parent e702c73a59
commit 7bbcaac6ab
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 8 additions and 27 deletions

View file

@ -8,7 +8,6 @@
import uuid from 'uuid';
import { Filter } from '@kbn/es-query';
import type { SerializableRecord } from '@kbn/utility-types';
import { SavedObjectReference } from '../../../../core/types';
export const extract = (filters: Filter[]) => {
@ -51,14 +50,10 @@ export const inject = (filters: Filter[], references: SavedObjectReference[]) =>
});
};
export const telemetry = (filters: SerializableRecord, collector: unknown) => {
export const telemetry = (filters: Filter[], collector: unknown) => {
return {};
};
export const migrateToLatest = (filters: Filter[], version: string) => {
return filters;
};
export const getAllMigrations = () => {
return {};
};

View file

@ -26,13 +26,12 @@ import {
import { PersistableStateService } from '../../../../kibana_utils/common/persistable_state';
import {
getAllMigrations,
migrateToLatest,
inject,
extract,
telemetry,
} from '../../../common/query/persistable_state';
export class FilterManager implements PersistableStateService {
export class FilterManager implements PersistableStateService<Filter[]> {
private filters: Filter[] = [];
private updated$: Subject<void> = new Subject();
private fetch$: Subject<void> = new Subject();
@ -228,16 +227,11 @@ export class FilterManager implements PersistableStateService {
});
}
// Filter needs to implement SerializableRecord
public extract = extract as any;
public extract = extract;
// Filter needs to implement SerializableRecord
public inject = inject as any;
public inject = inject;
public telemetry = telemetry;
// Filter needs to implement SerializableRecord
public migrateToLatest = migrateToLatest as any;
public getAllMigrations = getAllMigrations;
}

View file

@ -8,13 +8,7 @@
import { CoreSetup, Plugin } from 'kibana/server';
import { querySavedObjectType } from '../saved_objects';
import {
extract,
inject,
telemetry,
migrateToLatest,
getAllMigrations,
} from '../../common/query/persistable_state';
import { extract, inject, telemetry, getAllMigrations } from '../../common/query/persistable_state';
export class QueryService implements Plugin<void> {
public setup(core: CoreSetup) {
@ -25,7 +19,6 @@ export class QueryService implements Plugin<void> {
extract,
inject,
telemetry,
migrateToLatest,
getAllMigrations,
},
};

View file

@ -6,7 +6,7 @@
* Side Public License, v 1.
*/
import type { SerializableRecord } from '@kbn/utility-types';
import type { SerializableRecord, Serializable } from '@kbn/utility-types';
import { SavedObjectReference } from '../../../../core/types';
/**
@ -26,7 +26,7 @@ import { SavedObjectReference } from '../../../../core/types';
* };
* ```
*/
export interface VersionedState<S extends SerializableRecord = SerializableRecord> {
export interface VersionedState<S extends Serializable = Serializable> {
version: string;
state: S;
}
@ -116,7 +116,7 @@ export type PersistableStateDefinition<P extends SerializableRecord = Serializab
/**
* @todo Add description.
*/
export interface PersistableStateService<P extends SerializableRecord = SerializableRecord> {
export interface PersistableStateService<P extends Serializable = Serializable> {
/**
* Function which reports telemetry information. This function is essentially
* a "reducer" - it receives the existing "stats" object and returns an

View file

@ -20,7 +20,6 @@ exports[`Header rendering renders correctly against snapshot 1`] = `
"filters": Array [],
"getAllMigrations": [Function],
"inject": [Function],
"migrateToLatest": [Function],
"telemetry": [Function],
"uiSettings": Object {
"get": [MockFunction],