Skip to content

Commit 085f65d

Browse files
authored
Enable send to background in Timelion (#82232)
* Enable send to background in Timelion * add jest
1 parent 1482dd4 commit 085f65d

File tree

6 files changed

+126
-101
lines changed

6 files changed

+126
-101
lines changed

src/plugins/vis_type_timelion/public/helpers/plugin_services.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,14 +17,16 @@
1717
* under the License.
1818
*/
1919

20-
import { IndexPatternsContract } from 'src/plugins/data/public';
21-
import { SavedObjectsClientContract } from 'kibana/public';
20+
import type { IndexPatternsContract, ISearchStart } from 'src/plugins/data/public';
21+
import type { SavedObjectsClientContract } from 'kibana/public';
2222
import { createGetterSetter } from '../../../kibana_utils/public';
2323

2424
export const [getIndexPatterns, setIndexPatterns] = createGetterSetter<IndexPatternsContract>(
2525
'IndexPatterns'
2626
);
2727

28+
export const [getDataSearch, setDataSearch] = createGetterSetter<ISearchStart>('Search');
29+
2830
export const [getSavedObjectsClient, setSavedObjectsClient] = createGetterSetter<
2931
SavedObjectsClientContract
3032
>('SavedObjectsClient');

src/plugins/vis_type_timelion/public/helpers/timelion_request_handler.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ import { TimeRange, Filter, esQuery, Query } from '../../../data/public';
2323
import { TimelionVisDependencies } from '../plugin';
2424
import { getTimezone } from './get_timezone';
2525
import { TimelionVisParams } from '../timelion_vis_fn';
26+
import { getDataSearch } from '../helpers/plugin_services';
2627

2728
interface Stats {
2829
cacheCount: number;
@@ -93,6 +94,7 @@ export function getTimelionRequestHandler({
9394

9495
// parse the time range client side to make sure it behaves like other charts
9596
const timeRangeBounds = timefilter.calculateBounds(timeRange);
97+
const sessionId = getDataSearch().session.getSessionId();
9698

9799
try {
98100
return await http.post('/api/timelion/run', {
@@ -109,6 +111,7 @@ export function getTimelionRequestHandler({
109111
interval: visParams.interval,
110112
timezone,
111113
},
114+
sessionId,
112115
}),
113116
});
114117
} catch (e) {

src/plugins/vis_type_timelion/public/plugin.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ import { VisualizationsSetup } from '../../visualizations/public';
3636

3737
import { getTimelionVisualizationConfig } from './timelion_vis_fn';
3838
import { getTimelionVisDefinition } from './timelion_vis_type';
39-
import { setIndexPatterns, setSavedObjectsClient } from './helpers/plugin_services';
39+
import { setIndexPatterns, setSavedObjectsClient, setDataSearch } from './helpers/plugin_services';
4040
import { ConfigSchema } from '../config';
4141

4242
import { getArgValueSuggestions } from './helpers/arg_value_suggestions';
@@ -104,6 +104,7 @@ export class TimelionVisPlugin
104104
public start(core: CoreStart, plugins: TimelionVisStartDependencies) {
105105
setIndexPatterns(plugins.data.indexPatterns);
106106
setSavedObjectsClient(core.savedObjects.client);
107+
setDataSearch(plugins.data.search);
107108

108109
return {
109110
getArgValueSuggestions,

src/plugins/vis_type_timelion/server/routes/run.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,7 @@ export function runRoute(
7575
to: schema.maybe(schema.string()),
7676
})
7777
),
78+
sessionId: schema.maybe(schema.string()),
7879
}),
7980
},
8081
},

0 commit comments

Comments
 (0)