2019-09-17 20:57:53 +02:00
|
|
|
/*
|
|
|
|
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
2021-02-04 03:12:39 +01:00
|
|
|
* or more contributor license agreements. Licensed under the Elastic License
|
|
|
|
* 2.0; you may not use this file except in compliance with the Elastic License
|
|
|
|
* 2.0.
|
2019-09-17 20:57:53 +02:00
|
|
|
*/
|
|
|
|
|
|
|
|
import { getSuggestions } from './xy_suggestions';
|
2020-11-24 09:56:56 +01:00
|
|
|
import { TableSuggestionColumn, VisualizationSuggestion, TableSuggestion } from '../types';
|
2020-05-05 21:59:32 +02:00
|
|
|
import { State, XYState, visualizationTypes } from './types';
|
2019-09-17 20:57:53 +02:00
|
|
|
import { generateId } from '../id_generator';
|
2020-11-04 11:27:52 +01:00
|
|
|
import { getXyVisualization } from './xy_visualization';
|
|
|
|
import { chartPluginMock } from '../../../../../src/plugins/charts/public/mocks';
|
2020-11-17 10:19:13 +01:00
|
|
|
import { dataPluginMock } from '../../../../../src/plugins/data/public/mocks';
|
2020-11-04 11:27:52 +01:00
|
|
|
import { PaletteOutput } from 'src/plugins/charts/public';
|
2019-09-17 20:57:53 +02:00
|
|
|
|
|
|
|
jest.mock('../id_generator');
|
|
|
|
|
2020-11-04 11:27:52 +01:00
|
|
|
const xyVisualization = getXyVisualization({
|
|
|
|
paletteService: chartPluginMock.createPaletteRegistry(),
|
2020-11-17 10:19:13 +01:00
|
|
|
data: dataPluginMock.createStartContract(),
|
2020-11-04 11:27:52 +01:00
|
|
|
});
|
|
|
|
|
2019-09-17 20:57:53 +02:00
|
|
|
describe('xy_suggestions', () => {
|
|
|
|
function numCol(columnId: string): TableSuggestionColumn {
|
|
|
|
return {
|
|
|
|
columnId,
|
|
|
|
operation: {
|
|
|
|
dataType: 'number',
|
|
|
|
label: `Avg ${columnId}`,
|
|
|
|
isBucketed: false,
|
|
|
|
scale: 'ratio',
|
|
|
|
},
|
|
|
|
};
|
|
|
|
}
|
|
|
|
|
|
|
|
function strCol(columnId: string): TableSuggestionColumn {
|
|
|
|
return {
|
|
|
|
columnId,
|
|
|
|
operation: {
|
|
|
|
dataType: 'string',
|
|
|
|
label: `Top 5 ${columnId}`,
|
|
|
|
isBucketed: true,
|
|
|
|
scale: 'ordinal',
|
|
|
|
},
|
|
|
|
};
|
|
|
|
}
|
|
|
|
|
|
|
|
function dateCol(columnId: string): TableSuggestionColumn {
|
|
|
|
return {
|
|
|
|
columnId,
|
|
|
|
operation: {
|
|
|
|
dataType: 'date',
|
|
|
|
isBucketed: true,
|
|
|
|
label: `${columnId} histogram`,
|
|
|
|
scale: 'interval',
|
|
|
|
},
|
|
|
|
};
|
|
|
|
}
|
|
|
|
|
2020-08-27 00:27:40 +02:00
|
|
|
function histogramCol(columnId: string): TableSuggestionColumn {
|
|
|
|
return {
|
|
|
|
columnId,
|
|
|
|
operation: {
|
|
|
|
dataType: 'number',
|
|
|
|
isBucketed: true,
|
|
|
|
label: `${columnId} histogram`,
|
|
|
|
scale: 'interval',
|
|
|
|
},
|
|
|
|
};
|
|
|
|
}
|
|
|
|
|
2019-09-17 20:57:53 +02:00
|
|
|
// Helper that plucks out the important part of a suggestion for
|
|
|
|
// most test assertions
|
|
|
|
function suggestionSubset(suggestion: VisualizationSuggestion<State>) {
|
|
|
|
return suggestion.state.layers.map(({ seriesType, splitAccessor, xAccessor, accessors }) => ({
|
|
|
|
seriesType,
|
|
|
|
splitAccessor,
|
|
|
|
x: xAccessor,
|
|
|
|
y: accessors,
|
|
|
|
}));
|
|
|
|
}
|
|
|
|
|
[Lens] Transient suggestions (#44234)
* [lens] Initial Commit (#35627)
* [visualization editor] Initial Commit
* [lens] Add more complete initial state
* [lens] Fix type issues
* [lens] Remove feature control
* [lens] Bring back feature control and add tests
* [lens] Update plugin structure and naming per comments
* replace any usage by safe casting
* [lens] Respond to review comments
* [lens] Remove unused EditorFrameState type
* [lens] Initial state for IndexPatternDatasource (#36052)
* [lens] Add first tests to indexpattern data source
* Respond to review comments
* Fix type definitions
* [lens] Editor frame initializes datasources and visualizations (#36060)
* [lens] Editor frame initializes datasources and visualizations
* Respond to review comments
* Fix build issues
* Fix state management issue
* [lens][draft] Lens/drag drop (#36268)
Add basic drag / drop component to Lens
* remove local package (#36456)
* [lens] Native renderer (#36165)
* Add nativerenderer component
* Use native renderer in app and editor frame
* [Lens] No explicit any (#36515)
* [Lens] Implement basic editor frame state handling (#36443)
* [lens] Load index patterns and render in data panel (#36463)
* [lens] Editor frame initializes datasources and visualizations
* Respond to review comments
* Fix build issues
* remove local package
* [lens] Load index patterns into data source
* Redo types for Index Pattern Datasource
* Fix one more type
* Respond to review comments
* [draft] Lens/line chart renderer (#36827)
Expression logic for the Lens xy chart.
* [lens] Index pattern data panel (initial) (#37015)
* [lens] Index pattern switcher
* Respond to review comments
* [Lens] Editor state 2 (#36513)
* [lens] Dimension panel that generates columns (#37117)
* [lens] Dimension panel that generates columns
* Update from review comments
* [lens] Generate esdocs queries from index pattern (#37361)
* [lens] Generate esdocs queries from index pattern
* Remove unused code
* Update yarn.lock from yarn kbn bootstrap
* [Lens] Add basic Lens xy chart suggestions (#37030)
Basic xy chart suggestions
* [Lens] Expression rendering (#37648)
* [Lens] Expression handling (#37876)
* [Lens] Lens/xy config panel (#37391)
Basic xy chart configuration panel
* [Lens] Xy expression building (#37967)
* [Lens] Initialize visualization with datasource api (#38142)
* [lens] Dimension panel lets users select operations and fields individually (#37573)
* [lens] Dimension panel lets users select operations and fields individually
* Split files and add tests
* Fix dimension labeling and add clear button
* Support more aggregations, aggregation nesting, rollups, and clearing
* Fix esaggs expression
* Increase top-level test coverage of dimension panel
* Update from review comments
* [Lens] Rename columns (#38278)
* [Lens] Lens/index pattern drag drop (#37711)
* Basic xy chart suggestions
* Re-apply XY config panel after force merge
* Initial integration of lens drag and drop
* Tweak naming, remove irellevant comment
* Tweaks per Wylie's feedback
* Add xy chart internationalization
Tweak types per Joe's feedback
* Update xy chart i18n implementation
* Fix i18n id
* Add drop tests to the lens index pattern
* improve tests
* [lens] Only allow aggregated dimensions (#38820)
* [lens] Only allow aggregated dimensions
* [lens] Index pattern suggest on drop
* Fully remove value
* Revert "[lens] Index pattern suggest on drop"
This reverts commit 604c6ed68ca394441ddafa662bdfc5f421de300c.
* Fix type errors
* [lens] Suggest on drop (#38848)
* [lens] Index pattern suggest on drop
* Add test for suggestion without date field
* fix merge
* [Lens] Parameter configurations and new dimension config flow (#38863)
* fix eslint failure
* [lens] Fix build by updating saved objects and i18n (#39391)
* [lens] Update location of saved objects code
* Update internatationalization
* Remove added file
* Lens basic metric visualization
* [lens] Fix arguments to esaggs using booleans (#39462)
* [lens] Datatable visualization plugin (#39390)
* [lens] Datatable visualization plugin
* Fix merge issues and add tests
* Update from review
* Fix file locations
* Fix merge issues, localize expression help text
* Add auto-scaling to the lens metric visualization
* Fix unit tests broken by autoscale
* Move autoscale to the new Lens folder
* [lens] Use first suggestion when switching visualizations (#39377)
* [lens] Label each Y axis with its operation label (#39461)
* [lens] Label each Y axis with its operation label
* Remove comment
* Add link to chart issue
* [Lens] Suggestion preview rendering (#39576)
* [Lens] Popover configs (#39565)
* [Lens] Basic layouting (#39587)
* remove datasource public API in suggestions (#39772)
* [Lens] Basic save / load (#39257)
Add basic routing, save, and load to Lens
* [lens] Fix lint error
* [lens] Use node scripts/eslint.js --fix to fix errors
* [lens] Include link to lens from Visualize (#40542)
* [lens] Support stacking in xy visualization (#40546)
* [lens] Support stacking in xy visualization
* Use chart type switcher for stacked and horizontal xy charts
* Clean up remaining isStacked code
* Fix type error
* [Lens] Add xy split series support (#39726)
* Add split series to lens xy chart
* [lens] Lens Filter Ratio (#40196)
* WIP filter ratio
* Fix test issues
* Pass dependencies through plugin like new platform
* Pass props into filter ratio popover editor
* Provide mocks to filter_ratio popover test
* Add another test
* Clean up to prepare for review
* Clean up unnecessary changes
* Respond to review comments
* Fix tests
* [Lens] Terms order direction (#39884)
* fix types
* [Lens] Data panel styling and optimizations (#40787)
Style the data panel (mostly Joe Reuter's doing). Optimize a bunch of the Lens stack.
* Add metric preview icon
* Fix metric vis tests
* Fix metric plugin imports
* Use the operation label as the metric title
* [Lens] Optimize dimension panel flow (#41114)
* [Lens] re-introduce no-explicit-any (#41454)
* [Lens] No results marker (#41450)
* [lens] Support layers for visualizing results of multiple queries (#41290)
* [lens] WIP add support for layers
* [lens] WIP switch to nested tables
* Get basic layering to work
* Load multiple tables and render in one chart
* Fix priority ordering
* Reduce quantity of linting errors
* Ensure that new xy layer state has a split column
* Make the "add" y / split the trailing accessor
* Various fixes for datasource public API and implementation
* Unify datasource deletion and accessor removal
* Fix broken scss
* Fix xy visualization TypeScript errors?
* Build basic suggestions
* Restore save/load and fix typescript bugs
* simplify init routine
* fix save tests
* fix persistence tests
* fix state management tests
* Ensure the data table is aligned to the top
* Add layer support to Lens datatable
* Give xy chart a default layer initially
* Allow deletion of layers in xy charts
* xy: Make split accessor singular
Remove commented code blocks
* Change expression type for lens_merge_tables
* Fix XY chart rendering expression
* Fix type errors relating to `layerId` in table suggestions
* Pass around tables for suggestions with associated layerIds
* fix tests in workspace panel
* fix editor_frame tests
* Fix xy tests, skip inapplicable tests
that will be implemented in a separate PR
* add some tests for multiple datasources and layers
* Suggest that split series comes before X axis in XY chart
* Get datatable suggestion working
* Adjust how xy axis labels are computed
* Datasource suggestions should handle layers and have tests
* Fix linting in XY chart and remove commented code
* Update snapshots from earlier change
* Fix linting errors
* More cleanup
* Remove commented code
* Test the multi-column editor
* XY Visualization does not need to track datasourceId
* Fix various comments
* Remove unused xy prop
Add datasource header to datatable config
* Use operation labels for XY chart
* Adding and removing layers is reflected in the datasource
* rewrote datasource state init
* clean up editor_frame frame api implementation
* clean up editor frame
* [Lens] Embeddable (#41361)
* [lens] Move XY chart config into popover and fix layering (#41927)
* [lens] Move XY chart config into popover and fix layering
* Fix tests
* Update style
* Change wrapping of layer settings popover
* [Lens] Fix bugs in date_histogram and filter ratio (#42046)
* [Lens] Performance improvements (#41784)
* fix type error
* switch default size of terms operation to 3 (#42334)
* [lens] Improve suggestions for split series (#42052)
* [lens] Add chart switcher (#42093)
* solve merge conflicts
* fix test case
* [Lens] Allow only current visualization on field drop in workspace (#42344)
* [Lens] Remove indexpattern id on column (#42429)
* [lens] Implement app-level filtering and time picker (#42031)
* [lens] Implement app-level filtering and time picker
* More integration with filter bar
* Clean up test code and type errors
* Add frame level tests for syncing with app
* Add test coverage for app logic
* Simplify state management from app down
* Fix import errors
* Clarify whether properties are ids or titles for index pattern
* pass new saved object by ref
* add dirty state checking
* Fix tests
* [Lens] Add some tests around document handling in dimension panel (#42670)
* [Lens] Terms operation boolean support (#42817)
* [lens] Minor UX/UI improvements in Lens (#42852)
* Make dimension popover toggle when clicking button
* Without suggestions hide suggestion panel
* Add missing translations (#42921)
* [Lens] Config panel design (#42980)
* Fix up design of config panel
Does not include config popover
* Add metric suggestions, fix tests
* Remove a couple of non-null assertions (#43013)
* Remove a couple of non-null assertions
* Remove orphaned import
* [Lens] Switch indexpattern manually (#42599)
* [Lens] Update frame to put suggestions at the bottom (#42997)
* Back out suggestion changes, in lieu
of Joe's work
* fix type errors
* switch indexpattern on layer if there is only a single empty one (#43079)
* [Lens] Suggest reduced versions of current data table (#42537)
* [Lens] Field formatter support (#38874)
* Fix bugs
* Fix metric autoscale logic
* Register metric as an embeddable
* Fix metric autoscale flicker
* Render mini metric in suggestions panel
* Cache the metric filterOperations function
* fix auto scaling edge cases
* [Lens] Add bucket nesting editor to indexpattern (#42869)
* Modify auto-scale to handle resize events
* use format hints in metric vis
* start cleaning up suggestions
* [Lens] Remove unnecessary fields and indexing from mappings (#43285)
* Tweak metric to only scale down so far, and
scale both the number and the label.
* Fix lens metric tests
* [Lens] Xy scale type (#42142)
* start adding more suggestions
* remove unused imports
* work on suggestions
* work more on suggestions
* work more on suggestions
* work more on suggestions
* [lens] Allow updater function to be used for updating state (#43373)
* [Lens] Lens metric visualization (#39364)
* clean up tests and add new ones
* remove isMetric
* area as default on time dimension
* fix bug in area chart for time
* Fix axis rotation (#43792)
* remove title form layer
* [Lens] Auto date histogram (#43775)
* Add auto date histogram
* Improve documentation and cleanup
* Add tests
* Change test name
* handle state in app
* fix isMetric usages
* fix integration tests
* fix type errors
* fix date handling on submit
* add new suggestion types
* fix test
* do not suggest single tables
* remove unused import
* [Lens] Fix query bar integration (#43865)
* switch order of appending new string column
* resolve merge conflicts
* [Lens] Clean up operations code (#43784)
* fix merge conflicts
* poc implementation
* highlight currently active suggestion and provide button to submit current choice
* [Lens] Functional tests (#44279)
Foundational layer for lens functional tests. Lens-specific page objects are not in this PR.
* [Lens] Add Lens visualizations to Visualize list (#43398)
* [Lens] Suggestion improvements (#43688)
* fix bugs
* [lens] Calculate existence of fields in datasource (#44422)
* [lens] Calculate existence of fields in datasource
* Fix route registration
* Add page object and use existence in functional test
* Simplify layout of filters for index pattern
* Respond to review feedback
* Update class names
* Use new URL constant
* Fix usage of base path
* Fix lint errors
* [Lens ] Preview metric (#43755)
* format filter ratio as percentage (#44625)
* [Lens] Remove datasource suggestion id (#44495)
* [Lens] Make breadcrumbs look and feel like Visualize (#44258)
* [lens] Fix breakage from app-arch movements (#44720)
* Design cleanup
* PR review comments
* fix tests
* small cleanup
* remove unused import
* [lens] Fix type error in test from merge
* [lens] Fix registration of embeddable (#45171)
* keep references stable if table is just extended and add tests
* changed label for stack/unstack
* fix test
* [Lens] Functional tests (#44814)
Basic functional tests for Lens, by no means comprehensive. This is more of a smokescreen test of some normal use cases.
* [lens] Add Lens to CODEOWNERS (#45296)
* [lens] Fix visualization alias registration
* [lens] Fix usage of EUI after typescript upgrade (#45404)
* [lens] Fix usage of EUI after typescript upgrade
* Use local fix instead of workaround
* fix bug and address reviews
* Fix frame tests
2019-09-19 00:28:26 +02:00
|
|
|
beforeEach(() => {
|
|
|
|
jest.resetAllMocks();
|
|
|
|
});
|
|
|
|
|
2020-11-24 09:56:56 +01:00
|
|
|
test('partially maps invalid combinations, but hides them', () => {
|
2019-09-17 20:57:53 +02:00
|
|
|
expect(
|
|
|
|
([
|
|
|
|
{
|
|
|
|
isMultiRow: true,
|
|
|
|
columns: [dateCol('a')],
|
|
|
|
layerId: 'first',
|
|
|
|
changeType: 'unchanged',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
isMultiRow: true,
|
|
|
|
columns: [strCol('foo'), strCol('bar')],
|
|
|
|
layerId: 'first',
|
|
|
|
changeType: 'unchanged',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
isMultiRow: false,
|
2020-11-24 09:56:56 +01:00
|
|
|
columns: [numCol('bar')],
|
2019-09-17 20:57:53 +02:00
|
|
|
layerId: 'first',
|
|
|
|
changeType: 'unchanged',
|
|
|
|
},
|
2020-11-24 09:56:56 +01:00
|
|
|
] as TableSuggestion[]).map((table) => {
|
|
|
|
const suggestions = getSuggestions({ table, keptLayerIds: [] });
|
|
|
|
expect(suggestions.every((suggestion) => suggestion.hide)).toEqual(true);
|
|
|
|
expect(suggestions).toHaveLength(10);
|
|
|
|
})
|
|
|
|
);
|
|
|
|
});
|
|
|
|
|
|
|
|
test('rejects incomplete configurations if there is a state already but no sub visualization id', () => {
|
|
|
|
expect(
|
|
|
|
([
|
2019-09-17 20:57:53 +02:00
|
|
|
{
|
|
|
|
isMultiRow: true,
|
2020-11-24 09:56:56 +01:00
|
|
|
columns: [dateCol('a')],
|
2019-09-17 20:57:53 +02:00
|
|
|
layerId: 'first',
|
2020-11-24 09:56:56 +01:00
|
|
|
changeType: 'reduced',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
isMultiRow: false,
|
|
|
|
columns: [numCol('bar')],
|
|
|
|
layerId: 'first',
|
|
|
|
changeType: 'reduced',
|
2019-09-17 20:57:53 +02:00
|
|
|
},
|
2020-11-24 09:56:56 +01:00
|
|
|
] as TableSuggestion[]).map((table) => {
|
|
|
|
const suggestions = getSuggestions({
|
|
|
|
table,
|
|
|
|
keptLayerIds: [],
|
|
|
|
state: {} as XYState,
|
|
|
|
});
|
|
|
|
expect(suggestions).toHaveLength(0);
|
|
|
|
})
|
2019-09-17 20:57:53 +02:00
|
|
|
);
|
|
|
|
});
|
|
|
|
|
2020-09-15 11:24:02 +02:00
|
|
|
test('suggests all xy charts without changes to the state when switching among xy charts with malformed table', () => {
|
|
|
|
(generateId as jest.Mock).mockReturnValueOnce('aaa');
|
|
|
|
const suggestions = getSuggestions({
|
|
|
|
table: {
|
|
|
|
isMultiRow: false,
|
|
|
|
columns: [numCol('bytes')],
|
|
|
|
layerId: 'first',
|
|
|
|
changeType: 'unchanged',
|
|
|
|
},
|
|
|
|
keptLayerIds: [],
|
|
|
|
state: {
|
|
|
|
legend: { isVisible: true, position: 'bottom' },
|
2020-11-06 16:34:30 +01:00
|
|
|
valueLabels: 'hide',
|
2020-09-15 11:24:02 +02:00
|
|
|
preferredSeriesType: 'bar',
|
|
|
|
layers: [
|
|
|
|
{
|
|
|
|
layerId: 'first',
|
|
|
|
seriesType: 'bar',
|
|
|
|
accessors: ['bytes'],
|
|
|
|
splitAccessor: undefined,
|
|
|
|
},
|
|
|
|
{
|
|
|
|
layerId: 'second',
|
|
|
|
seriesType: 'bar',
|
|
|
|
accessors: ['bytes'],
|
|
|
|
splitAccessor: undefined,
|
|
|
|
},
|
|
|
|
],
|
|
|
|
},
|
|
|
|
});
|
|
|
|
|
|
|
|
expect(suggestions).toHaveLength(visualizationTypes.length);
|
|
|
|
expect(suggestions.map(({ state }) => xyVisualization.getVisualizationTypeId(state))).toEqual([
|
|
|
|
'bar',
|
|
|
|
'bar_horizontal',
|
|
|
|
'bar_stacked',
|
|
|
|
'bar_percentage_stacked',
|
|
|
|
'bar_horizontal_stacked',
|
|
|
|
'bar_horizontal_percentage_stacked',
|
|
|
|
'area',
|
|
|
|
'area_stacked',
|
|
|
|
'area_percentage_stacked',
|
|
|
|
'line',
|
|
|
|
]);
|
|
|
|
});
|
|
|
|
|
2020-05-05 21:59:32 +02:00
|
|
|
test('suggests all basic x y charts when switching from another vis', () => {
|
|
|
|
(generateId as jest.Mock).mockReturnValueOnce('aaa');
|
|
|
|
const suggestions = getSuggestions({
|
|
|
|
table: {
|
|
|
|
isMultiRow: true,
|
|
|
|
columns: [numCol('bytes'), dateCol('date')],
|
|
|
|
layerId: 'first',
|
|
|
|
changeType: 'unchanged',
|
|
|
|
},
|
|
|
|
keptLayerIds: [],
|
|
|
|
});
|
|
|
|
|
|
|
|
expect(suggestions).toHaveLength(visualizationTypes.length);
|
2020-07-17 20:02:52 +02:00
|
|
|
expect(suggestions.map(({ state }) => xyVisualization.getVisualizationTypeId(state))).toEqual([
|
|
|
|
'bar_stacked',
|
|
|
|
'bar',
|
2020-11-12 22:00:57 +01:00
|
|
|
'bar_horizontal',
|
|
|
|
'bar_percentage_stacked',
|
|
|
|
'bar_horizontal_stacked',
|
|
|
|
'bar_horizontal_percentage_stacked',
|
|
|
|
'area',
|
|
|
|
'area_stacked',
|
|
|
|
'area_percentage_stacked',
|
|
|
|
'line',
|
2020-07-17 20:02:52 +02:00
|
|
|
]);
|
|
|
|
});
|
|
|
|
|
|
|
|
// This limitation is acceptable for now, but is now tested
|
|
|
|
test('is unable to generate layers when switching from a non-XY chart with multiple layers', () => {
|
|
|
|
(generateId as jest.Mock).mockReturnValueOnce('aaa');
|
|
|
|
const suggestions = getSuggestions({
|
|
|
|
table: {
|
|
|
|
isMultiRow: true,
|
|
|
|
columns: [numCol('bytes'), dateCol('date')],
|
|
|
|
layerId: 'first',
|
|
|
|
changeType: 'unchanged',
|
|
|
|
},
|
|
|
|
keptLayerIds: ['first', 'second'],
|
|
|
|
});
|
|
|
|
|
|
|
|
expect(suggestions).toHaveLength(visualizationTypes.length);
|
2020-09-15 11:24:02 +02:00
|
|
|
expect(suggestions.map(({ state }) => state.layers.length)).toEqual([
|
|
|
|
1,
|
|
|
|
1,
|
|
|
|
1,
|
|
|
|
1,
|
|
|
|
1,
|
|
|
|
1,
|
|
|
|
1,
|
|
|
|
1,
|
|
|
|
1,
|
|
|
|
1,
|
|
|
|
]);
|
2020-07-17 20:02:52 +02:00
|
|
|
expect(suggestions.map(({ state }) => xyVisualization.getVisualizationTypeId(state))).toEqual([
|
2020-05-05 21:59:32 +02:00
|
|
|
'bar_stacked',
|
|
|
|
'bar',
|
2020-11-12 22:00:57 +01:00
|
|
|
'bar_horizontal',
|
|
|
|
'bar_percentage_stacked',
|
|
|
|
'bar_horizontal_stacked',
|
|
|
|
'bar_horizontal_percentage_stacked',
|
|
|
|
'area',
|
|
|
|
'area_stacked',
|
|
|
|
'area_percentage_stacked',
|
|
|
|
'line',
|
2020-05-05 21:59:32 +02:00
|
|
|
]);
|
|
|
|
});
|
|
|
|
|
|
|
|
test('suggests all basic x y charts when switching from another x y chart', () => {
|
|
|
|
(generateId as jest.Mock).mockReturnValueOnce('aaa');
|
|
|
|
const suggestions = getSuggestions({
|
|
|
|
table: {
|
|
|
|
isMultiRow: true,
|
|
|
|
columns: [numCol('bytes'), dateCol('date')],
|
|
|
|
layerId: 'first',
|
|
|
|
changeType: 'unchanged',
|
|
|
|
},
|
|
|
|
keptLayerIds: ['first'],
|
|
|
|
state: {
|
|
|
|
legend: { isVisible: true, position: 'bottom' },
|
2020-11-06 16:34:30 +01:00
|
|
|
valueLabels: 'hide',
|
2020-05-05 21:59:32 +02:00
|
|
|
preferredSeriesType: 'bar',
|
|
|
|
layers: [
|
|
|
|
{
|
|
|
|
layerId: 'first',
|
|
|
|
seriesType: 'bar',
|
|
|
|
xAccessor: 'date',
|
|
|
|
accessors: ['bytes'],
|
|
|
|
splitAccessor: undefined,
|
|
|
|
},
|
|
|
|
],
|
|
|
|
},
|
|
|
|
});
|
|
|
|
|
|
|
|
expect(suggestions).toHaveLength(visualizationTypes.length);
|
2020-07-17 20:02:52 +02:00
|
|
|
expect(suggestions.map(({ state }) => xyVisualization.getVisualizationTypeId(state))).toEqual([
|
|
|
|
'line',
|
|
|
|
'bar',
|
|
|
|
'bar_horizontal',
|
|
|
|
'bar_stacked',
|
2020-09-15 11:24:02 +02:00
|
|
|
'bar_percentage_stacked',
|
2020-07-17 20:02:52 +02:00
|
|
|
'bar_horizontal_stacked',
|
2020-09-15 11:24:02 +02:00
|
|
|
'bar_horizontal_percentage_stacked',
|
2020-07-17 20:02:52 +02:00
|
|
|
'area',
|
|
|
|
'area_stacked',
|
2020-09-15 11:24:02 +02:00
|
|
|
'area_percentage_stacked',
|
2020-07-17 20:02:52 +02:00
|
|
|
]);
|
|
|
|
});
|
|
|
|
|
|
|
|
test('suggests all basic x y charts when switching from another x y chart with multiple layers', () => {
|
|
|
|
(generateId as jest.Mock).mockReturnValueOnce('aaa');
|
|
|
|
const suggestions = getSuggestions({
|
|
|
|
table: {
|
|
|
|
isMultiRow: true,
|
|
|
|
columns: [numCol('bytes'), dateCol('date')],
|
|
|
|
layerId: 'first',
|
|
|
|
changeType: 'unchanged',
|
|
|
|
},
|
|
|
|
keptLayerIds: ['first', 'second'],
|
|
|
|
state: {
|
|
|
|
legend: { isVisible: true, position: 'bottom' },
|
2020-11-06 16:34:30 +01:00
|
|
|
valueLabels: 'hide',
|
2020-07-17 20:02:52 +02:00
|
|
|
preferredSeriesType: 'bar',
|
|
|
|
layers: [
|
|
|
|
{
|
|
|
|
layerId: 'first',
|
|
|
|
seriesType: 'bar',
|
|
|
|
xAccessor: 'date',
|
|
|
|
accessors: ['bytes'],
|
|
|
|
splitAccessor: undefined,
|
|
|
|
},
|
|
|
|
{
|
|
|
|
layerId: 'second',
|
|
|
|
seriesType: 'bar',
|
|
|
|
xAccessor: undefined,
|
|
|
|
accessors: [],
|
|
|
|
splitAccessor: undefined,
|
|
|
|
},
|
|
|
|
],
|
|
|
|
},
|
|
|
|
});
|
|
|
|
|
|
|
|
expect(suggestions).toHaveLength(visualizationTypes.length);
|
|
|
|
expect(suggestions.map(({ state }) => xyVisualization.getVisualizationTypeId(state))).toEqual([
|
2020-05-05 21:59:32 +02:00
|
|
|
'line',
|
|
|
|
'bar',
|
|
|
|
'bar_horizontal',
|
|
|
|
'bar_stacked',
|
2020-09-15 11:24:02 +02:00
|
|
|
'bar_percentage_stacked',
|
2020-05-05 21:59:32 +02:00
|
|
|
'bar_horizontal_stacked',
|
2020-09-15 11:24:02 +02:00
|
|
|
'bar_horizontal_percentage_stacked',
|
2020-05-05 21:59:32 +02:00
|
|
|
'area',
|
|
|
|
'area_stacked',
|
2020-09-15 11:24:02 +02:00
|
|
|
'area_percentage_stacked',
|
2020-05-05 21:59:32 +02:00
|
|
|
]);
|
2020-07-17 20:02:52 +02:00
|
|
|
expect(suggestions.map(({ state }) => state.layers.map((l) => l.layerId))).toEqual([
|
|
|
|
['first', 'second'],
|
|
|
|
['first', 'second'],
|
|
|
|
['first', 'second'],
|
|
|
|
['first', 'second'],
|
|
|
|
['first', 'second'],
|
|
|
|
['first', 'second'],
|
|
|
|
['first', 'second'],
|
2020-09-15 11:24:02 +02:00
|
|
|
['first', 'second'],
|
|
|
|
['first', 'second'],
|
|
|
|
['first', 'second'],
|
2020-07-17 20:02:52 +02:00
|
|
|
]);
|
2020-05-05 21:59:32 +02:00
|
|
|
});
|
|
|
|
|
|
|
|
test('suggests all basic x y chart with date on x', () => {
|
2019-09-17 20:57:53 +02:00
|
|
|
(generateId as jest.Mock).mockReturnValueOnce('aaa');
|
|
|
|
const [suggestion, ...rest] = getSuggestions({
|
|
|
|
table: {
|
|
|
|
isMultiRow: true,
|
|
|
|
columns: [numCol('bytes'), dateCol('date')],
|
|
|
|
layerId: 'first',
|
|
|
|
changeType: 'unchanged',
|
|
|
|
},
|
2019-10-30 00:05:03 +01:00
|
|
|
keptLayerIds: [],
|
2019-09-17 20:57:53 +02:00
|
|
|
});
|
|
|
|
|
2020-05-05 21:59:32 +02:00
|
|
|
expect(rest).toHaveLength(visualizationTypes.length - 1);
|
2019-09-17 20:57:53 +02:00
|
|
|
expect(suggestionSubset(suggestion)).toMatchInlineSnapshot(`
|
2019-10-01 21:04:00 +02:00
|
|
|
Array [
|
|
|
|
Object {
|
|
|
|
"seriesType": "bar_stacked",
|
2020-03-17 14:57:52 +01:00
|
|
|
"splitAccessor": undefined,
|
2019-10-01 21:04:00 +02:00
|
|
|
"x": "date",
|
|
|
|
"y": Array [
|
|
|
|
"bytes",
|
|
|
|
],
|
|
|
|
},
|
|
|
|
]
|
|
|
|
`);
|
2019-09-17 20:57:53 +02:00
|
|
|
});
|
|
|
|
|
2020-08-27 00:27:40 +02:00
|
|
|
test('suggests all basic x y chart with histogram on x', () => {
|
|
|
|
(generateId as jest.Mock).mockReturnValueOnce('aaa');
|
|
|
|
const [suggestion, ...rest] = getSuggestions({
|
|
|
|
table: {
|
|
|
|
isMultiRow: true,
|
|
|
|
columns: [numCol('bytes'), histogramCol('duration')],
|
|
|
|
layerId: 'first',
|
|
|
|
changeType: 'unchanged',
|
|
|
|
},
|
|
|
|
keptLayerIds: [],
|
|
|
|
});
|
|
|
|
|
|
|
|
expect(rest).toHaveLength(visualizationTypes.length - 1);
|
|
|
|
expect(suggestionSubset(suggestion)).toMatchInlineSnapshot(`
|
|
|
|
Array [
|
|
|
|
Object {
|
|
|
|
"seriesType": "bar_stacked",
|
|
|
|
"splitAccessor": undefined,
|
|
|
|
"x": "duration",
|
|
|
|
"y": Array [
|
|
|
|
"bytes",
|
|
|
|
],
|
|
|
|
},
|
|
|
|
]
|
|
|
|
`);
|
|
|
|
});
|
|
|
|
|
2019-09-17 20:57:53 +02:00
|
|
|
test('does not suggest multiple splits', () => {
|
|
|
|
const suggestions = getSuggestions({
|
|
|
|
table: {
|
|
|
|
isMultiRow: true,
|
|
|
|
columns: [
|
|
|
|
numCol('price'),
|
|
|
|
numCol('quantity'),
|
|
|
|
dateCol('date'),
|
|
|
|
strCol('product'),
|
|
|
|
strCol('city'),
|
|
|
|
],
|
|
|
|
layerId: 'first',
|
|
|
|
changeType: 'unchanged',
|
|
|
|
},
|
2019-10-30 00:05:03 +01:00
|
|
|
keptLayerIds: [],
|
2019-09-17 20:57:53 +02:00
|
|
|
});
|
|
|
|
|
|
|
|
expect(suggestions).toHaveLength(0);
|
|
|
|
});
|
|
|
|
|
|
|
|
test('suggests a split x y chart with date on x', () => {
|
|
|
|
const [suggestion, ...rest] = getSuggestions({
|
|
|
|
table: {
|
|
|
|
isMultiRow: true,
|
|
|
|
columns: [numCol('price'), numCol('quantity'), dateCol('date'), strCol('product')],
|
|
|
|
layerId: 'first',
|
|
|
|
changeType: 'unchanged',
|
|
|
|
},
|
2019-10-30 00:05:03 +01:00
|
|
|
keptLayerIds: [],
|
2019-09-17 20:57:53 +02:00
|
|
|
});
|
|
|
|
|
2020-05-05 21:59:32 +02:00
|
|
|
expect(rest).toHaveLength(visualizationTypes.length - 1);
|
2019-09-17 20:57:53 +02:00
|
|
|
expect(suggestionSubset(suggestion)).toMatchInlineSnapshot(`
|
2019-10-01 21:04:00 +02:00
|
|
|
Array [
|
|
|
|
Object {
|
|
|
|
"seriesType": "bar_stacked",
|
|
|
|
"splitAccessor": "product",
|
|
|
|
"x": "date",
|
|
|
|
"y": Array [
|
|
|
|
"price",
|
|
|
|
"quantity",
|
|
|
|
],
|
|
|
|
},
|
|
|
|
]
|
|
|
|
`);
|
2019-09-17 20:57:53 +02:00
|
|
|
});
|
|
|
|
|
|
|
|
test('uses datasource provided title if available', () => {
|
|
|
|
const [suggestion, ...rest] = getSuggestions({
|
|
|
|
table: {
|
|
|
|
isMultiRow: true,
|
|
|
|
columns: [numCol('price'), numCol('quantity'), dateCol('date'), strCol('product')],
|
|
|
|
layerId: 'first',
|
2020-04-30 16:52:10 +02:00
|
|
|
changeType: 'extended',
|
2019-09-17 20:57:53 +02:00
|
|
|
label: 'Datasource title',
|
|
|
|
},
|
2019-10-30 00:05:03 +01:00
|
|
|
keptLayerIds: [],
|
2019-09-17 20:57:53 +02:00
|
|
|
});
|
|
|
|
|
|
|
|
expect(rest).toHaveLength(0);
|
|
|
|
expect(suggestion.title).toEqual('Datasource title');
|
|
|
|
});
|
|
|
|
|
2020-04-30 16:52:10 +02:00
|
|
|
test('suggests only stacked bar chart when xy chart is inactive', () => {
|
|
|
|
const [suggestion, ...rest] = getSuggestions({
|
|
|
|
table: {
|
|
|
|
isMultiRow: true,
|
|
|
|
columns: [dateCol('date'), numCol('price')],
|
|
|
|
layerId: 'first',
|
|
|
|
changeType: 'unchanged',
|
|
|
|
label: 'Datasource title',
|
|
|
|
},
|
|
|
|
keptLayerIds: [],
|
|
|
|
});
|
|
|
|
|
2020-05-05 21:59:32 +02:00
|
|
|
expect(rest).toHaveLength(visualizationTypes.length - 1);
|
2021-03-02 11:25:35 +01:00
|
|
|
expect(suggestion.title).toEqual('Bar vertical stacked');
|
2020-04-30 16:52:10 +02:00
|
|
|
expect(suggestion.state).toEqual(
|
|
|
|
expect.objectContaining({
|
|
|
|
layers: [
|
|
|
|
expect.objectContaining({
|
|
|
|
seriesType: 'bar_stacked',
|
|
|
|
xAccessor: 'date',
|
|
|
|
accessors: ['price'],
|
|
|
|
splitAccessor: undefined,
|
|
|
|
}),
|
|
|
|
],
|
|
|
|
})
|
|
|
|
);
|
|
|
|
});
|
|
|
|
|
2020-11-04 11:27:52 +01:00
|
|
|
test('includes passed in palette for split charts if specified', () => {
|
|
|
|
const mainPalette: PaletteOutput = { type: 'palette', name: 'mock' };
|
|
|
|
const [suggestion] = getSuggestions({
|
|
|
|
table: {
|
|
|
|
isMultiRow: true,
|
|
|
|
columns: [numCol('price'), numCol('quantity'), dateCol('date'), strCol('product')],
|
|
|
|
layerId: 'first',
|
|
|
|
changeType: 'unchanged',
|
|
|
|
},
|
|
|
|
keptLayerIds: [],
|
|
|
|
mainPalette,
|
|
|
|
});
|
|
|
|
|
|
|
|
expect(suggestion.state.layers[0].palette).toEqual(mainPalette);
|
|
|
|
});
|
|
|
|
|
|
|
|
test('ignores passed in palette for non splitted charts', () => {
|
|
|
|
const mainPalette: PaletteOutput = { type: 'palette', name: 'mock' };
|
|
|
|
const [suggestion] = getSuggestions({
|
|
|
|
table: {
|
|
|
|
isMultiRow: true,
|
|
|
|
columns: [numCol('price'), dateCol('date')],
|
|
|
|
layerId: 'first',
|
|
|
|
changeType: 'unchanged',
|
|
|
|
},
|
|
|
|
keptLayerIds: [],
|
|
|
|
mainPalette,
|
|
|
|
});
|
|
|
|
|
|
|
|
expect(suggestion.state.layers[0].palette).toEqual(undefined);
|
|
|
|
});
|
|
|
|
|
2019-09-17 20:57:53 +02:00
|
|
|
test('hides reduced suggestions if there is a current state', () => {
|
|
|
|
const [suggestion, ...rest] = getSuggestions({
|
|
|
|
table: {
|
|
|
|
isMultiRow: true,
|
|
|
|
columns: [numCol('price'), numCol('quantity'), dateCol('date'), strCol('product')],
|
|
|
|
layerId: 'first',
|
|
|
|
changeType: 'reduced',
|
|
|
|
},
|
|
|
|
state: {
|
|
|
|
legend: { isVisible: true, position: 'bottom' },
|
2020-11-06 16:34:30 +01:00
|
|
|
valueLabels: 'hide',
|
2019-09-17 20:57:53 +02:00
|
|
|
preferredSeriesType: 'bar',
|
|
|
|
layers: [
|
|
|
|
{
|
|
|
|
accessors: ['price', 'quantity'],
|
|
|
|
layerId: 'first',
|
|
|
|
seriesType: 'bar',
|
|
|
|
splitAccessor: 'product',
|
|
|
|
xAccessor: 'date',
|
|
|
|
},
|
|
|
|
],
|
|
|
|
},
|
2019-10-30 00:05:03 +01:00
|
|
|
keptLayerIds: [],
|
2019-09-17 20:57:53 +02:00
|
|
|
});
|
|
|
|
|
|
|
|
expect(rest).toHaveLength(0);
|
|
|
|
expect(suggestion.hide).toBeTruthy();
|
|
|
|
});
|
|
|
|
|
2020-04-30 16:52:10 +02:00
|
|
|
test('hides reduced suggestions if xy visualization is not active', () => {
|
2019-09-17 20:57:53 +02:00
|
|
|
const [suggestion, ...rest] = getSuggestions({
|
|
|
|
table: {
|
|
|
|
isMultiRow: true,
|
|
|
|
columns: [numCol('price'), numCol('quantity'), dateCol('date'), strCol('product')],
|
|
|
|
layerId: 'first',
|
|
|
|
changeType: 'reduced',
|
|
|
|
},
|
2019-10-30 00:05:03 +01:00
|
|
|
keptLayerIds: [],
|
2019-09-17 20:57:53 +02:00
|
|
|
});
|
|
|
|
|
|
|
|
expect(rest).toHaveLength(0);
|
2020-04-30 16:52:10 +02:00
|
|
|
expect(suggestion.hide).toBeTruthy();
|
2019-09-17 20:57:53 +02:00
|
|
|
});
|
|
|
|
|
2020-10-14 09:56:26 +02:00
|
|
|
test('respects requested sub visualization type if set', () => {
|
|
|
|
const [suggestion, ...rest] = getSuggestions({
|
|
|
|
table: {
|
|
|
|
isMultiRow: true,
|
|
|
|
columns: [numCol('price'), numCol('quantity'), dateCol('date'), strCol('product')],
|
|
|
|
layerId: 'first',
|
|
|
|
changeType: 'reduced',
|
|
|
|
},
|
|
|
|
keptLayerIds: [],
|
|
|
|
subVisualizationId: 'area',
|
|
|
|
});
|
|
|
|
|
|
|
|
expect(rest).toHaveLength(0);
|
|
|
|
expect(suggestion.state.preferredSeriesType).toBe('area');
|
|
|
|
});
|
|
|
|
|
2020-07-23 09:35:36 +02:00
|
|
|
test('keeps existing seriesType for initial tables', () => {
|
|
|
|
const currentState: XYState = {
|
|
|
|
legend: { isVisible: true, position: 'bottom' },
|
2020-11-06 16:34:30 +01:00
|
|
|
valueLabels: 'hide',
|
2020-07-23 09:35:36 +02:00
|
|
|
fittingFunction: 'None',
|
|
|
|
preferredSeriesType: 'line',
|
|
|
|
layers: [
|
|
|
|
{
|
|
|
|
accessors: [],
|
|
|
|
layerId: 'first',
|
|
|
|
seriesType: 'line',
|
|
|
|
splitAccessor: undefined,
|
|
|
|
xAccessor: '',
|
|
|
|
},
|
|
|
|
],
|
|
|
|
};
|
|
|
|
const suggestions = getSuggestions({
|
|
|
|
table: {
|
|
|
|
isMultiRow: true,
|
|
|
|
columns: [numCol('price'), dateCol('date')],
|
|
|
|
layerId: 'first',
|
|
|
|
changeType: 'initial',
|
|
|
|
},
|
|
|
|
state: currentState,
|
|
|
|
keptLayerIds: ['first'],
|
|
|
|
});
|
|
|
|
|
|
|
|
expect(suggestions).toHaveLength(1);
|
|
|
|
|
|
|
|
expect(suggestions[0].hide).toEqual(false);
|
|
|
|
expect(suggestions[0].state.preferredSeriesType).toEqual('line');
|
|
|
|
expect(suggestions[0].state.layers[0].seriesType).toEqual('line');
|
|
|
|
});
|
|
|
|
|
2020-05-05 21:59:32 +02:00
|
|
|
test('makes a visible seriesType suggestion for unchanged table without split', () => {
|
2019-10-01 21:04:00 +02:00
|
|
|
const currentState: XYState = {
|
|
|
|
legend: { isVisible: true, position: 'bottom' },
|
2020-11-06 16:34:30 +01:00
|
|
|
valueLabels: 'hide',
|
2020-07-03 16:15:06 +02:00
|
|
|
fittingFunction: 'None',
|
2020-09-16 10:30:19 +02:00
|
|
|
axisTitlesVisibilitySettings: { x: true, yLeft: true, yRight: true },
|
|
|
|
gridlinesVisibilitySettings: { x: true, yLeft: true, yRight: true },
|
|
|
|
tickLabelsVisibilitySettings: { x: true, yLeft: false, yRight: false },
|
2019-10-01 21:04:00 +02:00
|
|
|
preferredSeriesType: 'bar',
|
|
|
|
layers: [
|
|
|
|
{
|
|
|
|
accessors: ['price'],
|
|
|
|
layerId: 'first',
|
|
|
|
seriesType: 'bar',
|
2020-03-17 14:57:52 +01:00
|
|
|
splitAccessor: undefined,
|
2019-10-01 21:04:00 +02:00
|
|
|
xAccessor: 'date',
|
|
|
|
},
|
|
|
|
],
|
|
|
|
};
|
|
|
|
const suggestions = getSuggestions({
|
|
|
|
table: {
|
|
|
|
isMultiRow: true,
|
|
|
|
columns: [numCol('price'), dateCol('date')],
|
|
|
|
layerId: 'first',
|
|
|
|
changeType: 'unchanged',
|
|
|
|
},
|
|
|
|
state: currentState,
|
2019-10-30 00:05:03 +01:00
|
|
|
keptLayerIds: ['first'],
|
2019-10-01 21:04:00 +02:00
|
|
|
});
|
|
|
|
|
2020-05-05 21:59:32 +02:00
|
|
|
expect(suggestions).toHaveLength(visualizationTypes.length);
|
2019-10-01 21:04:00 +02:00
|
|
|
|
2020-05-05 21:59:32 +02:00
|
|
|
expect(suggestions[0].hide).toEqual(false);
|
2019-10-01 21:04:00 +02:00
|
|
|
expect(suggestions[0].state).toEqual({
|
|
|
|
...currentState,
|
|
|
|
preferredSeriesType: 'line',
|
|
|
|
layers: [{ ...currentState.layers[0], seriesType: 'line' }],
|
|
|
|
});
|
|
|
|
expect(suggestions[0].title).toEqual('Line chart');
|
|
|
|
});
|
|
|
|
|
|
|
|
test('suggests seriesType and stacking when there is a split', () => {
|
2019-09-17 20:57:53 +02:00
|
|
|
const currentState: XYState = {
|
|
|
|
legend: { isVisible: true, position: 'bottom' },
|
2020-11-06 16:34:30 +01:00
|
|
|
valueLabels: 'hide',
|
2019-09-17 20:57:53 +02:00
|
|
|
preferredSeriesType: 'bar',
|
2020-07-03 16:15:06 +02:00
|
|
|
fittingFunction: 'None',
|
2020-09-16 10:30:19 +02:00
|
|
|
axisTitlesVisibilitySettings: { x: true, yLeft: true, yRight: true },
|
|
|
|
gridlinesVisibilitySettings: { x: true, yLeft: true, yRight: true },
|
|
|
|
tickLabelsVisibilitySettings: { x: true, yLeft: false, yRight: false },
|
2019-09-17 20:57:53 +02:00
|
|
|
layers: [
|
|
|
|
{
|
|
|
|
accessors: ['price', 'quantity'],
|
|
|
|
layerId: 'first',
|
|
|
|
seriesType: 'bar',
|
|
|
|
splitAccessor: 'product',
|
|
|
|
xAccessor: 'date',
|
|
|
|
},
|
|
|
|
],
|
|
|
|
};
|
2019-10-01 21:04:00 +02:00
|
|
|
const [seriesSuggestion, stackSuggestion, ...rest] = getSuggestions({
|
2019-09-17 20:57:53 +02:00
|
|
|
table: {
|
|
|
|
isMultiRow: true,
|
|
|
|
columns: [numCol('price'), numCol('quantity'), dateCol('date'), strCol('product')],
|
|
|
|
layerId: 'first',
|
|
|
|
changeType: 'unchanged',
|
|
|
|
},
|
|
|
|
state: currentState,
|
2020-07-17 20:02:52 +02:00
|
|
|
keptLayerIds: ['first'],
|
2019-09-17 20:57:53 +02:00
|
|
|
});
|
|
|
|
|
2020-05-05 21:59:32 +02:00
|
|
|
expect(rest).toHaveLength(visualizationTypes.length - 2);
|
2019-10-01 21:04:00 +02:00
|
|
|
expect(seriesSuggestion.state).toEqual({
|
|
|
|
...currentState,
|
|
|
|
preferredSeriesType: 'line',
|
|
|
|
layers: [{ ...currentState.layers[0], seriesType: 'line' }],
|
|
|
|
});
|
|
|
|
expect(stackSuggestion.state).toEqual({
|
2019-09-17 20:57:53 +02:00
|
|
|
...currentState,
|
2019-10-01 21:04:00 +02:00
|
|
|
preferredSeriesType: 'bar_stacked',
|
|
|
|
layers: [{ ...currentState.layers[0], seriesType: 'bar_stacked' }],
|
2019-09-17 20:57:53 +02:00
|
|
|
});
|
2019-10-01 21:04:00 +02:00
|
|
|
expect(seriesSuggestion.title).toEqual('Line chart');
|
|
|
|
expect(stackSuggestion.title).toEqual('Stacked');
|
2019-09-17 20:57:53 +02:00
|
|
|
});
|
|
|
|
|
|
|
|
test('suggests a flipped chart for unchanged table and existing bar chart on ordinal x axis', () => {
|
|
|
|
(generateId as jest.Mock).mockReturnValueOnce('dummyCol');
|
|
|
|
const currentState: XYState = {
|
|
|
|
legend: { isVisible: true, position: 'bottom' },
|
2020-11-06 16:34:30 +01:00
|
|
|
valueLabels: 'hide',
|
2020-07-03 16:15:06 +02:00
|
|
|
fittingFunction: 'None',
|
2019-09-17 20:57:53 +02:00
|
|
|
preferredSeriesType: 'bar',
|
|
|
|
layers: [
|
|
|
|
{
|
|
|
|
accessors: ['price', 'quantity'],
|
|
|
|
layerId: 'first',
|
|
|
|
seriesType: 'bar',
|
|
|
|
splitAccessor: 'dummyCol',
|
|
|
|
xAccessor: 'product',
|
|
|
|
},
|
|
|
|
],
|
|
|
|
};
|
|
|
|
const [suggestion, ...rest] = getSuggestions({
|
|
|
|
table: {
|
|
|
|
isMultiRow: true,
|
|
|
|
columns: [numCol('price'), numCol('quantity'), strCol('product')],
|
|
|
|
layerId: 'first',
|
|
|
|
changeType: 'unchanged',
|
|
|
|
},
|
|
|
|
state: currentState,
|
2019-10-30 00:05:03 +01:00
|
|
|
keptLayerIds: [],
|
2019-09-17 20:57:53 +02:00
|
|
|
});
|
|
|
|
|
2020-05-05 21:59:32 +02:00
|
|
|
expect(rest).toHaveLength(visualizationTypes.length - 1);
|
2019-10-02 19:21:39 +02:00
|
|
|
expect(suggestion.state.preferredSeriesType).toEqual('bar_horizontal');
|
2020-05-22 09:08:58 +02:00
|
|
|
expect(suggestion.state.layers.every((l) => l.seriesType === 'bar_horizontal')).toBeTruthy();
|
2019-09-17 20:57:53 +02:00
|
|
|
expect(suggestion.title).toEqual('Flip');
|
|
|
|
});
|
|
|
|
|
2019-10-01 21:04:00 +02:00
|
|
|
test('suggests stacking for unchanged table that has a split', () => {
|
[Lens] Transient suggestions (#44234)
* [lens] Initial Commit (#35627)
* [visualization editor] Initial Commit
* [lens] Add more complete initial state
* [lens] Fix type issues
* [lens] Remove feature control
* [lens] Bring back feature control and add tests
* [lens] Update plugin structure and naming per comments
* replace any usage by safe casting
* [lens] Respond to review comments
* [lens] Remove unused EditorFrameState type
* [lens] Initial state for IndexPatternDatasource (#36052)
* [lens] Add first tests to indexpattern data source
* Respond to review comments
* Fix type definitions
* [lens] Editor frame initializes datasources and visualizations (#36060)
* [lens] Editor frame initializes datasources and visualizations
* Respond to review comments
* Fix build issues
* Fix state management issue
* [lens][draft] Lens/drag drop (#36268)
Add basic drag / drop component to Lens
* remove local package (#36456)
* [lens] Native renderer (#36165)
* Add nativerenderer component
* Use native renderer in app and editor frame
* [Lens] No explicit any (#36515)
* [Lens] Implement basic editor frame state handling (#36443)
* [lens] Load index patterns and render in data panel (#36463)
* [lens] Editor frame initializes datasources and visualizations
* Respond to review comments
* Fix build issues
* remove local package
* [lens] Load index patterns into data source
* Redo types for Index Pattern Datasource
* Fix one more type
* Respond to review comments
* [draft] Lens/line chart renderer (#36827)
Expression logic for the Lens xy chart.
* [lens] Index pattern data panel (initial) (#37015)
* [lens] Index pattern switcher
* Respond to review comments
* [Lens] Editor state 2 (#36513)
* [lens] Dimension panel that generates columns (#37117)
* [lens] Dimension panel that generates columns
* Update from review comments
* [lens] Generate esdocs queries from index pattern (#37361)
* [lens] Generate esdocs queries from index pattern
* Remove unused code
* Update yarn.lock from yarn kbn bootstrap
* [Lens] Add basic Lens xy chart suggestions (#37030)
Basic xy chart suggestions
* [Lens] Expression rendering (#37648)
* [Lens] Expression handling (#37876)
* [Lens] Lens/xy config panel (#37391)
Basic xy chart configuration panel
* [Lens] Xy expression building (#37967)
* [Lens] Initialize visualization with datasource api (#38142)
* [lens] Dimension panel lets users select operations and fields individually (#37573)
* [lens] Dimension panel lets users select operations and fields individually
* Split files and add tests
* Fix dimension labeling and add clear button
* Support more aggregations, aggregation nesting, rollups, and clearing
* Fix esaggs expression
* Increase top-level test coverage of dimension panel
* Update from review comments
* [Lens] Rename columns (#38278)
* [Lens] Lens/index pattern drag drop (#37711)
* Basic xy chart suggestions
* Re-apply XY config panel after force merge
* Initial integration of lens drag and drop
* Tweak naming, remove irellevant comment
* Tweaks per Wylie's feedback
* Add xy chart internationalization
Tweak types per Joe's feedback
* Update xy chart i18n implementation
* Fix i18n id
* Add drop tests to the lens index pattern
* improve tests
* [lens] Only allow aggregated dimensions (#38820)
* [lens] Only allow aggregated dimensions
* [lens] Index pattern suggest on drop
* Fully remove value
* Revert "[lens] Index pattern suggest on drop"
This reverts commit 604c6ed68ca394441ddafa662bdfc5f421de300c.
* Fix type errors
* [lens] Suggest on drop (#38848)
* [lens] Index pattern suggest on drop
* Add test for suggestion without date field
* fix merge
* [Lens] Parameter configurations and new dimension config flow (#38863)
* fix eslint failure
* [lens] Fix build by updating saved objects and i18n (#39391)
* [lens] Update location of saved objects code
* Update internatationalization
* Remove added file
* Lens basic metric visualization
* [lens] Fix arguments to esaggs using booleans (#39462)
* [lens] Datatable visualization plugin (#39390)
* [lens] Datatable visualization plugin
* Fix merge issues and add tests
* Update from review
* Fix file locations
* Fix merge issues, localize expression help text
* Add auto-scaling to the lens metric visualization
* Fix unit tests broken by autoscale
* Move autoscale to the new Lens folder
* [lens] Use first suggestion when switching visualizations (#39377)
* [lens] Label each Y axis with its operation label (#39461)
* [lens] Label each Y axis with its operation label
* Remove comment
* Add link to chart issue
* [Lens] Suggestion preview rendering (#39576)
* [Lens] Popover configs (#39565)
* [Lens] Basic layouting (#39587)
* remove datasource public API in suggestions (#39772)
* [Lens] Basic save / load (#39257)
Add basic routing, save, and load to Lens
* [lens] Fix lint error
* [lens] Use node scripts/eslint.js --fix to fix errors
* [lens] Include link to lens from Visualize (#40542)
* [lens] Support stacking in xy visualization (#40546)
* [lens] Support stacking in xy visualization
* Use chart type switcher for stacked and horizontal xy charts
* Clean up remaining isStacked code
* Fix type error
* [Lens] Add xy split series support (#39726)
* Add split series to lens xy chart
* [lens] Lens Filter Ratio (#40196)
* WIP filter ratio
* Fix test issues
* Pass dependencies through plugin like new platform
* Pass props into filter ratio popover editor
* Provide mocks to filter_ratio popover test
* Add another test
* Clean up to prepare for review
* Clean up unnecessary changes
* Respond to review comments
* Fix tests
* [Lens] Terms order direction (#39884)
* fix types
* [Lens] Data panel styling and optimizations (#40787)
Style the data panel (mostly Joe Reuter's doing). Optimize a bunch of the Lens stack.
* Add metric preview icon
* Fix metric vis tests
* Fix metric plugin imports
* Use the operation label as the metric title
* [Lens] Optimize dimension panel flow (#41114)
* [Lens] re-introduce no-explicit-any (#41454)
* [Lens] No results marker (#41450)
* [lens] Support layers for visualizing results of multiple queries (#41290)
* [lens] WIP add support for layers
* [lens] WIP switch to nested tables
* Get basic layering to work
* Load multiple tables and render in one chart
* Fix priority ordering
* Reduce quantity of linting errors
* Ensure that new xy layer state has a split column
* Make the "add" y / split the trailing accessor
* Various fixes for datasource public API and implementation
* Unify datasource deletion and accessor removal
* Fix broken scss
* Fix xy visualization TypeScript errors?
* Build basic suggestions
* Restore save/load and fix typescript bugs
* simplify init routine
* fix save tests
* fix persistence tests
* fix state management tests
* Ensure the data table is aligned to the top
* Add layer support to Lens datatable
* Give xy chart a default layer initially
* Allow deletion of layers in xy charts
* xy: Make split accessor singular
Remove commented code blocks
* Change expression type for lens_merge_tables
* Fix XY chart rendering expression
* Fix type errors relating to `layerId` in table suggestions
* Pass around tables for suggestions with associated layerIds
* fix tests in workspace panel
* fix editor_frame tests
* Fix xy tests, skip inapplicable tests
that will be implemented in a separate PR
* add some tests for multiple datasources and layers
* Suggest that split series comes before X axis in XY chart
* Get datatable suggestion working
* Adjust how xy axis labels are computed
* Datasource suggestions should handle layers and have tests
* Fix linting in XY chart and remove commented code
* Update snapshots from earlier change
* Fix linting errors
* More cleanup
* Remove commented code
* Test the multi-column editor
* XY Visualization does not need to track datasourceId
* Fix various comments
* Remove unused xy prop
Add datasource header to datatable config
* Use operation labels for XY chart
* Adding and removing layers is reflected in the datasource
* rewrote datasource state init
* clean up editor_frame frame api implementation
* clean up editor frame
* [Lens] Embeddable (#41361)
* [lens] Move XY chart config into popover and fix layering (#41927)
* [lens] Move XY chart config into popover and fix layering
* Fix tests
* Update style
* Change wrapping of layer settings popover
* [Lens] Fix bugs in date_histogram and filter ratio (#42046)
* [Lens] Performance improvements (#41784)
* fix type error
* switch default size of terms operation to 3 (#42334)
* [lens] Improve suggestions for split series (#42052)
* [lens] Add chart switcher (#42093)
* solve merge conflicts
* fix test case
* [Lens] Allow only current visualization on field drop in workspace (#42344)
* [Lens] Remove indexpattern id on column (#42429)
* [lens] Implement app-level filtering and time picker (#42031)
* [lens] Implement app-level filtering and time picker
* More integration with filter bar
* Clean up test code and type errors
* Add frame level tests for syncing with app
* Add test coverage for app logic
* Simplify state management from app down
* Fix import errors
* Clarify whether properties are ids or titles for index pattern
* pass new saved object by ref
* add dirty state checking
* Fix tests
* [Lens] Add some tests around document handling in dimension panel (#42670)
* [Lens] Terms operation boolean support (#42817)
* [lens] Minor UX/UI improvements in Lens (#42852)
* Make dimension popover toggle when clicking button
* Without suggestions hide suggestion panel
* Add missing translations (#42921)
* [Lens] Config panel design (#42980)
* Fix up design of config panel
Does not include config popover
* Add metric suggestions, fix tests
* Remove a couple of non-null assertions (#43013)
* Remove a couple of non-null assertions
* Remove orphaned import
* [Lens] Switch indexpattern manually (#42599)
* [Lens] Update frame to put suggestions at the bottom (#42997)
* Back out suggestion changes, in lieu
of Joe's work
* fix type errors
* switch indexpattern on layer if there is only a single empty one (#43079)
* [Lens] Suggest reduced versions of current data table (#42537)
* [Lens] Field formatter support (#38874)
* Fix bugs
* Fix metric autoscale logic
* Register metric as an embeddable
* Fix metric autoscale flicker
* Render mini metric in suggestions panel
* Cache the metric filterOperations function
* fix auto scaling edge cases
* [Lens] Add bucket nesting editor to indexpattern (#42869)
* Modify auto-scale to handle resize events
* use format hints in metric vis
* start cleaning up suggestions
* [Lens] Remove unnecessary fields and indexing from mappings (#43285)
* Tweak metric to only scale down so far, and
scale both the number and the label.
* Fix lens metric tests
* [Lens] Xy scale type (#42142)
* start adding more suggestions
* remove unused imports
* work on suggestions
* work more on suggestions
* work more on suggestions
* work more on suggestions
* [lens] Allow updater function to be used for updating state (#43373)
* [Lens] Lens metric visualization (#39364)
* clean up tests and add new ones
* remove isMetric
* area as default on time dimension
* fix bug in area chart for time
* Fix axis rotation (#43792)
* remove title form layer
* [Lens] Auto date histogram (#43775)
* Add auto date histogram
* Improve documentation and cleanup
* Add tests
* Change test name
* handle state in app
* fix isMetric usages
* fix integration tests
* fix type errors
* fix date handling on submit
* add new suggestion types
* fix test
* do not suggest single tables
* remove unused import
* [Lens] Fix query bar integration (#43865)
* switch order of appending new string column
* resolve merge conflicts
* [Lens] Clean up operations code (#43784)
* fix merge conflicts
* poc implementation
* highlight currently active suggestion and provide button to submit current choice
* [Lens] Functional tests (#44279)
Foundational layer for lens functional tests. Lens-specific page objects are not in this PR.
* [Lens] Add Lens visualizations to Visualize list (#43398)
* [Lens] Suggestion improvements (#43688)
* fix bugs
* [lens] Calculate existence of fields in datasource (#44422)
* [lens] Calculate existence of fields in datasource
* Fix route registration
* Add page object and use existence in functional test
* Simplify layout of filters for index pattern
* Respond to review feedback
* Update class names
* Use new URL constant
* Fix usage of base path
* Fix lint errors
* [Lens ] Preview metric (#43755)
* format filter ratio as percentage (#44625)
* [Lens] Remove datasource suggestion id (#44495)
* [Lens] Make breadcrumbs look and feel like Visualize (#44258)
* [lens] Fix breakage from app-arch movements (#44720)
* Design cleanup
* PR review comments
* fix tests
* small cleanup
* remove unused import
* [lens] Fix type error in test from merge
* [lens] Fix registration of embeddable (#45171)
* keep references stable if table is just extended and add tests
* changed label for stack/unstack
* fix test
* [Lens] Functional tests (#44814)
Basic functional tests for Lens, by no means comprehensive. This is more of a smokescreen test of some normal use cases.
* [lens] Add Lens to CODEOWNERS (#45296)
* [lens] Fix visualization alias registration
* [lens] Fix usage of EUI after typescript upgrade (#45404)
* [lens] Fix usage of EUI after typescript upgrade
* Use local fix instead of workaround
* fix bug and address reviews
* Fix frame tests
2019-09-19 00:28:26 +02:00
|
|
|
const currentState: XYState = {
|
|
|
|
legend: { isVisible: true, position: 'bottom' },
|
2020-11-06 16:34:30 +01:00
|
|
|
valueLabels: 'hide',
|
[Lens] Transient suggestions (#44234)
* [lens] Initial Commit (#35627)
* [visualization editor] Initial Commit
* [lens] Add more complete initial state
* [lens] Fix type issues
* [lens] Remove feature control
* [lens] Bring back feature control and add tests
* [lens] Update plugin structure and naming per comments
* replace any usage by safe casting
* [lens] Respond to review comments
* [lens] Remove unused EditorFrameState type
* [lens] Initial state for IndexPatternDatasource (#36052)
* [lens] Add first tests to indexpattern data source
* Respond to review comments
* Fix type definitions
* [lens] Editor frame initializes datasources and visualizations (#36060)
* [lens] Editor frame initializes datasources and visualizations
* Respond to review comments
* Fix build issues
* Fix state management issue
* [lens][draft] Lens/drag drop (#36268)
Add basic drag / drop component to Lens
* remove local package (#36456)
* [lens] Native renderer (#36165)
* Add nativerenderer component
* Use native renderer in app and editor frame
* [Lens] No explicit any (#36515)
* [Lens] Implement basic editor frame state handling (#36443)
* [lens] Load index patterns and render in data panel (#36463)
* [lens] Editor frame initializes datasources and visualizations
* Respond to review comments
* Fix build issues
* remove local package
* [lens] Load index patterns into data source
* Redo types for Index Pattern Datasource
* Fix one more type
* Respond to review comments
* [draft] Lens/line chart renderer (#36827)
Expression logic for the Lens xy chart.
* [lens] Index pattern data panel (initial) (#37015)
* [lens] Index pattern switcher
* Respond to review comments
* [Lens] Editor state 2 (#36513)
* [lens] Dimension panel that generates columns (#37117)
* [lens] Dimension panel that generates columns
* Update from review comments
* [lens] Generate esdocs queries from index pattern (#37361)
* [lens] Generate esdocs queries from index pattern
* Remove unused code
* Update yarn.lock from yarn kbn bootstrap
* [Lens] Add basic Lens xy chart suggestions (#37030)
Basic xy chart suggestions
* [Lens] Expression rendering (#37648)
* [Lens] Expression handling (#37876)
* [Lens] Lens/xy config panel (#37391)
Basic xy chart configuration panel
* [Lens] Xy expression building (#37967)
* [Lens] Initialize visualization with datasource api (#38142)
* [lens] Dimension panel lets users select operations and fields individually (#37573)
* [lens] Dimension panel lets users select operations and fields individually
* Split files and add tests
* Fix dimension labeling and add clear button
* Support more aggregations, aggregation nesting, rollups, and clearing
* Fix esaggs expression
* Increase top-level test coverage of dimension panel
* Update from review comments
* [Lens] Rename columns (#38278)
* [Lens] Lens/index pattern drag drop (#37711)
* Basic xy chart suggestions
* Re-apply XY config panel after force merge
* Initial integration of lens drag and drop
* Tweak naming, remove irellevant comment
* Tweaks per Wylie's feedback
* Add xy chart internationalization
Tweak types per Joe's feedback
* Update xy chart i18n implementation
* Fix i18n id
* Add drop tests to the lens index pattern
* improve tests
* [lens] Only allow aggregated dimensions (#38820)
* [lens] Only allow aggregated dimensions
* [lens] Index pattern suggest on drop
* Fully remove value
* Revert "[lens] Index pattern suggest on drop"
This reverts commit 604c6ed68ca394441ddafa662bdfc5f421de300c.
* Fix type errors
* [lens] Suggest on drop (#38848)
* [lens] Index pattern suggest on drop
* Add test for suggestion without date field
* fix merge
* [Lens] Parameter configurations and new dimension config flow (#38863)
* fix eslint failure
* [lens] Fix build by updating saved objects and i18n (#39391)
* [lens] Update location of saved objects code
* Update internatationalization
* Remove added file
* Lens basic metric visualization
* [lens] Fix arguments to esaggs using booleans (#39462)
* [lens] Datatable visualization plugin (#39390)
* [lens] Datatable visualization plugin
* Fix merge issues and add tests
* Update from review
* Fix file locations
* Fix merge issues, localize expression help text
* Add auto-scaling to the lens metric visualization
* Fix unit tests broken by autoscale
* Move autoscale to the new Lens folder
* [lens] Use first suggestion when switching visualizations (#39377)
* [lens] Label each Y axis with its operation label (#39461)
* [lens] Label each Y axis with its operation label
* Remove comment
* Add link to chart issue
* [Lens] Suggestion preview rendering (#39576)
* [Lens] Popover configs (#39565)
* [Lens] Basic layouting (#39587)
* remove datasource public API in suggestions (#39772)
* [Lens] Basic save / load (#39257)
Add basic routing, save, and load to Lens
* [lens] Fix lint error
* [lens] Use node scripts/eslint.js --fix to fix errors
* [lens] Include link to lens from Visualize (#40542)
* [lens] Support stacking in xy visualization (#40546)
* [lens] Support stacking in xy visualization
* Use chart type switcher for stacked and horizontal xy charts
* Clean up remaining isStacked code
* Fix type error
* [Lens] Add xy split series support (#39726)
* Add split series to lens xy chart
* [lens] Lens Filter Ratio (#40196)
* WIP filter ratio
* Fix test issues
* Pass dependencies through plugin like new platform
* Pass props into filter ratio popover editor
* Provide mocks to filter_ratio popover test
* Add another test
* Clean up to prepare for review
* Clean up unnecessary changes
* Respond to review comments
* Fix tests
* [Lens] Terms order direction (#39884)
* fix types
* [Lens] Data panel styling and optimizations (#40787)
Style the data panel (mostly Joe Reuter's doing). Optimize a bunch of the Lens stack.
* Add metric preview icon
* Fix metric vis tests
* Fix metric plugin imports
* Use the operation label as the metric title
* [Lens] Optimize dimension panel flow (#41114)
* [Lens] re-introduce no-explicit-any (#41454)
* [Lens] No results marker (#41450)
* [lens] Support layers for visualizing results of multiple queries (#41290)
* [lens] WIP add support for layers
* [lens] WIP switch to nested tables
* Get basic layering to work
* Load multiple tables and render in one chart
* Fix priority ordering
* Reduce quantity of linting errors
* Ensure that new xy layer state has a split column
* Make the "add" y / split the trailing accessor
* Various fixes for datasource public API and implementation
* Unify datasource deletion and accessor removal
* Fix broken scss
* Fix xy visualization TypeScript errors?
* Build basic suggestions
* Restore save/load and fix typescript bugs
* simplify init routine
* fix save tests
* fix persistence tests
* fix state management tests
* Ensure the data table is aligned to the top
* Add layer support to Lens datatable
* Give xy chart a default layer initially
* Allow deletion of layers in xy charts
* xy: Make split accessor singular
Remove commented code blocks
* Change expression type for lens_merge_tables
* Fix XY chart rendering expression
* Fix type errors relating to `layerId` in table suggestions
* Pass around tables for suggestions with associated layerIds
* fix tests in workspace panel
* fix editor_frame tests
* Fix xy tests, skip inapplicable tests
that will be implemented in a separate PR
* add some tests for multiple datasources and layers
* Suggest that split series comes before X axis in XY chart
* Get datatable suggestion working
* Adjust how xy axis labels are computed
* Datasource suggestions should handle layers and have tests
* Fix linting in XY chart and remove commented code
* Update snapshots from earlier change
* Fix linting errors
* More cleanup
* Remove commented code
* Test the multi-column editor
* XY Visualization does not need to track datasourceId
* Fix various comments
* Remove unused xy prop
Add datasource header to datatable config
* Use operation labels for XY chart
* Adding and removing layers is reflected in the datasource
* rewrote datasource state init
* clean up editor_frame frame api implementation
* clean up editor frame
* [Lens] Embeddable (#41361)
* [lens] Move XY chart config into popover and fix layering (#41927)
* [lens] Move XY chart config into popover and fix layering
* Fix tests
* Update style
* Change wrapping of layer settings popover
* [Lens] Fix bugs in date_histogram and filter ratio (#42046)
* [Lens] Performance improvements (#41784)
* fix type error
* switch default size of terms operation to 3 (#42334)
* [lens] Improve suggestions for split series (#42052)
* [lens] Add chart switcher (#42093)
* solve merge conflicts
* fix test case
* [Lens] Allow only current visualization on field drop in workspace (#42344)
* [Lens] Remove indexpattern id on column (#42429)
* [lens] Implement app-level filtering and time picker (#42031)
* [lens] Implement app-level filtering and time picker
* More integration with filter bar
* Clean up test code and type errors
* Add frame level tests for syncing with app
* Add test coverage for app logic
* Simplify state management from app down
* Fix import errors
* Clarify whether properties are ids or titles for index pattern
* pass new saved object by ref
* add dirty state checking
* Fix tests
* [Lens] Add some tests around document handling in dimension panel (#42670)
* [Lens] Terms operation boolean support (#42817)
* [lens] Minor UX/UI improvements in Lens (#42852)
* Make dimension popover toggle when clicking button
* Without suggestions hide suggestion panel
* Add missing translations (#42921)
* [Lens] Config panel design (#42980)
* Fix up design of config panel
Does not include config popover
* Add metric suggestions, fix tests
* Remove a couple of non-null assertions (#43013)
* Remove a couple of non-null assertions
* Remove orphaned import
* [Lens] Switch indexpattern manually (#42599)
* [Lens] Update frame to put suggestions at the bottom (#42997)
* Back out suggestion changes, in lieu
of Joe's work
* fix type errors
* switch indexpattern on layer if there is only a single empty one (#43079)
* [Lens] Suggest reduced versions of current data table (#42537)
* [Lens] Field formatter support (#38874)
* Fix bugs
* Fix metric autoscale logic
* Register metric as an embeddable
* Fix metric autoscale flicker
* Render mini metric in suggestions panel
* Cache the metric filterOperations function
* fix auto scaling edge cases
* [Lens] Add bucket nesting editor to indexpattern (#42869)
* Modify auto-scale to handle resize events
* use format hints in metric vis
* start cleaning up suggestions
* [Lens] Remove unnecessary fields and indexing from mappings (#43285)
* Tweak metric to only scale down so far, and
scale both the number and the label.
* Fix lens metric tests
* [Lens] Xy scale type (#42142)
* start adding more suggestions
* remove unused imports
* work on suggestions
* work more on suggestions
* work more on suggestions
* work more on suggestions
* [lens] Allow updater function to be used for updating state (#43373)
* [Lens] Lens metric visualization (#39364)
* clean up tests and add new ones
* remove isMetric
* area as default on time dimension
* fix bug in area chart for time
* Fix axis rotation (#43792)
* remove title form layer
* [Lens] Auto date histogram (#43775)
* Add auto date histogram
* Improve documentation and cleanup
* Add tests
* Change test name
* handle state in app
* fix isMetric usages
* fix integration tests
* fix type errors
* fix date handling on submit
* add new suggestion types
* fix test
* do not suggest single tables
* remove unused import
* [Lens] Fix query bar integration (#43865)
* switch order of appending new string column
* resolve merge conflicts
* [Lens] Clean up operations code (#43784)
* fix merge conflicts
* poc implementation
* highlight currently active suggestion and provide button to submit current choice
* [Lens] Functional tests (#44279)
Foundational layer for lens functional tests. Lens-specific page objects are not in this PR.
* [Lens] Add Lens visualizations to Visualize list (#43398)
* [Lens] Suggestion improvements (#43688)
* fix bugs
* [lens] Calculate existence of fields in datasource (#44422)
* [lens] Calculate existence of fields in datasource
* Fix route registration
* Add page object and use existence in functional test
* Simplify layout of filters for index pattern
* Respond to review feedback
* Update class names
* Use new URL constant
* Fix usage of base path
* Fix lint errors
* [Lens ] Preview metric (#43755)
* format filter ratio as percentage (#44625)
* [Lens] Remove datasource suggestion id (#44495)
* [Lens] Make breadcrumbs look and feel like Visualize (#44258)
* [lens] Fix breakage from app-arch movements (#44720)
* Design cleanup
* PR review comments
* fix tests
* small cleanup
* remove unused import
* [lens] Fix type error in test from merge
* [lens] Fix registration of embeddable (#45171)
* keep references stable if table is just extended and add tests
* changed label for stack/unstack
* fix test
* [Lens] Functional tests (#44814)
Basic functional tests for Lens, by no means comprehensive. This is more of a smokescreen test of some normal use cases.
* [lens] Add Lens to CODEOWNERS (#45296)
* [lens] Fix visualization alias registration
* [lens] Fix usage of EUI after typescript upgrade (#45404)
* [lens] Fix usage of EUI after typescript upgrade
* Use local fix instead of workaround
* fix bug and address reviews
* Fix frame tests
2019-09-19 00:28:26 +02:00
|
|
|
preferredSeriesType: 'bar',
|
2020-07-03 16:15:06 +02:00
|
|
|
fittingFunction: 'None',
|
[Lens] Transient suggestions (#44234)
* [lens] Initial Commit (#35627)
* [visualization editor] Initial Commit
* [lens] Add more complete initial state
* [lens] Fix type issues
* [lens] Remove feature control
* [lens] Bring back feature control and add tests
* [lens] Update plugin structure and naming per comments
* replace any usage by safe casting
* [lens] Respond to review comments
* [lens] Remove unused EditorFrameState type
* [lens] Initial state for IndexPatternDatasource (#36052)
* [lens] Add first tests to indexpattern data source
* Respond to review comments
* Fix type definitions
* [lens] Editor frame initializes datasources and visualizations (#36060)
* [lens] Editor frame initializes datasources and visualizations
* Respond to review comments
* Fix build issues
* Fix state management issue
* [lens][draft] Lens/drag drop (#36268)
Add basic drag / drop component to Lens
* remove local package (#36456)
* [lens] Native renderer (#36165)
* Add nativerenderer component
* Use native renderer in app and editor frame
* [Lens] No explicit any (#36515)
* [Lens] Implement basic editor frame state handling (#36443)
* [lens] Load index patterns and render in data panel (#36463)
* [lens] Editor frame initializes datasources and visualizations
* Respond to review comments
* Fix build issues
* remove local package
* [lens] Load index patterns into data source
* Redo types for Index Pattern Datasource
* Fix one more type
* Respond to review comments
* [draft] Lens/line chart renderer (#36827)
Expression logic for the Lens xy chart.
* [lens] Index pattern data panel (initial) (#37015)
* [lens] Index pattern switcher
* Respond to review comments
* [Lens] Editor state 2 (#36513)
* [lens] Dimension panel that generates columns (#37117)
* [lens] Dimension panel that generates columns
* Update from review comments
* [lens] Generate esdocs queries from index pattern (#37361)
* [lens] Generate esdocs queries from index pattern
* Remove unused code
* Update yarn.lock from yarn kbn bootstrap
* [Lens] Add basic Lens xy chart suggestions (#37030)
Basic xy chart suggestions
* [Lens] Expression rendering (#37648)
* [Lens] Expression handling (#37876)
* [Lens] Lens/xy config panel (#37391)
Basic xy chart configuration panel
* [Lens] Xy expression building (#37967)
* [Lens] Initialize visualization with datasource api (#38142)
* [lens] Dimension panel lets users select operations and fields individually (#37573)
* [lens] Dimension panel lets users select operations and fields individually
* Split files and add tests
* Fix dimension labeling and add clear button
* Support more aggregations, aggregation nesting, rollups, and clearing
* Fix esaggs expression
* Increase top-level test coverage of dimension panel
* Update from review comments
* [Lens] Rename columns (#38278)
* [Lens] Lens/index pattern drag drop (#37711)
* Basic xy chart suggestions
* Re-apply XY config panel after force merge
* Initial integration of lens drag and drop
* Tweak naming, remove irellevant comment
* Tweaks per Wylie's feedback
* Add xy chart internationalization
Tweak types per Joe's feedback
* Update xy chart i18n implementation
* Fix i18n id
* Add drop tests to the lens index pattern
* improve tests
* [lens] Only allow aggregated dimensions (#38820)
* [lens] Only allow aggregated dimensions
* [lens] Index pattern suggest on drop
* Fully remove value
* Revert "[lens] Index pattern suggest on drop"
This reverts commit 604c6ed68ca394441ddafa662bdfc5f421de300c.
* Fix type errors
* [lens] Suggest on drop (#38848)
* [lens] Index pattern suggest on drop
* Add test for suggestion without date field
* fix merge
* [Lens] Parameter configurations and new dimension config flow (#38863)
* fix eslint failure
* [lens] Fix build by updating saved objects and i18n (#39391)
* [lens] Update location of saved objects code
* Update internatationalization
* Remove added file
* Lens basic metric visualization
* [lens] Fix arguments to esaggs using booleans (#39462)
* [lens] Datatable visualization plugin (#39390)
* [lens] Datatable visualization plugin
* Fix merge issues and add tests
* Update from review
* Fix file locations
* Fix merge issues, localize expression help text
* Add auto-scaling to the lens metric visualization
* Fix unit tests broken by autoscale
* Move autoscale to the new Lens folder
* [lens] Use first suggestion when switching visualizations (#39377)
* [lens] Label each Y axis with its operation label (#39461)
* [lens] Label each Y axis with its operation label
* Remove comment
* Add link to chart issue
* [Lens] Suggestion preview rendering (#39576)
* [Lens] Popover configs (#39565)
* [Lens] Basic layouting (#39587)
* remove datasource public API in suggestions (#39772)
* [Lens] Basic save / load (#39257)
Add basic routing, save, and load to Lens
* [lens] Fix lint error
* [lens] Use node scripts/eslint.js --fix to fix errors
* [lens] Include link to lens from Visualize (#40542)
* [lens] Support stacking in xy visualization (#40546)
* [lens] Support stacking in xy visualization
* Use chart type switcher for stacked and horizontal xy charts
* Clean up remaining isStacked code
* Fix type error
* [Lens] Add xy split series support (#39726)
* Add split series to lens xy chart
* [lens] Lens Filter Ratio (#40196)
* WIP filter ratio
* Fix test issues
* Pass dependencies through plugin like new platform
* Pass props into filter ratio popover editor
* Provide mocks to filter_ratio popover test
* Add another test
* Clean up to prepare for review
* Clean up unnecessary changes
* Respond to review comments
* Fix tests
* [Lens] Terms order direction (#39884)
* fix types
* [Lens] Data panel styling and optimizations (#40787)
Style the data panel (mostly Joe Reuter's doing). Optimize a bunch of the Lens stack.
* Add metric preview icon
* Fix metric vis tests
* Fix metric plugin imports
* Use the operation label as the metric title
* [Lens] Optimize dimension panel flow (#41114)
* [Lens] re-introduce no-explicit-any (#41454)
* [Lens] No results marker (#41450)
* [lens] Support layers for visualizing results of multiple queries (#41290)
* [lens] WIP add support for layers
* [lens] WIP switch to nested tables
* Get basic layering to work
* Load multiple tables and render in one chart
* Fix priority ordering
* Reduce quantity of linting errors
* Ensure that new xy layer state has a split column
* Make the "add" y / split the trailing accessor
* Various fixes for datasource public API and implementation
* Unify datasource deletion and accessor removal
* Fix broken scss
* Fix xy visualization TypeScript errors?
* Build basic suggestions
* Restore save/load and fix typescript bugs
* simplify init routine
* fix save tests
* fix persistence tests
* fix state management tests
* Ensure the data table is aligned to the top
* Add layer support to Lens datatable
* Give xy chart a default layer initially
* Allow deletion of layers in xy charts
* xy: Make split accessor singular
Remove commented code blocks
* Change expression type for lens_merge_tables
* Fix XY chart rendering expression
* Fix type errors relating to `layerId` in table suggestions
* Pass around tables for suggestions with associated layerIds
* fix tests in workspace panel
* fix editor_frame tests
* Fix xy tests, skip inapplicable tests
that will be implemented in a separate PR
* add some tests for multiple datasources and layers
* Suggest that split series comes before X axis in XY chart
* Get datatable suggestion working
* Adjust how xy axis labels are computed
* Datasource suggestions should handle layers and have tests
* Fix linting in XY chart and remove commented code
* Update snapshots from earlier change
* Fix linting errors
* More cleanup
* Remove commented code
* Test the multi-column editor
* XY Visualization does not need to track datasourceId
* Fix various comments
* Remove unused xy prop
Add datasource header to datatable config
* Use operation labels for XY chart
* Adding and removing layers is reflected in the datasource
* rewrote datasource state init
* clean up editor_frame frame api implementation
* clean up editor frame
* [Lens] Embeddable (#41361)
* [lens] Move XY chart config into popover and fix layering (#41927)
* [lens] Move XY chart config into popover and fix layering
* Fix tests
* Update style
* Change wrapping of layer settings popover
* [Lens] Fix bugs in date_histogram and filter ratio (#42046)
* [Lens] Performance improvements (#41784)
* fix type error
* switch default size of terms operation to 3 (#42334)
* [lens] Improve suggestions for split series (#42052)
* [lens] Add chart switcher (#42093)
* solve merge conflicts
* fix test case
* [Lens] Allow only current visualization on field drop in workspace (#42344)
* [Lens] Remove indexpattern id on column (#42429)
* [lens] Implement app-level filtering and time picker (#42031)
* [lens] Implement app-level filtering and time picker
* More integration with filter bar
* Clean up test code and type errors
* Add frame level tests for syncing with app
* Add test coverage for app logic
* Simplify state management from app down
* Fix import errors
* Clarify whether properties are ids or titles for index pattern
* pass new saved object by ref
* add dirty state checking
* Fix tests
* [Lens] Add some tests around document handling in dimension panel (#42670)
* [Lens] Terms operation boolean support (#42817)
* [lens] Minor UX/UI improvements in Lens (#42852)
* Make dimension popover toggle when clicking button
* Without suggestions hide suggestion panel
* Add missing translations (#42921)
* [Lens] Config panel design (#42980)
* Fix up design of config panel
Does not include config popover
* Add metric suggestions, fix tests
* Remove a couple of non-null assertions (#43013)
* Remove a couple of non-null assertions
* Remove orphaned import
* [Lens] Switch indexpattern manually (#42599)
* [Lens] Update frame to put suggestions at the bottom (#42997)
* Back out suggestion changes, in lieu
of Joe's work
* fix type errors
* switch indexpattern on layer if there is only a single empty one (#43079)
* [Lens] Suggest reduced versions of current data table (#42537)
* [Lens] Field formatter support (#38874)
* Fix bugs
* Fix metric autoscale logic
* Register metric as an embeddable
* Fix metric autoscale flicker
* Render mini metric in suggestions panel
* Cache the metric filterOperations function
* fix auto scaling edge cases
* [Lens] Add bucket nesting editor to indexpattern (#42869)
* Modify auto-scale to handle resize events
* use format hints in metric vis
* start cleaning up suggestions
* [Lens] Remove unnecessary fields and indexing from mappings (#43285)
* Tweak metric to only scale down so far, and
scale both the number and the label.
* Fix lens metric tests
* [Lens] Xy scale type (#42142)
* start adding more suggestions
* remove unused imports
* work on suggestions
* work more on suggestions
* work more on suggestions
* work more on suggestions
* [lens] Allow updater function to be used for updating state (#43373)
* [Lens] Lens metric visualization (#39364)
* clean up tests and add new ones
* remove isMetric
* area as default on time dimension
* fix bug in area chart for time
* Fix axis rotation (#43792)
* remove title form layer
* [Lens] Auto date histogram (#43775)
* Add auto date histogram
* Improve documentation and cleanup
* Add tests
* Change test name
* handle state in app
* fix isMetric usages
* fix integration tests
* fix type errors
* fix date handling on submit
* add new suggestion types
* fix test
* do not suggest single tables
* remove unused import
* [Lens] Fix query bar integration (#43865)
* switch order of appending new string column
* resolve merge conflicts
* [Lens] Clean up operations code (#43784)
* fix merge conflicts
* poc implementation
* highlight currently active suggestion and provide button to submit current choice
* [Lens] Functional tests (#44279)
Foundational layer for lens functional tests. Lens-specific page objects are not in this PR.
* [Lens] Add Lens visualizations to Visualize list (#43398)
* [Lens] Suggestion improvements (#43688)
* fix bugs
* [lens] Calculate existence of fields in datasource (#44422)
* [lens] Calculate existence of fields in datasource
* Fix route registration
* Add page object and use existence in functional test
* Simplify layout of filters for index pattern
* Respond to review feedback
* Update class names
* Use new URL constant
* Fix usage of base path
* Fix lint errors
* [Lens ] Preview metric (#43755)
* format filter ratio as percentage (#44625)
* [Lens] Remove datasource suggestion id (#44495)
* [Lens] Make breadcrumbs look and feel like Visualize (#44258)
* [lens] Fix breakage from app-arch movements (#44720)
* Design cleanup
* PR review comments
* fix tests
* small cleanup
* remove unused import
* [lens] Fix type error in test from merge
* [lens] Fix registration of embeddable (#45171)
* keep references stable if table is just extended and add tests
* changed label for stack/unstack
* fix test
* [Lens] Functional tests (#44814)
Basic functional tests for Lens, by no means comprehensive. This is more of a smokescreen test of some normal use cases.
* [lens] Add Lens to CODEOWNERS (#45296)
* [lens] Fix visualization alias registration
* [lens] Fix usage of EUI after typescript upgrade (#45404)
* [lens] Fix usage of EUI after typescript upgrade
* Use local fix instead of workaround
* fix bug and address reviews
* Fix frame tests
2019-09-19 00:28:26 +02:00
|
|
|
layers: [
|
|
|
|
{
|
2019-10-01 21:04:00 +02:00
|
|
|
accessors: ['price'],
|
[Lens] Transient suggestions (#44234)
* [lens] Initial Commit (#35627)
* [visualization editor] Initial Commit
* [lens] Add more complete initial state
* [lens] Fix type issues
* [lens] Remove feature control
* [lens] Bring back feature control and add tests
* [lens] Update plugin structure and naming per comments
* replace any usage by safe casting
* [lens] Respond to review comments
* [lens] Remove unused EditorFrameState type
* [lens] Initial state for IndexPatternDatasource (#36052)
* [lens] Add first tests to indexpattern data source
* Respond to review comments
* Fix type definitions
* [lens] Editor frame initializes datasources and visualizations (#36060)
* [lens] Editor frame initializes datasources and visualizations
* Respond to review comments
* Fix build issues
* Fix state management issue
* [lens][draft] Lens/drag drop (#36268)
Add basic drag / drop component to Lens
* remove local package (#36456)
* [lens] Native renderer (#36165)
* Add nativerenderer component
* Use native renderer in app and editor frame
* [Lens] No explicit any (#36515)
* [Lens] Implement basic editor frame state handling (#36443)
* [lens] Load index patterns and render in data panel (#36463)
* [lens] Editor frame initializes datasources and visualizations
* Respond to review comments
* Fix build issues
* remove local package
* [lens] Load index patterns into data source
* Redo types for Index Pattern Datasource
* Fix one more type
* Respond to review comments
* [draft] Lens/line chart renderer (#36827)
Expression logic for the Lens xy chart.
* [lens] Index pattern data panel (initial) (#37015)
* [lens] Index pattern switcher
* Respond to review comments
* [Lens] Editor state 2 (#36513)
* [lens] Dimension panel that generates columns (#37117)
* [lens] Dimension panel that generates columns
* Update from review comments
* [lens] Generate esdocs queries from index pattern (#37361)
* [lens] Generate esdocs queries from index pattern
* Remove unused code
* Update yarn.lock from yarn kbn bootstrap
* [Lens] Add basic Lens xy chart suggestions (#37030)
Basic xy chart suggestions
* [Lens] Expression rendering (#37648)
* [Lens] Expression handling (#37876)
* [Lens] Lens/xy config panel (#37391)
Basic xy chart configuration panel
* [Lens] Xy expression building (#37967)
* [Lens] Initialize visualization with datasource api (#38142)
* [lens] Dimension panel lets users select operations and fields individually (#37573)
* [lens] Dimension panel lets users select operations and fields individually
* Split files and add tests
* Fix dimension labeling and add clear button
* Support more aggregations, aggregation nesting, rollups, and clearing
* Fix esaggs expression
* Increase top-level test coverage of dimension panel
* Update from review comments
* [Lens] Rename columns (#38278)
* [Lens] Lens/index pattern drag drop (#37711)
* Basic xy chart suggestions
* Re-apply XY config panel after force merge
* Initial integration of lens drag and drop
* Tweak naming, remove irellevant comment
* Tweaks per Wylie's feedback
* Add xy chart internationalization
Tweak types per Joe's feedback
* Update xy chart i18n implementation
* Fix i18n id
* Add drop tests to the lens index pattern
* improve tests
* [lens] Only allow aggregated dimensions (#38820)
* [lens] Only allow aggregated dimensions
* [lens] Index pattern suggest on drop
* Fully remove value
* Revert "[lens] Index pattern suggest on drop"
This reverts commit 604c6ed68ca394441ddafa662bdfc5f421de300c.
* Fix type errors
* [lens] Suggest on drop (#38848)
* [lens] Index pattern suggest on drop
* Add test for suggestion without date field
* fix merge
* [Lens] Parameter configurations and new dimension config flow (#38863)
* fix eslint failure
* [lens] Fix build by updating saved objects and i18n (#39391)
* [lens] Update location of saved objects code
* Update internatationalization
* Remove added file
* Lens basic metric visualization
* [lens] Fix arguments to esaggs using booleans (#39462)
* [lens] Datatable visualization plugin (#39390)
* [lens] Datatable visualization plugin
* Fix merge issues and add tests
* Update from review
* Fix file locations
* Fix merge issues, localize expression help text
* Add auto-scaling to the lens metric visualization
* Fix unit tests broken by autoscale
* Move autoscale to the new Lens folder
* [lens] Use first suggestion when switching visualizations (#39377)
* [lens] Label each Y axis with its operation label (#39461)
* [lens] Label each Y axis with its operation label
* Remove comment
* Add link to chart issue
* [Lens] Suggestion preview rendering (#39576)
* [Lens] Popover configs (#39565)
* [Lens] Basic layouting (#39587)
* remove datasource public API in suggestions (#39772)
* [Lens] Basic save / load (#39257)
Add basic routing, save, and load to Lens
* [lens] Fix lint error
* [lens] Use node scripts/eslint.js --fix to fix errors
* [lens] Include link to lens from Visualize (#40542)
* [lens] Support stacking in xy visualization (#40546)
* [lens] Support stacking in xy visualization
* Use chart type switcher for stacked and horizontal xy charts
* Clean up remaining isStacked code
* Fix type error
* [Lens] Add xy split series support (#39726)
* Add split series to lens xy chart
* [lens] Lens Filter Ratio (#40196)
* WIP filter ratio
* Fix test issues
* Pass dependencies through plugin like new platform
* Pass props into filter ratio popover editor
* Provide mocks to filter_ratio popover test
* Add another test
* Clean up to prepare for review
* Clean up unnecessary changes
* Respond to review comments
* Fix tests
* [Lens] Terms order direction (#39884)
* fix types
* [Lens] Data panel styling and optimizations (#40787)
Style the data panel (mostly Joe Reuter's doing). Optimize a bunch of the Lens stack.
* Add metric preview icon
* Fix metric vis tests
* Fix metric plugin imports
* Use the operation label as the metric title
* [Lens] Optimize dimension panel flow (#41114)
* [Lens] re-introduce no-explicit-any (#41454)
* [Lens] No results marker (#41450)
* [lens] Support layers for visualizing results of multiple queries (#41290)
* [lens] WIP add support for layers
* [lens] WIP switch to nested tables
* Get basic layering to work
* Load multiple tables and render in one chart
* Fix priority ordering
* Reduce quantity of linting errors
* Ensure that new xy layer state has a split column
* Make the "add" y / split the trailing accessor
* Various fixes for datasource public API and implementation
* Unify datasource deletion and accessor removal
* Fix broken scss
* Fix xy visualization TypeScript errors?
* Build basic suggestions
* Restore save/load and fix typescript bugs
* simplify init routine
* fix save tests
* fix persistence tests
* fix state management tests
* Ensure the data table is aligned to the top
* Add layer support to Lens datatable
* Give xy chart a default layer initially
* Allow deletion of layers in xy charts
* xy: Make split accessor singular
Remove commented code blocks
* Change expression type for lens_merge_tables
* Fix XY chart rendering expression
* Fix type errors relating to `layerId` in table suggestions
* Pass around tables for suggestions with associated layerIds
* fix tests in workspace panel
* fix editor_frame tests
* Fix xy tests, skip inapplicable tests
that will be implemented in a separate PR
* add some tests for multiple datasources and layers
* Suggest that split series comes before X axis in XY chart
* Get datatable suggestion working
* Adjust how xy axis labels are computed
* Datasource suggestions should handle layers and have tests
* Fix linting in XY chart and remove commented code
* Update snapshots from earlier change
* Fix linting errors
* More cleanup
* Remove commented code
* Test the multi-column editor
* XY Visualization does not need to track datasourceId
* Fix various comments
* Remove unused xy prop
Add datasource header to datatable config
* Use operation labels for XY chart
* Adding and removing layers is reflected in the datasource
* rewrote datasource state init
* clean up editor_frame frame api implementation
* clean up editor frame
* [Lens] Embeddable (#41361)
* [lens] Move XY chart config into popover and fix layering (#41927)
* [lens] Move XY chart config into popover and fix layering
* Fix tests
* Update style
* Change wrapping of layer settings popover
* [Lens] Fix bugs in date_histogram and filter ratio (#42046)
* [Lens] Performance improvements (#41784)
* fix type error
* switch default size of terms operation to 3 (#42334)
* [lens] Improve suggestions for split series (#42052)
* [lens] Add chart switcher (#42093)
* solve merge conflicts
* fix test case
* [Lens] Allow only current visualization on field drop in workspace (#42344)
* [Lens] Remove indexpattern id on column (#42429)
* [lens] Implement app-level filtering and time picker (#42031)
* [lens] Implement app-level filtering and time picker
* More integration with filter bar
* Clean up test code and type errors
* Add frame level tests for syncing with app
* Add test coverage for app logic
* Simplify state management from app down
* Fix import errors
* Clarify whether properties are ids or titles for index pattern
* pass new saved object by ref
* add dirty state checking
* Fix tests
* [Lens] Add some tests around document handling in dimension panel (#42670)
* [Lens] Terms operation boolean support (#42817)
* [lens] Minor UX/UI improvements in Lens (#42852)
* Make dimension popover toggle when clicking button
* Without suggestions hide suggestion panel
* Add missing translations (#42921)
* [Lens] Config panel design (#42980)
* Fix up design of config panel
Does not include config popover
* Add metric suggestions, fix tests
* Remove a couple of non-null assertions (#43013)
* Remove a couple of non-null assertions
* Remove orphaned import
* [Lens] Switch indexpattern manually (#42599)
* [Lens] Update frame to put suggestions at the bottom (#42997)
* Back out suggestion changes, in lieu
of Joe's work
* fix type errors
* switch indexpattern on layer if there is only a single empty one (#43079)
* [Lens] Suggest reduced versions of current data table (#42537)
* [Lens] Field formatter support (#38874)
* Fix bugs
* Fix metric autoscale logic
* Register metric as an embeddable
* Fix metric autoscale flicker
* Render mini metric in suggestions panel
* Cache the metric filterOperations function
* fix auto scaling edge cases
* [Lens] Add bucket nesting editor to indexpattern (#42869)
* Modify auto-scale to handle resize events
* use format hints in metric vis
* start cleaning up suggestions
* [Lens] Remove unnecessary fields and indexing from mappings (#43285)
* Tweak metric to only scale down so far, and
scale both the number and the label.
* Fix lens metric tests
* [Lens] Xy scale type (#42142)
* start adding more suggestions
* remove unused imports
* work on suggestions
* work more on suggestions
* work more on suggestions
* work more on suggestions
* [lens] Allow updater function to be used for updating state (#43373)
* [Lens] Lens metric visualization (#39364)
* clean up tests and add new ones
* remove isMetric
* area as default on time dimension
* fix bug in area chart for time
* Fix axis rotation (#43792)
* remove title form layer
* [Lens] Auto date histogram (#43775)
* Add auto date histogram
* Improve documentation and cleanup
* Add tests
* Change test name
* handle state in app
* fix isMetric usages
* fix integration tests
* fix type errors
* fix date handling on submit
* add new suggestion types
* fix test
* do not suggest single tables
* remove unused import
* [Lens] Fix query bar integration (#43865)
* switch order of appending new string column
* resolve merge conflicts
* [Lens] Clean up operations code (#43784)
* fix merge conflicts
* poc implementation
* highlight currently active suggestion and provide button to submit current choice
* [Lens] Functional tests (#44279)
Foundational layer for lens functional tests. Lens-specific page objects are not in this PR.
* [Lens] Add Lens visualizations to Visualize list (#43398)
* [Lens] Suggestion improvements (#43688)
* fix bugs
* [lens] Calculate existence of fields in datasource (#44422)
* [lens] Calculate existence of fields in datasource
* Fix route registration
* Add page object and use existence in functional test
* Simplify layout of filters for index pattern
* Respond to review feedback
* Update class names
* Use new URL constant
* Fix usage of base path
* Fix lint errors
* [Lens ] Preview metric (#43755)
* format filter ratio as percentage (#44625)
* [Lens] Remove datasource suggestion id (#44495)
* [Lens] Make breadcrumbs look and feel like Visualize (#44258)
* [lens] Fix breakage from app-arch movements (#44720)
* Design cleanup
* PR review comments
* fix tests
* small cleanup
* remove unused import
* [lens] Fix type error in test from merge
* [lens] Fix registration of embeddable (#45171)
* keep references stable if table is just extended and add tests
* changed label for stack/unstack
* fix test
* [Lens] Functional tests (#44814)
Basic functional tests for Lens, by no means comprehensive. This is more of a smokescreen test of some normal use cases.
* [lens] Add Lens to CODEOWNERS (#45296)
* [lens] Fix visualization alias registration
* [lens] Fix usage of EUI after typescript upgrade (#45404)
* [lens] Fix usage of EUI after typescript upgrade
* Use local fix instead of workaround
* fix bug and address reviews
* Fix frame tests
2019-09-19 00:28:26 +02:00
|
|
|
layerId: 'first',
|
|
|
|
seriesType: 'bar',
|
2019-10-01 21:04:00 +02:00
|
|
|
splitAccessor: 'date',
|
[Lens] Transient suggestions (#44234)
* [lens] Initial Commit (#35627)
* [visualization editor] Initial Commit
* [lens] Add more complete initial state
* [lens] Fix type issues
* [lens] Remove feature control
* [lens] Bring back feature control and add tests
* [lens] Update plugin structure and naming per comments
* replace any usage by safe casting
* [lens] Respond to review comments
* [lens] Remove unused EditorFrameState type
* [lens] Initial state for IndexPatternDatasource (#36052)
* [lens] Add first tests to indexpattern data source
* Respond to review comments
* Fix type definitions
* [lens] Editor frame initializes datasources and visualizations (#36060)
* [lens] Editor frame initializes datasources and visualizations
* Respond to review comments
* Fix build issues
* Fix state management issue
* [lens][draft] Lens/drag drop (#36268)
Add basic drag / drop component to Lens
* remove local package (#36456)
* [lens] Native renderer (#36165)
* Add nativerenderer component
* Use native renderer in app and editor frame
* [Lens] No explicit any (#36515)
* [Lens] Implement basic editor frame state handling (#36443)
* [lens] Load index patterns and render in data panel (#36463)
* [lens] Editor frame initializes datasources and visualizations
* Respond to review comments
* Fix build issues
* remove local package
* [lens] Load index patterns into data source
* Redo types for Index Pattern Datasource
* Fix one more type
* Respond to review comments
* [draft] Lens/line chart renderer (#36827)
Expression logic for the Lens xy chart.
* [lens] Index pattern data panel (initial) (#37015)
* [lens] Index pattern switcher
* Respond to review comments
* [Lens] Editor state 2 (#36513)
* [lens] Dimension panel that generates columns (#37117)
* [lens] Dimension panel that generates columns
* Update from review comments
* [lens] Generate esdocs queries from index pattern (#37361)
* [lens] Generate esdocs queries from index pattern
* Remove unused code
* Update yarn.lock from yarn kbn bootstrap
* [Lens] Add basic Lens xy chart suggestions (#37030)
Basic xy chart suggestions
* [Lens] Expression rendering (#37648)
* [Lens] Expression handling (#37876)
* [Lens] Lens/xy config panel (#37391)
Basic xy chart configuration panel
* [Lens] Xy expression building (#37967)
* [Lens] Initialize visualization with datasource api (#38142)
* [lens] Dimension panel lets users select operations and fields individually (#37573)
* [lens] Dimension panel lets users select operations and fields individually
* Split files and add tests
* Fix dimension labeling and add clear button
* Support more aggregations, aggregation nesting, rollups, and clearing
* Fix esaggs expression
* Increase top-level test coverage of dimension panel
* Update from review comments
* [Lens] Rename columns (#38278)
* [Lens] Lens/index pattern drag drop (#37711)
* Basic xy chart suggestions
* Re-apply XY config panel after force merge
* Initial integration of lens drag and drop
* Tweak naming, remove irellevant comment
* Tweaks per Wylie's feedback
* Add xy chart internationalization
Tweak types per Joe's feedback
* Update xy chart i18n implementation
* Fix i18n id
* Add drop tests to the lens index pattern
* improve tests
* [lens] Only allow aggregated dimensions (#38820)
* [lens] Only allow aggregated dimensions
* [lens] Index pattern suggest on drop
* Fully remove value
* Revert "[lens] Index pattern suggest on drop"
This reverts commit 604c6ed68ca394441ddafa662bdfc5f421de300c.
* Fix type errors
* [lens] Suggest on drop (#38848)
* [lens] Index pattern suggest on drop
* Add test for suggestion without date field
* fix merge
* [Lens] Parameter configurations and new dimension config flow (#38863)
* fix eslint failure
* [lens] Fix build by updating saved objects and i18n (#39391)
* [lens] Update location of saved objects code
* Update internatationalization
* Remove added file
* Lens basic metric visualization
* [lens] Fix arguments to esaggs using booleans (#39462)
* [lens] Datatable visualization plugin (#39390)
* [lens] Datatable visualization plugin
* Fix merge issues and add tests
* Update from review
* Fix file locations
* Fix merge issues, localize expression help text
* Add auto-scaling to the lens metric visualization
* Fix unit tests broken by autoscale
* Move autoscale to the new Lens folder
* [lens] Use first suggestion when switching visualizations (#39377)
* [lens] Label each Y axis with its operation label (#39461)
* [lens] Label each Y axis with its operation label
* Remove comment
* Add link to chart issue
* [Lens] Suggestion preview rendering (#39576)
* [Lens] Popover configs (#39565)
* [Lens] Basic layouting (#39587)
* remove datasource public API in suggestions (#39772)
* [Lens] Basic save / load (#39257)
Add basic routing, save, and load to Lens
* [lens] Fix lint error
* [lens] Use node scripts/eslint.js --fix to fix errors
* [lens] Include link to lens from Visualize (#40542)
* [lens] Support stacking in xy visualization (#40546)
* [lens] Support stacking in xy visualization
* Use chart type switcher for stacked and horizontal xy charts
* Clean up remaining isStacked code
* Fix type error
* [Lens] Add xy split series support (#39726)
* Add split series to lens xy chart
* [lens] Lens Filter Ratio (#40196)
* WIP filter ratio
* Fix test issues
* Pass dependencies through plugin like new platform
* Pass props into filter ratio popover editor
* Provide mocks to filter_ratio popover test
* Add another test
* Clean up to prepare for review
* Clean up unnecessary changes
* Respond to review comments
* Fix tests
* [Lens] Terms order direction (#39884)
* fix types
* [Lens] Data panel styling and optimizations (#40787)
Style the data panel (mostly Joe Reuter's doing). Optimize a bunch of the Lens stack.
* Add metric preview icon
* Fix metric vis tests
* Fix metric plugin imports
* Use the operation label as the metric title
* [Lens] Optimize dimension panel flow (#41114)
* [Lens] re-introduce no-explicit-any (#41454)
* [Lens] No results marker (#41450)
* [lens] Support layers for visualizing results of multiple queries (#41290)
* [lens] WIP add support for layers
* [lens] WIP switch to nested tables
* Get basic layering to work
* Load multiple tables and render in one chart
* Fix priority ordering
* Reduce quantity of linting errors
* Ensure that new xy layer state has a split column
* Make the "add" y / split the trailing accessor
* Various fixes for datasource public API and implementation
* Unify datasource deletion and accessor removal
* Fix broken scss
* Fix xy visualization TypeScript errors?
* Build basic suggestions
* Restore save/load and fix typescript bugs
* simplify init routine
* fix save tests
* fix persistence tests
* fix state management tests
* Ensure the data table is aligned to the top
* Add layer support to Lens datatable
* Give xy chart a default layer initially
* Allow deletion of layers in xy charts
* xy: Make split accessor singular
Remove commented code blocks
* Change expression type for lens_merge_tables
* Fix XY chart rendering expression
* Fix type errors relating to `layerId` in table suggestions
* Pass around tables for suggestions with associated layerIds
* fix tests in workspace panel
* fix editor_frame tests
* Fix xy tests, skip inapplicable tests
that will be implemented in a separate PR
* add some tests for multiple datasources and layers
* Suggest that split series comes before X axis in XY chart
* Get datatable suggestion working
* Adjust how xy axis labels are computed
* Datasource suggestions should handle layers and have tests
* Fix linting in XY chart and remove commented code
* Update snapshots from earlier change
* Fix linting errors
* More cleanup
* Remove commented code
* Test the multi-column editor
* XY Visualization does not need to track datasourceId
* Fix various comments
* Remove unused xy prop
Add datasource header to datatable config
* Use operation labels for XY chart
* Adding and removing layers is reflected in the datasource
* rewrote datasource state init
* clean up editor_frame frame api implementation
* clean up editor frame
* [Lens] Embeddable (#41361)
* [lens] Move XY chart config into popover and fix layering (#41927)
* [lens] Move XY chart config into popover and fix layering
* Fix tests
* Update style
* Change wrapping of layer settings popover
* [Lens] Fix bugs in date_histogram and filter ratio (#42046)
* [Lens] Performance improvements (#41784)
* fix type error
* switch default size of terms operation to 3 (#42334)
* [lens] Improve suggestions for split series (#42052)
* [lens] Add chart switcher (#42093)
* solve merge conflicts
* fix test case
* [Lens] Allow only current visualization on field drop in workspace (#42344)
* [Lens] Remove indexpattern id on column (#42429)
* [lens] Implement app-level filtering and time picker (#42031)
* [lens] Implement app-level filtering and time picker
* More integration with filter bar
* Clean up test code and type errors
* Add frame level tests for syncing with app
* Add test coverage for app logic
* Simplify state management from app down
* Fix import errors
* Clarify whether properties are ids or titles for index pattern
* pass new saved object by ref
* add dirty state checking
* Fix tests
* [Lens] Add some tests around document handling in dimension panel (#42670)
* [Lens] Terms operation boolean support (#42817)
* [lens] Minor UX/UI improvements in Lens (#42852)
* Make dimension popover toggle when clicking button
* Without suggestions hide suggestion panel
* Add missing translations (#42921)
* [Lens] Config panel design (#42980)
* Fix up design of config panel
Does not include config popover
* Add metric suggestions, fix tests
* Remove a couple of non-null assertions (#43013)
* Remove a couple of non-null assertions
* Remove orphaned import
* [Lens] Switch indexpattern manually (#42599)
* [Lens] Update frame to put suggestions at the bottom (#42997)
* Back out suggestion changes, in lieu
of Joe's work
* fix type errors
* switch indexpattern on layer if there is only a single empty one (#43079)
* [Lens] Suggest reduced versions of current data table (#42537)
* [Lens] Field formatter support (#38874)
* Fix bugs
* Fix metric autoscale logic
* Register metric as an embeddable
* Fix metric autoscale flicker
* Render mini metric in suggestions panel
* Cache the metric filterOperations function
* fix auto scaling edge cases
* [Lens] Add bucket nesting editor to indexpattern (#42869)
* Modify auto-scale to handle resize events
* use format hints in metric vis
* start cleaning up suggestions
* [Lens] Remove unnecessary fields and indexing from mappings (#43285)
* Tweak metric to only scale down so far, and
scale both the number and the label.
* Fix lens metric tests
* [Lens] Xy scale type (#42142)
* start adding more suggestions
* remove unused imports
* work on suggestions
* work more on suggestions
* work more on suggestions
* work more on suggestions
* [lens] Allow updater function to be used for updating state (#43373)
* [Lens] Lens metric visualization (#39364)
* clean up tests and add new ones
* remove isMetric
* area as default on time dimension
* fix bug in area chart for time
* Fix axis rotation (#43792)
* remove title form layer
* [Lens] Auto date histogram (#43775)
* Add auto date histogram
* Improve documentation and cleanup
* Add tests
* Change test name
* handle state in app
* fix isMetric usages
* fix integration tests
* fix type errors
* fix date handling on submit
* add new suggestion types
* fix test
* do not suggest single tables
* remove unused import
* [Lens] Fix query bar integration (#43865)
* switch order of appending new string column
* resolve merge conflicts
* [Lens] Clean up operations code (#43784)
* fix merge conflicts
* poc implementation
* highlight currently active suggestion and provide button to submit current choice
* [Lens] Functional tests (#44279)
Foundational layer for lens functional tests. Lens-specific page objects are not in this PR.
* [Lens] Add Lens visualizations to Visualize list (#43398)
* [Lens] Suggestion improvements (#43688)
* fix bugs
* [lens] Calculate existence of fields in datasource (#44422)
* [lens] Calculate existence of fields in datasource
* Fix route registration
* Add page object and use existence in functional test
* Simplify layout of filters for index pattern
* Respond to review feedback
* Update class names
* Use new URL constant
* Fix usage of base path
* Fix lint errors
* [Lens ] Preview metric (#43755)
* format filter ratio as percentage (#44625)
* [Lens] Remove datasource suggestion id (#44495)
* [Lens] Make breadcrumbs look and feel like Visualize (#44258)
* [lens] Fix breakage from app-arch movements (#44720)
* Design cleanup
* PR review comments
* fix tests
* small cleanup
* remove unused import
* [lens] Fix type error in test from merge
* [lens] Fix registration of embeddable (#45171)
* keep references stable if table is just extended and add tests
* changed label for stack/unstack
* fix test
* [Lens] Functional tests (#44814)
Basic functional tests for Lens, by no means comprehensive. This is more of a smokescreen test of some normal use cases.
* [lens] Add Lens to CODEOWNERS (#45296)
* [lens] Fix visualization alias registration
* [lens] Fix usage of EUI after typescript upgrade (#45404)
* [lens] Fix usage of EUI after typescript upgrade
* Use local fix instead of workaround
* fix bug and address reviews
* Fix frame tests
2019-09-19 00:28:26 +02:00
|
|
|
xAccessor: 'product',
|
|
|
|
},
|
|
|
|
],
|
|
|
|
};
|
2019-10-01 21:04:00 +02:00
|
|
|
const suggestions = getSuggestions({
|
[Lens] Transient suggestions (#44234)
* [lens] Initial Commit (#35627)
* [visualization editor] Initial Commit
* [lens] Add more complete initial state
* [lens] Fix type issues
* [lens] Remove feature control
* [lens] Bring back feature control and add tests
* [lens] Update plugin structure and naming per comments
* replace any usage by safe casting
* [lens] Respond to review comments
* [lens] Remove unused EditorFrameState type
* [lens] Initial state for IndexPatternDatasource (#36052)
* [lens] Add first tests to indexpattern data source
* Respond to review comments
* Fix type definitions
* [lens] Editor frame initializes datasources and visualizations (#36060)
* [lens] Editor frame initializes datasources and visualizations
* Respond to review comments
* Fix build issues
* Fix state management issue
* [lens][draft] Lens/drag drop (#36268)
Add basic drag / drop component to Lens
* remove local package (#36456)
* [lens] Native renderer (#36165)
* Add nativerenderer component
* Use native renderer in app and editor frame
* [Lens] No explicit any (#36515)
* [Lens] Implement basic editor frame state handling (#36443)
* [lens] Load index patterns and render in data panel (#36463)
* [lens] Editor frame initializes datasources and visualizations
* Respond to review comments
* Fix build issues
* remove local package
* [lens] Load index patterns into data source
* Redo types for Index Pattern Datasource
* Fix one more type
* Respond to review comments
* [draft] Lens/line chart renderer (#36827)
Expression logic for the Lens xy chart.
* [lens] Index pattern data panel (initial) (#37015)
* [lens] Index pattern switcher
* Respond to review comments
* [Lens] Editor state 2 (#36513)
* [lens] Dimension panel that generates columns (#37117)
* [lens] Dimension panel that generates columns
* Update from review comments
* [lens] Generate esdocs queries from index pattern (#37361)
* [lens] Generate esdocs queries from index pattern
* Remove unused code
* Update yarn.lock from yarn kbn bootstrap
* [Lens] Add basic Lens xy chart suggestions (#37030)
Basic xy chart suggestions
* [Lens] Expression rendering (#37648)
* [Lens] Expression handling (#37876)
* [Lens] Lens/xy config panel (#37391)
Basic xy chart configuration panel
* [Lens] Xy expression building (#37967)
* [Lens] Initialize visualization with datasource api (#38142)
* [lens] Dimension panel lets users select operations and fields individually (#37573)
* [lens] Dimension panel lets users select operations and fields individually
* Split files and add tests
* Fix dimension labeling and add clear button
* Support more aggregations, aggregation nesting, rollups, and clearing
* Fix esaggs expression
* Increase top-level test coverage of dimension panel
* Update from review comments
* [Lens] Rename columns (#38278)
* [Lens] Lens/index pattern drag drop (#37711)
* Basic xy chart suggestions
* Re-apply XY config panel after force merge
* Initial integration of lens drag and drop
* Tweak naming, remove irellevant comment
* Tweaks per Wylie's feedback
* Add xy chart internationalization
Tweak types per Joe's feedback
* Update xy chart i18n implementation
* Fix i18n id
* Add drop tests to the lens index pattern
* improve tests
* [lens] Only allow aggregated dimensions (#38820)
* [lens] Only allow aggregated dimensions
* [lens] Index pattern suggest on drop
* Fully remove value
* Revert "[lens] Index pattern suggest on drop"
This reverts commit 604c6ed68ca394441ddafa662bdfc5f421de300c.
* Fix type errors
* [lens] Suggest on drop (#38848)
* [lens] Index pattern suggest on drop
* Add test for suggestion without date field
* fix merge
* [Lens] Parameter configurations and new dimension config flow (#38863)
* fix eslint failure
* [lens] Fix build by updating saved objects and i18n (#39391)
* [lens] Update location of saved objects code
* Update internatationalization
* Remove added file
* Lens basic metric visualization
* [lens] Fix arguments to esaggs using booleans (#39462)
* [lens] Datatable visualization plugin (#39390)
* [lens] Datatable visualization plugin
* Fix merge issues and add tests
* Update from review
* Fix file locations
* Fix merge issues, localize expression help text
* Add auto-scaling to the lens metric visualization
* Fix unit tests broken by autoscale
* Move autoscale to the new Lens folder
* [lens] Use first suggestion when switching visualizations (#39377)
* [lens] Label each Y axis with its operation label (#39461)
* [lens] Label each Y axis with its operation label
* Remove comment
* Add link to chart issue
* [Lens] Suggestion preview rendering (#39576)
* [Lens] Popover configs (#39565)
* [Lens] Basic layouting (#39587)
* remove datasource public API in suggestions (#39772)
* [Lens] Basic save / load (#39257)
Add basic routing, save, and load to Lens
* [lens] Fix lint error
* [lens] Use node scripts/eslint.js --fix to fix errors
* [lens] Include link to lens from Visualize (#40542)
* [lens] Support stacking in xy visualization (#40546)
* [lens] Support stacking in xy visualization
* Use chart type switcher for stacked and horizontal xy charts
* Clean up remaining isStacked code
* Fix type error
* [Lens] Add xy split series support (#39726)
* Add split series to lens xy chart
* [lens] Lens Filter Ratio (#40196)
* WIP filter ratio
* Fix test issues
* Pass dependencies through plugin like new platform
* Pass props into filter ratio popover editor
* Provide mocks to filter_ratio popover test
* Add another test
* Clean up to prepare for review
* Clean up unnecessary changes
* Respond to review comments
* Fix tests
* [Lens] Terms order direction (#39884)
* fix types
* [Lens] Data panel styling and optimizations (#40787)
Style the data panel (mostly Joe Reuter's doing). Optimize a bunch of the Lens stack.
* Add metric preview icon
* Fix metric vis tests
* Fix metric plugin imports
* Use the operation label as the metric title
* [Lens] Optimize dimension panel flow (#41114)
* [Lens] re-introduce no-explicit-any (#41454)
* [Lens] No results marker (#41450)
* [lens] Support layers for visualizing results of multiple queries (#41290)
* [lens] WIP add support for layers
* [lens] WIP switch to nested tables
* Get basic layering to work
* Load multiple tables and render in one chart
* Fix priority ordering
* Reduce quantity of linting errors
* Ensure that new xy layer state has a split column
* Make the "add" y / split the trailing accessor
* Various fixes for datasource public API and implementation
* Unify datasource deletion and accessor removal
* Fix broken scss
* Fix xy visualization TypeScript errors?
* Build basic suggestions
* Restore save/load and fix typescript bugs
* simplify init routine
* fix save tests
* fix persistence tests
* fix state management tests
* Ensure the data table is aligned to the top
* Add layer support to Lens datatable
* Give xy chart a default layer initially
* Allow deletion of layers in xy charts
* xy: Make split accessor singular
Remove commented code blocks
* Change expression type for lens_merge_tables
* Fix XY chart rendering expression
* Fix type errors relating to `layerId` in table suggestions
* Pass around tables for suggestions with associated layerIds
* fix tests in workspace panel
* fix editor_frame tests
* Fix xy tests, skip inapplicable tests
that will be implemented in a separate PR
* add some tests for multiple datasources and layers
* Suggest that split series comes before X axis in XY chart
* Get datatable suggestion working
* Adjust how xy axis labels are computed
* Datasource suggestions should handle layers and have tests
* Fix linting in XY chart and remove commented code
* Update snapshots from earlier change
* Fix linting errors
* More cleanup
* Remove commented code
* Test the multi-column editor
* XY Visualization does not need to track datasourceId
* Fix various comments
* Remove unused xy prop
Add datasource header to datatable config
* Use operation labels for XY chart
* Adding and removing layers is reflected in the datasource
* rewrote datasource state init
* clean up editor_frame frame api implementation
* clean up editor frame
* [Lens] Embeddable (#41361)
* [lens] Move XY chart config into popover and fix layering (#41927)
* [lens] Move XY chart config into popover and fix layering
* Fix tests
* Update style
* Change wrapping of layer settings popover
* [Lens] Fix bugs in date_histogram and filter ratio (#42046)
* [Lens] Performance improvements (#41784)
* fix type error
* switch default size of terms operation to 3 (#42334)
* [lens] Improve suggestions for split series (#42052)
* [lens] Add chart switcher (#42093)
* solve merge conflicts
* fix test case
* [Lens] Allow only current visualization on field drop in workspace (#42344)
* [Lens] Remove indexpattern id on column (#42429)
* [lens] Implement app-level filtering and time picker (#42031)
* [lens] Implement app-level filtering and time picker
* More integration with filter bar
* Clean up test code and type errors
* Add frame level tests for syncing with app
* Add test coverage for app logic
* Simplify state management from app down
* Fix import errors
* Clarify whether properties are ids or titles for index pattern
* pass new saved object by ref
* add dirty state checking
* Fix tests
* [Lens] Add some tests around document handling in dimension panel (#42670)
* [Lens] Terms operation boolean support (#42817)
* [lens] Minor UX/UI improvements in Lens (#42852)
* Make dimension popover toggle when clicking button
* Without suggestions hide suggestion panel
* Add missing translations (#42921)
* [Lens] Config panel design (#42980)
* Fix up design of config panel
Does not include config popover
* Add metric suggestions, fix tests
* Remove a couple of non-null assertions (#43013)
* Remove a couple of non-null assertions
* Remove orphaned import
* [Lens] Switch indexpattern manually (#42599)
* [Lens] Update frame to put suggestions at the bottom (#42997)
* Back out suggestion changes, in lieu
of Joe's work
* fix type errors
* switch indexpattern on layer if there is only a single empty one (#43079)
* [Lens] Suggest reduced versions of current data table (#42537)
* [Lens] Field formatter support (#38874)
* Fix bugs
* Fix metric autoscale logic
* Register metric as an embeddable
* Fix metric autoscale flicker
* Render mini metric in suggestions panel
* Cache the metric filterOperations function
* fix auto scaling edge cases
* [Lens] Add bucket nesting editor to indexpattern (#42869)
* Modify auto-scale to handle resize events
* use format hints in metric vis
* start cleaning up suggestions
* [Lens] Remove unnecessary fields and indexing from mappings (#43285)
* Tweak metric to only scale down so far, and
scale both the number and the label.
* Fix lens metric tests
* [Lens] Xy scale type (#42142)
* start adding more suggestions
* remove unused imports
* work on suggestions
* work more on suggestions
* work more on suggestions
* work more on suggestions
* [lens] Allow updater function to be used for updating state (#43373)
* [Lens] Lens metric visualization (#39364)
* clean up tests and add new ones
* remove isMetric
* area as default on time dimension
* fix bug in area chart for time
* Fix axis rotation (#43792)
* remove title form layer
* [Lens] Auto date histogram (#43775)
* Add auto date histogram
* Improve documentation and cleanup
* Add tests
* Change test name
* handle state in app
* fix isMetric usages
* fix integration tests
* fix type errors
* fix date handling on submit
* add new suggestion types
* fix test
* do not suggest single tables
* remove unused import
* [Lens] Fix query bar integration (#43865)
* switch order of appending new string column
* resolve merge conflicts
* [Lens] Clean up operations code (#43784)
* fix merge conflicts
* poc implementation
* highlight currently active suggestion and provide button to submit current choice
* [Lens] Functional tests (#44279)
Foundational layer for lens functional tests. Lens-specific page objects are not in this PR.
* [Lens] Add Lens visualizations to Visualize list (#43398)
* [Lens] Suggestion improvements (#43688)
* fix bugs
* [lens] Calculate existence of fields in datasource (#44422)
* [lens] Calculate existence of fields in datasource
* Fix route registration
* Add page object and use existence in functional test
* Simplify layout of filters for index pattern
* Respond to review feedback
* Update class names
* Use new URL constant
* Fix usage of base path
* Fix lint errors
* [Lens ] Preview metric (#43755)
* format filter ratio as percentage (#44625)
* [Lens] Remove datasource suggestion id (#44495)
* [Lens] Make breadcrumbs look and feel like Visualize (#44258)
* [lens] Fix breakage from app-arch movements (#44720)
* Design cleanup
* PR review comments
* fix tests
* small cleanup
* remove unused import
* [lens] Fix type error in test from merge
* [lens] Fix registration of embeddable (#45171)
* keep references stable if table is just extended and add tests
* changed label for stack/unstack
* fix test
* [Lens] Functional tests (#44814)
Basic functional tests for Lens, by no means comprehensive. This is more of a smokescreen test of some normal use cases.
* [lens] Add Lens to CODEOWNERS (#45296)
* [lens] Fix visualization alias registration
* [lens] Fix usage of EUI after typescript upgrade (#45404)
* [lens] Fix usage of EUI after typescript upgrade
* Use local fix instead of workaround
* fix bug and address reviews
* Fix frame tests
2019-09-19 00:28:26 +02:00
|
|
|
table: {
|
|
|
|
isMultiRow: true,
|
2019-10-01 21:04:00 +02:00
|
|
|
columns: [numCol('price'), dateCol('date'), strCol('product')],
|
[Lens] Transient suggestions (#44234)
* [lens] Initial Commit (#35627)
* [visualization editor] Initial Commit
* [lens] Add more complete initial state
* [lens] Fix type issues
* [lens] Remove feature control
* [lens] Bring back feature control and add tests
* [lens] Update plugin structure and naming per comments
* replace any usage by safe casting
* [lens] Respond to review comments
* [lens] Remove unused EditorFrameState type
* [lens] Initial state for IndexPatternDatasource (#36052)
* [lens] Add first tests to indexpattern data source
* Respond to review comments
* Fix type definitions
* [lens] Editor frame initializes datasources and visualizations (#36060)
* [lens] Editor frame initializes datasources and visualizations
* Respond to review comments
* Fix build issues
* Fix state management issue
* [lens][draft] Lens/drag drop (#36268)
Add basic drag / drop component to Lens
* remove local package (#36456)
* [lens] Native renderer (#36165)
* Add nativerenderer component
* Use native renderer in app and editor frame
* [Lens] No explicit any (#36515)
* [Lens] Implement basic editor frame state handling (#36443)
* [lens] Load index patterns and render in data panel (#36463)
* [lens] Editor frame initializes datasources and visualizations
* Respond to review comments
* Fix build issues
* remove local package
* [lens] Load index patterns into data source
* Redo types for Index Pattern Datasource
* Fix one more type
* Respond to review comments
* [draft] Lens/line chart renderer (#36827)
Expression logic for the Lens xy chart.
* [lens] Index pattern data panel (initial) (#37015)
* [lens] Index pattern switcher
* Respond to review comments
* [Lens] Editor state 2 (#36513)
* [lens] Dimension panel that generates columns (#37117)
* [lens] Dimension panel that generates columns
* Update from review comments
* [lens] Generate esdocs queries from index pattern (#37361)
* [lens] Generate esdocs queries from index pattern
* Remove unused code
* Update yarn.lock from yarn kbn bootstrap
* [Lens] Add basic Lens xy chart suggestions (#37030)
Basic xy chart suggestions
* [Lens] Expression rendering (#37648)
* [Lens] Expression handling (#37876)
* [Lens] Lens/xy config panel (#37391)
Basic xy chart configuration panel
* [Lens] Xy expression building (#37967)
* [Lens] Initialize visualization with datasource api (#38142)
* [lens] Dimension panel lets users select operations and fields individually (#37573)
* [lens] Dimension panel lets users select operations and fields individually
* Split files and add tests
* Fix dimension labeling and add clear button
* Support more aggregations, aggregation nesting, rollups, and clearing
* Fix esaggs expression
* Increase top-level test coverage of dimension panel
* Update from review comments
* [Lens] Rename columns (#38278)
* [Lens] Lens/index pattern drag drop (#37711)
* Basic xy chart suggestions
* Re-apply XY config panel after force merge
* Initial integration of lens drag and drop
* Tweak naming, remove irellevant comment
* Tweaks per Wylie's feedback
* Add xy chart internationalization
Tweak types per Joe's feedback
* Update xy chart i18n implementation
* Fix i18n id
* Add drop tests to the lens index pattern
* improve tests
* [lens] Only allow aggregated dimensions (#38820)
* [lens] Only allow aggregated dimensions
* [lens] Index pattern suggest on drop
* Fully remove value
* Revert "[lens] Index pattern suggest on drop"
This reverts commit 604c6ed68ca394441ddafa662bdfc5f421de300c.
* Fix type errors
* [lens] Suggest on drop (#38848)
* [lens] Index pattern suggest on drop
* Add test for suggestion without date field
* fix merge
* [Lens] Parameter configurations and new dimension config flow (#38863)
* fix eslint failure
* [lens] Fix build by updating saved objects and i18n (#39391)
* [lens] Update location of saved objects code
* Update internatationalization
* Remove added file
* Lens basic metric visualization
* [lens] Fix arguments to esaggs using booleans (#39462)
* [lens] Datatable visualization plugin (#39390)
* [lens] Datatable visualization plugin
* Fix merge issues and add tests
* Update from review
* Fix file locations
* Fix merge issues, localize expression help text
* Add auto-scaling to the lens metric visualization
* Fix unit tests broken by autoscale
* Move autoscale to the new Lens folder
* [lens] Use first suggestion when switching visualizations (#39377)
* [lens] Label each Y axis with its operation label (#39461)
* [lens] Label each Y axis with its operation label
* Remove comment
* Add link to chart issue
* [Lens] Suggestion preview rendering (#39576)
* [Lens] Popover configs (#39565)
* [Lens] Basic layouting (#39587)
* remove datasource public API in suggestions (#39772)
* [Lens] Basic save / load (#39257)
Add basic routing, save, and load to Lens
* [lens] Fix lint error
* [lens] Use node scripts/eslint.js --fix to fix errors
* [lens] Include link to lens from Visualize (#40542)
* [lens] Support stacking in xy visualization (#40546)
* [lens] Support stacking in xy visualization
* Use chart type switcher for stacked and horizontal xy charts
* Clean up remaining isStacked code
* Fix type error
* [Lens] Add xy split series support (#39726)
* Add split series to lens xy chart
* [lens] Lens Filter Ratio (#40196)
* WIP filter ratio
* Fix test issues
* Pass dependencies through plugin like new platform
* Pass props into filter ratio popover editor
* Provide mocks to filter_ratio popover test
* Add another test
* Clean up to prepare for review
* Clean up unnecessary changes
* Respond to review comments
* Fix tests
* [Lens] Terms order direction (#39884)
* fix types
* [Lens] Data panel styling and optimizations (#40787)
Style the data panel (mostly Joe Reuter's doing). Optimize a bunch of the Lens stack.
* Add metric preview icon
* Fix metric vis tests
* Fix metric plugin imports
* Use the operation label as the metric title
* [Lens] Optimize dimension panel flow (#41114)
* [Lens] re-introduce no-explicit-any (#41454)
* [Lens] No results marker (#41450)
* [lens] Support layers for visualizing results of multiple queries (#41290)
* [lens] WIP add support for layers
* [lens] WIP switch to nested tables
* Get basic layering to work
* Load multiple tables and render in one chart
* Fix priority ordering
* Reduce quantity of linting errors
* Ensure that new xy layer state has a split column
* Make the "add" y / split the trailing accessor
* Various fixes for datasource public API and implementation
* Unify datasource deletion and accessor removal
* Fix broken scss
* Fix xy visualization TypeScript errors?
* Build basic suggestions
* Restore save/load and fix typescript bugs
* simplify init routine
* fix save tests
* fix persistence tests
* fix state management tests
* Ensure the data table is aligned to the top
* Add layer support to Lens datatable
* Give xy chart a default layer initially
* Allow deletion of layers in xy charts
* xy: Make split accessor singular
Remove commented code blocks
* Change expression type for lens_merge_tables
* Fix XY chart rendering expression
* Fix type errors relating to `layerId` in table suggestions
* Pass around tables for suggestions with associated layerIds
* fix tests in workspace panel
* fix editor_frame tests
* Fix xy tests, skip inapplicable tests
that will be implemented in a separate PR
* add some tests for multiple datasources and layers
* Suggest that split series comes before X axis in XY chart
* Get datatable suggestion working
* Adjust how xy axis labels are computed
* Datasource suggestions should handle layers and have tests
* Fix linting in XY chart and remove commented code
* Update snapshots from earlier change
* Fix linting errors
* More cleanup
* Remove commented code
* Test the multi-column editor
* XY Visualization does not need to track datasourceId
* Fix various comments
* Remove unused xy prop
Add datasource header to datatable config
* Use operation labels for XY chart
* Adding and removing layers is reflected in the datasource
* rewrote datasource state init
* clean up editor_frame frame api implementation
* clean up editor frame
* [Lens] Embeddable (#41361)
* [lens] Move XY chart config into popover and fix layering (#41927)
* [lens] Move XY chart config into popover and fix layering
* Fix tests
* Update style
* Change wrapping of layer settings popover
* [Lens] Fix bugs in date_histogram and filter ratio (#42046)
* [Lens] Performance improvements (#41784)
* fix type error
* switch default size of terms operation to 3 (#42334)
* [lens] Improve suggestions for split series (#42052)
* [lens] Add chart switcher (#42093)
* solve merge conflicts
* fix test case
* [Lens] Allow only current visualization on field drop in workspace (#42344)
* [Lens] Remove indexpattern id on column (#42429)
* [lens] Implement app-level filtering and time picker (#42031)
* [lens] Implement app-level filtering and time picker
* More integration with filter bar
* Clean up test code and type errors
* Add frame level tests for syncing with app
* Add test coverage for app logic
* Simplify state management from app down
* Fix import errors
* Clarify whether properties are ids or titles for index pattern
* pass new saved object by ref
* add dirty state checking
* Fix tests
* [Lens] Add some tests around document handling in dimension panel (#42670)
* [Lens] Terms operation boolean support (#42817)
* [lens] Minor UX/UI improvements in Lens (#42852)
* Make dimension popover toggle when clicking button
* Without suggestions hide suggestion panel
* Add missing translations (#42921)
* [Lens] Config panel design (#42980)
* Fix up design of config panel
Does not include config popover
* Add metric suggestions, fix tests
* Remove a couple of non-null assertions (#43013)
* Remove a couple of non-null assertions
* Remove orphaned import
* [Lens] Switch indexpattern manually (#42599)
* [Lens] Update frame to put suggestions at the bottom (#42997)
* Back out suggestion changes, in lieu
of Joe's work
* fix type errors
* switch indexpattern on layer if there is only a single empty one (#43079)
* [Lens] Suggest reduced versions of current data table (#42537)
* [Lens] Field formatter support (#38874)
* Fix bugs
* Fix metric autoscale logic
* Register metric as an embeddable
* Fix metric autoscale flicker
* Render mini metric in suggestions panel
* Cache the metric filterOperations function
* fix auto scaling edge cases
* [Lens] Add bucket nesting editor to indexpattern (#42869)
* Modify auto-scale to handle resize events
* use format hints in metric vis
* start cleaning up suggestions
* [Lens] Remove unnecessary fields and indexing from mappings (#43285)
* Tweak metric to only scale down so far, and
scale both the number and the label.
* Fix lens metric tests
* [Lens] Xy scale type (#42142)
* start adding more suggestions
* remove unused imports
* work on suggestions
* work more on suggestions
* work more on suggestions
* work more on suggestions
* [lens] Allow updater function to be used for updating state (#43373)
* [Lens] Lens metric visualization (#39364)
* clean up tests and add new ones
* remove isMetric
* area as default on time dimension
* fix bug in area chart for time
* Fix axis rotation (#43792)
* remove title form layer
* [Lens] Auto date histogram (#43775)
* Add auto date histogram
* Improve documentation and cleanup
* Add tests
* Change test name
* handle state in app
* fix isMetric usages
* fix integration tests
* fix type errors
* fix date handling on submit
* add new suggestion types
* fix test
* do not suggest single tables
* remove unused import
* [Lens] Fix query bar integration (#43865)
* switch order of appending new string column
* resolve merge conflicts
* [Lens] Clean up operations code (#43784)
* fix merge conflicts
* poc implementation
* highlight currently active suggestion and provide button to submit current choice
* [Lens] Functional tests (#44279)
Foundational layer for lens functional tests. Lens-specific page objects are not in this PR.
* [Lens] Add Lens visualizations to Visualize list (#43398)
* [Lens] Suggestion improvements (#43688)
* fix bugs
* [lens] Calculate existence of fields in datasource (#44422)
* [lens] Calculate existence of fields in datasource
* Fix route registration
* Add page object and use existence in functional test
* Simplify layout of filters for index pattern
* Respond to review feedback
* Update class names
* Use new URL constant
* Fix usage of base path
* Fix lint errors
* [Lens ] Preview metric (#43755)
* format filter ratio as percentage (#44625)
* [Lens] Remove datasource suggestion id (#44495)
* [Lens] Make breadcrumbs look and feel like Visualize (#44258)
* [lens] Fix breakage from app-arch movements (#44720)
* Design cleanup
* PR review comments
* fix tests
* small cleanup
* remove unused import
* [lens] Fix type error in test from merge
* [lens] Fix registration of embeddable (#45171)
* keep references stable if table is just extended and add tests
* changed label for stack/unstack
* fix test
* [Lens] Functional tests (#44814)
Basic functional tests for Lens, by no means comprehensive. This is more of a smokescreen test of some normal use cases.
* [lens] Add Lens to CODEOWNERS (#45296)
* [lens] Fix visualization alias registration
* [lens] Fix usage of EUI after typescript upgrade (#45404)
* [lens] Fix usage of EUI after typescript upgrade
* Use local fix instead of workaround
* fix bug and address reviews
* Fix frame tests
2019-09-19 00:28:26 +02:00
|
|
|
layerId: 'first',
|
|
|
|
changeType: 'unchanged',
|
|
|
|
},
|
|
|
|
state: currentState,
|
2019-10-30 00:05:03 +01:00
|
|
|
keptLayerIds: [],
|
2019-10-01 21:04:00 +02:00
|
|
|
});
|
|
|
|
|
2020-05-22 09:08:58 +02:00
|
|
|
const visibleSuggestions = suggestions.filter((suggestion) => !suggestion.hide);
|
2020-05-05 21:59:32 +02:00
|
|
|
expect(visibleSuggestions).toContainEqual(
|
|
|
|
expect.objectContaining({
|
|
|
|
title: 'Stacked',
|
|
|
|
state: expect.objectContaining({ preferredSeriesType: 'bar_stacked' }),
|
|
|
|
})
|
|
|
|
);
|
[Lens] Transient suggestions (#44234)
* [lens] Initial Commit (#35627)
* [visualization editor] Initial Commit
* [lens] Add more complete initial state
* [lens] Fix type issues
* [lens] Remove feature control
* [lens] Bring back feature control and add tests
* [lens] Update plugin structure and naming per comments
* replace any usage by safe casting
* [lens] Respond to review comments
* [lens] Remove unused EditorFrameState type
* [lens] Initial state for IndexPatternDatasource (#36052)
* [lens] Add first tests to indexpattern data source
* Respond to review comments
* Fix type definitions
* [lens] Editor frame initializes datasources and visualizations (#36060)
* [lens] Editor frame initializes datasources and visualizations
* Respond to review comments
* Fix build issues
* Fix state management issue
* [lens][draft] Lens/drag drop (#36268)
Add basic drag / drop component to Lens
* remove local package (#36456)
* [lens] Native renderer (#36165)
* Add nativerenderer component
* Use native renderer in app and editor frame
* [Lens] No explicit any (#36515)
* [Lens] Implement basic editor frame state handling (#36443)
* [lens] Load index patterns and render in data panel (#36463)
* [lens] Editor frame initializes datasources and visualizations
* Respond to review comments
* Fix build issues
* remove local package
* [lens] Load index patterns into data source
* Redo types for Index Pattern Datasource
* Fix one more type
* Respond to review comments
* [draft] Lens/line chart renderer (#36827)
Expression logic for the Lens xy chart.
* [lens] Index pattern data panel (initial) (#37015)
* [lens] Index pattern switcher
* Respond to review comments
* [Lens] Editor state 2 (#36513)
* [lens] Dimension panel that generates columns (#37117)
* [lens] Dimension panel that generates columns
* Update from review comments
* [lens] Generate esdocs queries from index pattern (#37361)
* [lens] Generate esdocs queries from index pattern
* Remove unused code
* Update yarn.lock from yarn kbn bootstrap
* [Lens] Add basic Lens xy chart suggestions (#37030)
Basic xy chart suggestions
* [Lens] Expression rendering (#37648)
* [Lens] Expression handling (#37876)
* [Lens] Lens/xy config panel (#37391)
Basic xy chart configuration panel
* [Lens] Xy expression building (#37967)
* [Lens] Initialize visualization with datasource api (#38142)
* [lens] Dimension panel lets users select operations and fields individually (#37573)
* [lens] Dimension panel lets users select operations and fields individually
* Split files and add tests
* Fix dimension labeling and add clear button
* Support more aggregations, aggregation nesting, rollups, and clearing
* Fix esaggs expression
* Increase top-level test coverage of dimension panel
* Update from review comments
* [Lens] Rename columns (#38278)
* [Lens] Lens/index pattern drag drop (#37711)
* Basic xy chart suggestions
* Re-apply XY config panel after force merge
* Initial integration of lens drag and drop
* Tweak naming, remove irellevant comment
* Tweaks per Wylie's feedback
* Add xy chart internationalization
Tweak types per Joe's feedback
* Update xy chart i18n implementation
* Fix i18n id
* Add drop tests to the lens index pattern
* improve tests
* [lens] Only allow aggregated dimensions (#38820)
* [lens] Only allow aggregated dimensions
* [lens] Index pattern suggest on drop
* Fully remove value
* Revert "[lens] Index pattern suggest on drop"
This reverts commit 604c6ed68ca394441ddafa662bdfc5f421de300c.
* Fix type errors
* [lens] Suggest on drop (#38848)
* [lens] Index pattern suggest on drop
* Add test for suggestion without date field
* fix merge
* [Lens] Parameter configurations and new dimension config flow (#38863)
* fix eslint failure
* [lens] Fix build by updating saved objects and i18n (#39391)
* [lens] Update location of saved objects code
* Update internatationalization
* Remove added file
* Lens basic metric visualization
* [lens] Fix arguments to esaggs using booleans (#39462)
* [lens] Datatable visualization plugin (#39390)
* [lens] Datatable visualization plugin
* Fix merge issues and add tests
* Update from review
* Fix file locations
* Fix merge issues, localize expression help text
* Add auto-scaling to the lens metric visualization
* Fix unit tests broken by autoscale
* Move autoscale to the new Lens folder
* [lens] Use first suggestion when switching visualizations (#39377)
* [lens] Label each Y axis with its operation label (#39461)
* [lens] Label each Y axis with its operation label
* Remove comment
* Add link to chart issue
* [Lens] Suggestion preview rendering (#39576)
* [Lens] Popover configs (#39565)
* [Lens] Basic layouting (#39587)
* remove datasource public API in suggestions (#39772)
* [Lens] Basic save / load (#39257)
Add basic routing, save, and load to Lens
* [lens] Fix lint error
* [lens] Use node scripts/eslint.js --fix to fix errors
* [lens] Include link to lens from Visualize (#40542)
* [lens] Support stacking in xy visualization (#40546)
* [lens] Support stacking in xy visualization
* Use chart type switcher for stacked and horizontal xy charts
* Clean up remaining isStacked code
* Fix type error
* [Lens] Add xy split series support (#39726)
* Add split series to lens xy chart
* [lens] Lens Filter Ratio (#40196)
* WIP filter ratio
* Fix test issues
* Pass dependencies through plugin like new platform
* Pass props into filter ratio popover editor
* Provide mocks to filter_ratio popover test
* Add another test
* Clean up to prepare for review
* Clean up unnecessary changes
* Respond to review comments
* Fix tests
* [Lens] Terms order direction (#39884)
* fix types
* [Lens] Data panel styling and optimizations (#40787)
Style the data panel (mostly Joe Reuter's doing). Optimize a bunch of the Lens stack.
* Add metric preview icon
* Fix metric vis tests
* Fix metric plugin imports
* Use the operation label as the metric title
* [Lens] Optimize dimension panel flow (#41114)
* [Lens] re-introduce no-explicit-any (#41454)
* [Lens] No results marker (#41450)
* [lens] Support layers for visualizing results of multiple queries (#41290)
* [lens] WIP add support for layers
* [lens] WIP switch to nested tables
* Get basic layering to work
* Load multiple tables and render in one chart
* Fix priority ordering
* Reduce quantity of linting errors
* Ensure that new xy layer state has a split column
* Make the "add" y / split the trailing accessor
* Various fixes for datasource public API and implementation
* Unify datasource deletion and accessor removal
* Fix broken scss
* Fix xy visualization TypeScript errors?
* Build basic suggestions
* Restore save/load and fix typescript bugs
* simplify init routine
* fix save tests
* fix persistence tests
* fix state management tests
* Ensure the data table is aligned to the top
* Add layer support to Lens datatable
* Give xy chart a default layer initially
* Allow deletion of layers in xy charts
* xy: Make split accessor singular
Remove commented code blocks
* Change expression type for lens_merge_tables
* Fix XY chart rendering expression
* Fix type errors relating to `layerId` in table suggestions
* Pass around tables for suggestions with associated layerIds
* fix tests in workspace panel
* fix editor_frame tests
* Fix xy tests, skip inapplicable tests
that will be implemented in a separate PR
* add some tests for multiple datasources and layers
* Suggest that split series comes before X axis in XY chart
* Get datatable suggestion working
* Adjust how xy axis labels are computed
* Datasource suggestions should handle layers and have tests
* Fix linting in XY chart and remove commented code
* Update snapshots from earlier change
* Fix linting errors
* More cleanup
* Remove commented code
* Test the multi-column editor
* XY Visualization does not need to track datasourceId
* Fix various comments
* Remove unused xy prop
Add datasource header to datatable config
* Use operation labels for XY chart
* Adding and removing layers is reflected in the datasource
* rewrote datasource state init
* clean up editor_frame frame api implementation
* clean up editor frame
* [Lens] Embeddable (#41361)
* [lens] Move XY chart config into popover and fix layering (#41927)
* [lens] Move XY chart config into popover and fix layering
* Fix tests
* Update style
* Change wrapping of layer settings popover
* [Lens] Fix bugs in date_histogram and filter ratio (#42046)
* [Lens] Performance improvements (#41784)
* fix type error
* switch default size of terms operation to 3 (#42334)
* [lens] Improve suggestions for split series (#42052)
* [lens] Add chart switcher (#42093)
* solve merge conflicts
* fix test case
* [Lens] Allow only current visualization on field drop in workspace (#42344)
* [Lens] Remove indexpattern id on column (#42429)
* [lens] Implement app-level filtering and time picker (#42031)
* [lens] Implement app-level filtering and time picker
* More integration with filter bar
* Clean up test code and type errors
* Add frame level tests for syncing with app
* Add test coverage for app logic
* Simplify state management from app down
* Fix import errors
* Clarify whether properties are ids or titles for index pattern
* pass new saved object by ref
* add dirty state checking
* Fix tests
* [Lens] Add some tests around document handling in dimension panel (#42670)
* [Lens] Terms operation boolean support (#42817)
* [lens] Minor UX/UI improvements in Lens (#42852)
* Make dimension popover toggle when clicking button
* Without suggestions hide suggestion panel
* Add missing translations (#42921)
* [Lens] Config panel design (#42980)
* Fix up design of config panel
Does not include config popover
* Add metric suggestions, fix tests
* Remove a couple of non-null assertions (#43013)
* Remove a couple of non-null assertions
* Remove orphaned import
* [Lens] Switch indexpattern manually (#42599)
* [Lens] Update frame to put suggestions at the bottom (#42997)
* Back out suggestion changes, in lieu
of Joe's work
* fix type errors
* switch indexpattern on layer if there is only a single empty one (#43079)
* [Lens] Suggest reduced versions of current data table (#42537)
* [Lens] Field formatter support (#38874)
* Fix bugs
* Fix metric autoscale logic
* Register metric as an embeddable
* Fix metric autoscale flicker
* Render mini metric in suggestions panel
* Cache the metric filterOperations function
* fix auto scaling edge cases
* [Lens] Add bucket nesting editor to indexpattern (#42869)
* Modify auto-scale to handle resize events
* use format hints in metric vis
* start cleaning up suggestions
* [Lens] Remove unnecessary fields and indexing from mappings (#43285)
* Tweak metric to only scale down so far, and
scale both the number and the label.
* Fix lens metric tests
* [Lens] Xy scale type (#42142)
* start adding more suggestions
* remove unused imports
* work on suggestions
* work more on suggestions
* work more on suggestions
* work more on suggestions
* [lens] Allow updater function to be used for updating state (#43373)
* [Lens] Lens metric visualization (#39364)
* clean up tests and add new ones
* remove isMetric
* area as default on time dimension
* fix bug in area chart for time
* Fix axis rotation (#43792)
* remove title form layer
* [Lens] Auto date histogram (#43775)
* Add auto date histogram
* Improve documentation and cleanup
* Add tests
* Change test name
* handle state in app
* fix isMetric usages
* fix integration tests
* fix type errors
* fix date handling on submit
* add new suggestion types
* fix test
* do not suggest single tables
* remove unused import
* [Lens] Fix query bar integration (#43865)
* switch order of appending new string column
* resolve merge conflicts
* [Lens] Clean up operations code (#43784)
* fix merge conflicts
* poc implementation
* highlight currently active suggestion and provide button to submit current choice
* [Lens] Functional tests (#44279)
Foundational layer for lens functional tests. Lens-specific page objects are not in this PR.
* [Lens] Add Lens visualizations to Visualize list (#43398)
* [Lens] Suggestion improvements (#43688)
* fix bugs
* [lens] Calculate existence of fields in datasource (#44422)
* [lens] Calculate existence of fields in datasource
* Fix route registration
* Add page object and use existence in functional test
* Simplify layout of filters for index pattern
* Respond to review feedback
* Update class names
* Use new URL constant
* Fix usage of base path
* Fix lint errors
* [Lens ] Preview metric (#43755)
* format filter ratio as percentage (#44625)
* [Lens] Remove datasource suggestion id (#44495)
* [Lens] Make breadcrumbs look and feel like Visualize (#44258)
* [lens] Fix breakage from app-arch movements (#44720)
* Design cleanup
* PR review comments
* fix tests
* small cleanup
* remove unused import
* [lens] Fix type error in test from merge
* [lens] Fix registration of embeddable (#45171)
* keep references stable if table is just extended and add tests
* changed label for stack/unstack
* fix test
* [Lens] Functional tests (#44814)
Basic functional tests for Lens, by no means comprehensive. This is more of a smokescreen test of some normal use cases.
* [lens] Add Lens to CODEOWNERS (#45296)
* [lens] Fix visualization alias registration
* [lens] Fix usage of EUI after typescript upgrade (#45404)
* [lens] Fix usage of EUI after typescript upgrade
* Use local fix instead of workaround
* fix bug and address reviews
* Fix frame tests
2019-09-19 00:28:26 +02:00
|
|
|
});
|
|
|
|
|
|
|
|
test('keeps column to dimension mappings on extended tables', () => {
|
|
|
|
const currentState: XYState = {
|
|
|
|
legend: { isVisible: true, position: 'bottom' },
|
2020-11-06 16:34:30 +01:00
|
|
|
valueLabels: 'hide',
|
[Lens] Transient suggestions (#44234)
* [lens] Initial Commit (#35627)
* [visualization editor] Initial Commit
* [lens] Add more complete initial state
* [lens] Fix type issues
* [lens] Remove feature control
* [lens] Bring back feature control and add tests
* [lens] Update plugin structure and naming per comments
* replace any usage by safe casting
* [lens] Respond to review comments
* [lens] Remove unused EditorFrameState type
* [lens] Initial state for IndexPatternDatasource (#36052)
* [lens] Add first tests to indexpattern data source
* Respond to review comments
* Fix type definitions
* [lens] Editor frame initializes datasources and visualizations (#36060)
* [lens] Editor frame initializes datasources and visualizations
* Respond to review comments
* Fix build issues
* Fix state management issue
* [lens][draft] Lens/drag drop (#36268)
Add basic drag / drop component to Lens
* remove local package (#36456)
* [lens] Native renderer (#36165)
* Add nativerenderer component
* Use native renderer in app and editor frame
* [Lens] No explicit any (#36515)
* [Lens] Implement basic editor frame state handling (#36443)
* [lens] Load index patterns and render in data panel (#36463)
* [lens] Editor frame initializes datasources and visualizations
* Respond to review comments
* Fix build issues
* remove local package
* [lens] Load index patterns into data source
* Redo types for Index Pattern Datasource
* Fix one more type
* Respond to review comments
* [draft] Lens/line chart renderer (#36827)
Expression logic for the Lens xy chart.
* [lens] Index pattern data panel (initial) (#37015)
* [lens] Index pattern switcher
* Respond to review comments
* [Lens] Editor state 2 (#36513)
* [lens] Dimension panel that generates columns (#37117)
* [lens] Dimension panel that generates columns
* Update from review comments
* [lens] Generate esdocs queries from index pattern (#37361)
* [lens] Generate esdocs queries from index pattern
* Remove unused code
* Update yarn.lock from yarn kbn bootstrap
* [Lens] Add basic Lens xy chart suggestions (#37030)
Basic xy chart suggestions
* [Lens] Expression rendering (#37648)
* [Lens] Expression handling (#37876)
* [Lens] Lens/xy config panel (#37391)
Basic xy chart configuration panel
* [Lens] Xy expression building (#37967)
* [Lens] Initialize visualization with datasource api (#38142)
* [lens] Dimension panel lets users select operations and fields individually (#37573)
* [lens] Dimension panel lets users select operations and fields individually
* Split files and add tests
* Fix dimension labeling and add clear button
* Support more aggregations, aggregation nesting, rollups, and clearing
* Fix esaggs expression
* Increase top-level test coverage of dimension panel
* Update from review comments
* [Lens] Rename columns (#38278)
* [Lens] Lens/index pattern drag drop (#37711)
* Basic xy chart suggestions
* Re-apply XY config panel after force merge
* Initial integration of lens drag and drop
* Tweak naming, remove irellevant comment
* Tweaks per Wylie's feedback
* Add xy chart internationalization
Tweak types per Joe's feedback
* Update xy chart i18n implementation
* Fix i18n id
* Add drop tests to the lens index pattern
* improve tests
* [lens] Only allow aggregated dimensions (#38820)
* [lens] Only allow aggregated dimensions
* [lens] Index pattern suggest on drop
* Fully remove value
* Revert "[lens] Index pattern suggest on drop"
This reverts commit 604c6ed68ca394441ddafa662bdfc5f421de300c.
* Fix type errors
* [lens] Suggest on drop (#38848)
* [lens] Index pattern suggest on drop
* Add test for suggestion without date field
* fix merge
* [Lens] Parameter configurations and new dimension config flow (#38863)
* fix eslint failure
* [lens] Fix build by updating saved objects and i18n (#39391)
* [lens] Update location of saved objects code
* Update internatationalization
* Remove added file
* Lens basic metric visualization
* [lens] Fix arguments to esaggs using booleans (#39462)
* [lens] Datatable visualization plugin (#39390)
* [lens] Datatable visualization plugin
* Fix merge issues and add tests
* Update from review
* Fix file locations
* Fix merge issues, localize expression help text
* Add auto-scaling to the lens metric visualization
* Fix unit tests broken by autoscale
* Move autoscale to the new Lens folder
* [lens] Use first suggestion when switching visualizations (#39377)
* [lens] Label each Y axis with its operation label (#39461)
* [lens] Label each Y axis with its operation label
* Remove comment
* Add link to chart issue
* [Lens] Suggestion preview rendering (#39576)
* [Lens] Popover configs (#39565)
* [Lens] Basic layouting (#39587)
* remove datasource public API in suggestions (#39772)
* [Lens] Basic save / load (#39257)
Add basic routing, save, and load to Lens
* [lens] Fix lint error
* [lens] Use node scripts/eslint.js --fix to fix errors
* [lens] Include link to lens from Visualize (#40542)
* [lens] Support stacking in xy visualization (#40546)
* [lens] Support stacking in xy visualization
* Use chart type switcher for stacked and horizontal xy charts
* Clean up remaining isStacked code
* Fix type error
* [Lens] Add xy split series support (#39726)
* Add split series to lens xy chart
* [lens] Lens Filter Ratio (#40196)
* WIP filter ratio
* Fix test issues
* Pass dependencies through plugin like new platform
* Pass props into filter ratio popover editor
* Provide mocks to filter_ratio popover test
* Add another test
* Clean up to prepare for review
* Clean up unnecessary changes
* Respond to review comments
* Fix tests
* [Lens] Terms order direction (#39884)
* fix types
* [Lens] Data panel styling and optimizations (#40787)
Style the data panel (mostly Joe Reuter's doing). Optimize a bunch of the Lens stack.
* Add metric preview icon
* Fix metric vis tests
* Fix metric plugin imports
* Use the operation label as the metric title
* [Lens] Optimize dimension panel flow (#41114)
* [Lens] re-introduce no-explicit-any (#41454)
* [Lens] No results marker (#41450)
* [lens] Support layers for visualizing results of multiple queries (#41290)
* [lens] WIP add support for layers
* [lens] WIP switch to nested tables
* Get basic layering to work
* Load multiple tables and render in one chart
* Fix priority ordering
* Reduce quantity of linting errors
* Ensure that new xy layer state has a split column
* Make the "add" y / split the trailing accessor
* Various fixes for datasource public API and implementation
* Unify datasource deletion and accessor removal
* Fix broken scss
* Fix xy visualization TypeScript errors?
* Build basic suggestions
* Restore save/load and fix typescript bugs
* simplify init routine
* fix save tests
* fix persistence tests
* fix state management tests
* Ensure the data table is aligned to the top
* Add layer support to Lens datatable
* Give xy chart a default layer initially
* Allow deletion of layers in xy charts
* xy: Make split accessor singular
Remove commented code blocks
* Change expression type for lens_merge_tables
* Fix XY chart rendering expression
* Fix type errors relating to `layerId` in table suggestions
* Pass around tables for suggestions with associated layerIds
* fix tests in workspace panel
* fix editor_frame tests
* Fix xy tests, skip inapplicable tests
that will be implemented in a separate PR
* add some tests for multiple datasources and layers
* Suggest that split series comes before X axis in XY chart
* Get datatable suggestion working
* Adjust how xy axis labels are computed
* Datasource suggestions should handle layers and have tests
* Fix linting in XY chart and remove commented code
* Update snapshots from earlier change
* Fix linting errors
* More cleanup
* Remove commented code
* Test the multi-column editor
* XY Visualization does not need to track datasourceId
* Fix various comments
* Remove unused xy prop
Add datasource header to datatable config
* Use operation labels for XY chart
* Adding and removing layers is reflected in the datasource
* rewrote datasource state init
* clean up editor_frame frame api implementation
* clean up editor frame
* [Lens] Embeddable (#41361)
* [lens] Move XY chart config into popover and fix layering (#41927)
* [lens] Move XY chart config into popover and fix layering
* Fix tests
* Update style
* Change wrapping of layer settings popover
* [Lens] Fix bugs in date_histogram and filter ratio (#42046)
* [Lens] Performance improvements (#41784)
* fix type error
* switch default size of terms operation to 3 (#42334)
* [lens] Improve suggestions for split series (#42052)
* [lens] Add chart switcher (#42093)
* solve merge conflicts
* fix test case
* [Lens] Allow only current visualization on field drop in workspace (#42344)
* [Lens] Remove indexpattern id on column (#42429)
* [lens] Implement app-level filtering and time picker (#42031)
* [lens] Implement app-level filtering and time picker
* More integration with filter bar
* Clean up test code and type errors
* Add frame level tests for syncing with app
* Add test coverage for app logic
* Simplify state management from app down
* Fix import errors
* Clarify whether properties are ids or titles for index pattern
* pass new saved object by ref
* add dirty state checking
* Fix tests
* [Lens] Add some tests around document handling in dimension panel (#42670)
* [Lens] Terms operation boolean support (#42817)
* [lens] Minor UX/UI improvements in Lens (#42852)
* Make dimension popover toggle when clicking button
* Without suggestions hide suggestion panel
* Add missing translations (#42921)
* [Lens] Config panel design (#42980)
* Fix up design of config panel
Does not include config popover
* Add metric suggestions, fix tests
* Remove a couple of non-null assertions (#43013)
* Remove a couple of non-null assertions
* Remove orphaned import
* [Lens] Switch indexpattern manually (#42599)
* [Lens] Update frame to put suggestions at the bottom (#42997)
* Back out suggestion changes, in lieu
of Joe's work
* fix type errors
* switch indexpattern on layer if there is only a single empty one (#43079)
* [Lens] Suggest reduced versions of current data table (#42537)
* [Lens] Field formatter support (#38874)
* Fix bugs
* Fix metric autoscale logic
* Register metric as an embeddable
* Fix metric autoscale flicker
* Render mini metric in suggestions panel
* Cache the metric filterOperations function
* fix auto scaling edge cases
* [Lens] Add bucket nesting editor to indexpattern (#42869)
* Modify auto-scale to handle resize events
* use format hints in metric vis
* start cleaning up suggestions
* [Lens] Remove unnecessary fields and indexing from mappings (#43285)
* Tweak metric to only scale down so far, and
scale both the number and the label.
* Fix lens metric tests
* [Lens] Xy scale type (#42142)
* start adding more suggestions
* remove unused imports
* work on suggestions
* work more on suggestions
* work more on suggestions
* work more on suggestions
* [lens] Allow updater function to be used for updating state (#43373)
* [Lens] Lens metric visualization (#39364)
* clean up tests and add new ones
* remove isMetric
* area as default on time dimension
* fix bug in area chart for time
* Fix axis rotation (#43792)
* remove title form layer
* [Lens] Auto date histogram (#43775)
* Add auto date histogram
* Improve documentation and cleanup
* Add tests
* Change test name
* handle state in app
* fix isMetric usages
* fix integration tests
* fix type errors
* fix date handling on submit
* add new suggestion types
* fix test
* do not suggest single tables
* remove unused import
* [Lens] Fix query bar integration (#43865)
* switch order of appending new string column
* resolve merge conflicts
* [Lens] Clean up operations code (#43784)
* fix merge conflicts
* poc implementation
* highlight currently active suggestion and provide button to submit current choice
* [Lens] Functional tests (#44279)
Foundational layer for lens functional tests. Lens-specific page objects are not in this PR.
* [Lens] Add Lens visualizations to Visualize list (#43398)
* [Lens] Suggestion improvements (#43688)
* fix bugs
* [lens] Calculate existence of fields in datasource (#44422)
* [lens] Calculate existence of fields in datasource
* Fix route registration
* Add page object and use existence in functional test
* Simplify layout of filters for index pattern
* Respond to review feedback
* Update class names
* Use new URL constant
* Fix usage of base path
* Fix lint errors
* [Lens ] Preview metric (#43755)
* format filter ratio as percentage (#44625)
* [Lens] Remove datasource suggestion id (#44495)
* [Lens] Make breadcrumbs look and feel like Visualize (#44258)
* [lens] Fix breakage from app-arch movements (#44720)
* Design cleanup
* PR review comments
* fix tests
* small cleanup
* remove unused import
* [lens] Fix type error in test from merge
* [lens] Fix registration of embeddable (#45171)
* keep references stable if table is just extended and add tests
* changed label for stack/unstack
* fix test
* [Lens] Functional tests (#44814)
Basic functional tests for Lens, by no means comprehensive. This is more of a smokescreen test of some normal use cases.
* [lens] Add Lens to CODEOWNERS (#45296)
* [lens] Fix visualization alias registration
* [lens] Fix usage of EUI after typescript upgrade (#45404)
* [lens] Fix usage of EUI after typescript upgrade
* Use local fix instead of workaround
* fix bug and address reviews
* Fix frame tests
2019-09-19 00:28:26 +02:00
|
|
|
preferredSeriesType: 'bar',
|
2020-07-03 16:15:06 +02:00
|
|
|
fittingFunction: 'None',
|
2020-09-16 10:30:19 +02:00
|
|
|
axisTitlesVisibilitySettings: { x: true, yLeft: true, yRight: true },
|
|
|
|
gridlinesVisibilitySettings: { x: true, yLeft: true, yRight: true },
|
|
|
|
tickLabelsVisibilitySettings: { x: true, yLeft: false, yRight: false },
|
[Lens] Transient suggestions (#44234)
* [lens] Initial Commit (#35627)
* [visualization editor] Initial Commit
* [lens] Add more complete initial state
* [lens] Fix type issues
* [lens] Remove feature control
* [lens] Bring back feature control and add tests
* [lens] Update plugin structure and naming per comments
* replace any usage by safe casting
* [lens] Respond to review comments
* [lens] Remove unused EditorFrameState type
* [lens] Initial state for IndexPatternDatasource (#36052)
* [lens] Add first tests to indexpattern data source
* Respond to review comments
* Fix type definitions
* [lens] Editor frame initializes datasources and visualizations (#36060)
* [lens] Editor frame initializes datasources and visualizations
* Respond to review comments
* Fix build issues
* Fix state management issue
* [lens][draft] Lens/drag drop (#36268)
Add basic drag / drop component to Lens
* remove local package (#36456)
* [lens] Native renderer (#36165)
* Add nativerenderer component
* Use native renderer in app and editor frame
* [Lens] No explicit any (#36515)
* [Lens] Implement basic editor frame state handling (#36443)
* [lens] Load index patterns and render in data panel (#36463)
* [lens] Editor frame initializes datasources and visualizations
* Respond to review comments
* Fix build issues
* remove local package
* [lens] Load index patterns into data source
* Redo types for Index Pattern Datasource
* Fix one more type
* Respond to review comments
* [draft] Lens/line chart renderer (#36827)
Expression logic for the Lens xy chart.
* [lens] Index pattern data panel (initial) (#37015)
* [lens] Index pattern switcher
* Respond to review comments
* [Lens] Editor state 2 (#36513)
* [lens] Dimension panel that generates columns (#37117)
* [lens] Dimension panel that generates columns
* Update from review comments
* [lens] Generate esdocs queries from index pattern (#37361)
* [lens] Generate esdocs queries from index pattern
* Remove unused code
* Update yarn.lock from yarn kbn bootstrap
* [Lens] Add basic Lens xy chart suggestions (#37030)
Basic xy chart suggestions
* [Lens] Expression rendering (#37648)
* [Lens] Expression handling (#37876)
* [Lens] Lens/xy config panel (#37391)
Basic xy chart configuration panel
* [Lens] Xy expression building (#37967)
* [Lens] Initialize visualization with datasource api (#38142)
* [lens] Dimension panel lets users select operations and fields individually (#37573)
* [lens] Dimension panel lets users select operations and fields individually
* Split files and add tests
* Fix dimension labeling and add clear button
* Support more aggregations, aggregation nesting, rollups, and clearing
* Fix esaggs expression
* Increase top-level test coverage of dimension panel
* Update from review comments
* [Lens] Rename columns (#38278)
* [Lens] Lens/index pattern drag drop (#37711)
* Basic xy chart suggestions
* Re-apply XY config panel after force merge
* Initial integration of lens drag and drop
* Tweak naming, remove irellevant comment
* Tweaks per Wylie's feedback
* Add xy chart internationalization
Tweak types per Joe's feedback
* Update xy chart i18n implementation
* Fix i18n id
* Add drop tests to the lens index pattern
* improve tests
* [lens] Only allow aggregated dimensions (#38820)
* [lens] Only allow aggregated dimensions
* [lens] Index pattern suggest on drop
* Fully remove value
* Revert "[lens] Index pattern suggest on drop"
This reverts commit 604c6ed68ca394441ddafa662bdfc5f421de300c.
* Fix type errors
* [lens] Suggest on drop (#38848)
* [lens] Index pattern suggest on drop
* Add test for suggestion without date field
* fix merge
* [Lens] Parameter configurations and new dimension config flow (#38863)
* fix eslint failure
* [lens] Fix build by updating saved objects and i18n (#39391)
* [lens] Update location of saved objects code
* Update internatationalization
* Remove added file
* Lens basic metric visualization
* [lens] Fix arguments to esaggs using booleans (#39462)
* [lens] Datatable visualization plugin (#39390)
* [lens] Datatable visualization plugin
* Fix merge issues and add tests
* Update from review
* Fix file locations
* Fix merge issues, localize expression help text
* Add auto-scaling to the lens metric visualization
* Fix unit tests broken by autoscale
* Move autoscale to the new Lens folder
* [lens] Use first suggestion when switching visualizations (#39377)
* [lens] Label each Y axis with its operation label (#39461)
* [lens] Label each Y axis with its operation label
* Remove comment
* Add link to chart issue
* [Lens] Suggestion preview rendering (#39576)
* [Lens] Popover configs (#39565)
* [Lens] Basic layouting (#39587)
* remove datasource public API in suggestions (#39772)
* [Lens] Basic save / load (#39257)
Add basic routing, save, and load to Lens
* [lens] Fix lint error
* [lens] Use node scripts/eslint.js --fix to fix errors
* [lens] Include link to lens from Visualize (#40542)
* [lens] Support stacking in xy visualization (#40546)
* [lens] Support stacking in xy visualization
* Use chart type switcher for stacked and horizontal xy charts
* Clean up remaining isStacked code
* Fix type error
* [Lens] Add xy split series support (#39726)
* Add split series to lens xy chart
* [lens] Lens Filter Ratio (#40196)
* WIP filter ratio
* Fix test issues
* Pass dependencies through plugin like new platform
* Pass props into filter ratio popover editor
* Provide mocks to filter_ratio popover test
* Add another test
* Clean up to prepare for review
* Clean up unnecessary changes
* Respond to review comments
* Fix tests
* [Lens] Terms order direction (#39884)
* fix types
* [Lens] Data panel styling and optimizations (#40787)
Style the data panel (mostly Joe Reuter's doing). Optimize a bunch of the Lens stack.
* Add metric preview icon
* Fix metric vis tests
* Fix metric plugin imports
* Use the operation label as the metric title
* [Lens] Optimize dimension panel flow (#41114)
* [Lens] re-introduce no-explicit-any (#41454)
* [Lens] No results marker (#41450)
* [lens] Support layers for visualizing results of multiple queries (#41290)
* [lens] WIP add support for layers
* [lens] WIP switch to nested tables
* Get basic layering to work
* Load multiple tables and render in one chart
* Fix priority ordering
* Reduce quantity of linting errors
* Ensure that new xy layer state has a split column
* Make the "add" y / split the trailing accessor
* Various fixes for datasource public API and implementation
* Unify datasource deletion and accessor removal
* Fix broken scss
* Fix xy visualization TypeScript errors?
* Build basic suggestions
* Restore save/load and fix typescript bugs
* simplify init routine
* fix save tests
* fix persistence tests
* fix state management tests
* Ensure the data table is aligned to the top
* Add layer support to Lens datatable
* Give xy chart a default layer initially
* Allow deletion of layers in xy charts
* xy: Make split accessor singular
Remove commented code blocks
* Change expression type for lens_merge_tables
* Fix XY chart rendering expression
* Fix type errors relating to `layerId` in table suggestions
* Pass around tables for suggestions with associated layerIds
* fix tests in workspace panel
* fix editor_frame tests
* Fix xy tests, skip inapplicable tests
that will be implemented in a separate PR
* add some tests for multiple datasources and layers
* Suggest that split series comes before X axis in XY chart
* Get datatable suggestion working
* Adjust how xy axis labels are computed
* Datasource suggestions should handle layers and have tests
* Fix linting in XY chart and remove commented code
* Update snapshots from earlier change
* Fix linting errors
* More cleanup
* Remove commented code
* Test the multi-column editor
* XY Visualization does not need to track datasourceId
* Fix various comments
* Remove unused xy prop
Add datasource header to datatable config
* Use operation labels for XY chart
* Adding and removing layers is reflected in the datasource
* rewrote datasource state init
* clean up editor_frame frame api implementation
* clean up editor frame
* [Lens] Embeddable (#41361)
* [lens] Move XY chart config into popover and fix layering (#41927)
* [lens] Move XY chart config into popover and fix layering
* Fix tests
* Update style
* Change wrapping of layer settings popover
* [Lens] Fix bugs in date_histogram and filter ratio (#42046)
* [Lens] Performance improvements (#41784)
* fix type error
* switch default size of terms operation to 3 (#42334)
* [lens] Improve suggestions for split series (#42052)
* [lens] Add chart switcher (#42093)
* solve merge conflicts
* fix test case
* [Lens] Allow only current visualization on field drop in workspace (#42344)
* [Lens] Remove indexpattern id on column (#42429)
* [lens] Implement app-level filtering and time picker (#42031)
* [lens] Implement app-level filtering and time picker
* More integration with filter bar
* Clean up test code and type errors
* Add frame level tests for syncing with app
* Add test coverage for app logic
* Simplify state management from app down
* Fix import errors
* Clarify whether properties are ids or titles for index pattern
* pass new saved object by ref
* add dirty state checking
* Fix tests
* [Lens] Add some tests around document handling in dimension panel (#42670)
* [Lens] Terms operation boolean support (#42817)
* [lens] Minor UX/UI improvements in Lens (#42852)
* Make dimension popover toggle when clicking button
* Without suggestions hide suggestion panel
* Add missing translations (#42921)
* [Lens] Config panel design (#42980)
* Fix up design of config panel
Does not include config popover
* Add metric suggestions, fix tests
* Remove a couple of non-null assertions (#43013)
* Remove a couple of non-null assertions
* Remove orphaned import
* [Lens] Switch indexpattern manually (#42599)
* [Lens] Update frame to put suggestions at the bottom (#42997)
* Back out suggestion changes, in lieu
of Joe's work
* fix type errors
* switch indexpattern on layer if there is only a single empty one (#43079)
* [Lens] Suggest reduced versions of current data table (#42537)
* [Lens] Field formatter support (#38874)
* Fix bugs
* Fix metric autoscale logic
* Register metric as an embeddable
* Fix metric autoscale flicker
* Render mini metric in suggestions panel
* Cache the metric filterOperations function
* fix auto scaling edge cases
* [Lens] Add bucket nesting editor to indexpattern (#42869)
* Modify auto-scale to handle resize events
* use format hints in metric vis
* start cleaning up suggestions
* [Lens] Remove unnecessary fields and indexing from mappings (#43285)
* Tweak metric to only scale down so far, and
scale both the number and the label.
* Fix lens metric tests
* [Lens] Xy scale type (#42142)
* start adding more suggestions
* remove unused imports
* work on suggestions
* work more on suggestions
* work more on suggestions
* work more on suggestions
* [lens] Allow updater function to be used for updating state (#43373)
* [Lens] Lens metric visualization (#39364)
* clean up tests and add new ones
* remove isMetric
* area as default on time dimension
* fix bug in area chart for time
* Fix axis rotation (#43792)
* remove title form layer
* [Lens] Auto date histogram (#43775)
* Add auto date histogram
* Improve documentation and cleanup
* Add tests
* Change test name
* handle state in app
* fix isMetric usages
* fix integration tests
* fix type errors
* fix date handling on submit
* add new suggestion types
* fix test
* do not suggest single tables
* remove unused import
* [Lens] Fix query bar integration (#43865)
* switch order of appending new string column
* resolve merge conflicts
* [Lens] Clean up operations code (#43784)
* fix merge conflicts
* poc implementation
* highlight currently active suggestion and provide button to submit current choice
* [Lens] Functional tests (#44279)
Foundational layer for lens functional tests. Lens-specific page objects are not in this PR.
* [Lens] Add Lens visualizations to Visualize list (#43398)
* [Lens] Suggestion improvements (#43688)
* fix bugs
* [lens] Calculate existence of fields in datasource (#44422)
* [lens] Calculate existence of fields in datasource
* Fix route registration
* Add page object and use existence in functional test
* Simplify layout of filters for index pattern
* Respond to review feedback
* Update class names
* Use new URL constant
* Fix usage of base path
* Fix lint errors
* [Lens ] Preview metric (#43755)
* format filter ratio as percentage (#44625)
* [Lens] Remove datasource suggestion id (#44495)
* [Lens] Make breadcrumbs look and feel like Visualize (#44258)
* [lens] Fix breakage from app-arch movements (#44720)
* Design cleanup
* PR review comments
* fix tests
* small cleanup
* remove unused import
* [lens] Fix type error in test from merge
* [lens] Fix registration of embeddable (#45171)
* keep references stable if table is just extended and add tests
* changed label for stack/unstack
* fix test
* [Lens] Functional tests (#44814)
Basic functional tests for Lens, by no means comprehensive. This is more of a smokescreen test of some normal use cases.
* [lens] Add Lens to CODEOWNERS (#45296)
* [lens] Fix visualization alias registration
* [lens] Fix usage of EUI after typescript upgrade (#45404)
* [lens] Fix usage of EUI after typescript upgrade
* Use local fix instead of workaround
* fix bug and address reviews
* Fix frame tests
2019-09-19 00:28:26 +02:00
|
|
|
layers: [
|
|
|
|
{
|
|
|
|
accessors: ['price', 'quantity'],
|
|
|
|
layerId: 'first',
|
|
|
|
seriesType: 'bar',
|
|
|
|
splitAccessor: 'dummyCol',
|
|
|
|
xAccessor: 'product',
|
|
|
|
},
|
|
|
|
],
|
|
|
|
};
|
|
|
|
const [suggestion, ...rest] = getSuggestions({
|
|
|
|
table: {
|
|
|
|
isMultiRow: true,
|
|
|
|
columns: [numCol('price'), numCol('quantity'), strCol('product'), strCol('category')],
|
|
|
|
layerId: 'first',
|
|
|
|
changeType: 'extended',
|
|
|
|
},
|
|
|
|
state: currentState,
|
2020-07-17 20:02:52 +02:00
|
|
|
keptLayerIds: ['first'],
|
[Lens] Transient suggestions (#44234)
* [lens] Initial Commit (#35627)
* [visualization editor] Initial Commit
* [lens] Add more complete initial state
* [lens] Fix type issues
* [lens] Remove feature control
* [lens] Bring back feature control and add tests
* [lens] Update plugin structure and naming per comments
* replace any usage by safe casting
* [lens] Respond to review comments
* [lens] Remove unused EditorFrameState type
* [lens] Initial state for IndexPatternDatasource (#36052)
* [lens] Add first tests to indexpattern data source
* Respond to review comments
* Fix type definitions
* [lens] Editor frame initializes datasources and visualizations (#36060)
* [lens] Editor frame initializes datasources and visualizations
* Respond to review comments
* Fix build issues
* Fix state management issue
* [lens][draft] Lens/drag drop (#36268)
Add basic drag / drop component to Lens
* remove local package (#36456)
* [lens] Native renderer (#36165)
* Add nativerenderer component
* Use native renderer in app and editor frame
* [Lens] No explicit any (#36515)
* [Lens] Implement basic editor frame state handling (#36443)
* [lens] Load index patterns and render in data panel (#36463)
* [lens] Editor frame initializes datasources and visualizations
* Respond to review comments
* Fix build issues
* remove local package
* [lens] Load index patterns into data source
* Redo types for Index Pattern Datasource
* Fix one more type
* Respond to review comments
* [draft] Lens/line chart renderer (#36827)
Expression logic for the Lens xy chart.
* [lens] Index pattern data panel (initial) (#37015)
* [lens] Index pattern switcher
* Respond to review comments
* [Lens] Editor state 2 (#36513)
* [lens] Dimension panel that generates columns (#37117)
* [lens] Dimension panel that generates columns
* Update from review comments
* [lens] Generate esdocs queries from index pattern (#37361)
* [lens] Generate esdocs queries from index pattern
* Remove unused code
* Update yarn.lock from yarn kbn bootstrap
* [Lens] Add basic Lens xy chart suggestions (#37030)
Basic xy chart suggestions
* [Lens] Expression rendering (#37648)
* [Lens] Expression handling (#37876)
* [Lens] Lens/xy config panel (#37391)
Basic xy chart configuration panel
* [Lens] Xy expression building (#37967)
* [Lens] Initialize visualization with datasource api (#38142)
* [lens] Dimension panel lets users select operations and fields individually (#37573)
* [lens] Dimension panel lets users select operations and fields individually
* Split files and add tests
* Fix dimension labeling and add clear button
* Support more aggregations, aggregation nesting, rollups, and clearing
* Fix esaggs expression
* Increase top-level test coverage of dimension panel
* Update from review comments
* [Lens] Rename columns (#38278)
* [Lens] Lens/index pattern drag drop (#37711)
* Basic xy chart suggestions
* Re-apply XY config panel after force merge
* Initial integration of lens drag and drop
* Tweak naming, remove irellevant comment
* Tweaks per Wylie's feedback
* Add xy chart internationalization
Tweak types per Joe's feedback
* Update xy chart i18n implementation
* Fix i18n id
* Add drop tests to the lens index pattern
* improve tests
* [lens] Only allow aggregated dimensions (#38820)
* [lens] Only allow aggregated dimensions
* [lens] Index pattern suggest on drop
* Fully remove value
* Revert "[lens] Index pattern suggest on drop"
This reverts commit 604c6ed68ca394441ddafa662bdfc5f421de300c.
* Fix type errors
* [lens] Suggest on drop (#38848)
* [lens] Index pattern suggest on drop
* Add test for suggestion without date field
* fix merge
* [Lens] Parameter configurations and new dimension config flow (#38863)
* fix eslint failure
* [lens] Fix build by updating saved objects and i18n (#39391)
* [lens] Update location of saved objects code
* Update internatationalization
* Remove added file
* Lens basic metric visualization
* [lens] Fix arguments to esaggs using booleans (#39462)
* [lens] Datatable visualization plugin (#39390)
* [lens] Datatable visualization plugin
* Fix merge issues and add tests
* Update from review
* Fix file locations
* Fix merge issues, localize expression help text
* Add auto-scaling to the lens metric visualization
* Fix unit tests broken by autoscale
* Move autoscale to the new Lens folder
* [lens] Use first suggestion when switching visualizations (#39377)
* [lens] Label each Y axis with its operation label (#39461)
* [lens] Label each Y axis with its operation label
* Remove comment
* Add link to chart issue
* [Lens] Suggestion preview rendering (#39576)
* [Lens] Popover configs (#39565)
* [Lens] Basic layouting (#39587)
* remove datasource public API in suggestions (#39772)
* [Lens] Basic save / load (#39257)
Add basic routing, save, and load to Lens
* [lens] Fix lint error
* [lens] Use node scripts/eslint.js --fix to fix errors
* [lens] Include link to lens from Visualize (#40542)
* [lens] Support stacking in xy visualization (#40546)
* [lens] Support stacking in xy visualization
* Use chart type switcher for stacked and horizontal xy charts
* Clean up remaining isStacked code
* Fix type error
* [Lens] Add xy split series support (#39726)
* Add split series to lens xy chart
* [lens] Lens Filter Ratio (#40196)
* WIP filter ratio
* Fix test issues
* Pass dependencies through plugin like new platform
* Pass props into filter ratio popover editor
* Provide mocks to filter_ratio popover test
* Add another test
* Clean up to prepare for review
* Clean up unnecessary changes
* Respond to review comments
* Fix tests
* [Lens] Terms order direction (#39884)
* fix types
* [Lens] Data panel styling and optimizations (#40787)
Style the data panel (mostly Joe Reuter's doing). Optimize a bunch of the Lens stack.
* Add metric preview icon
* Fix metric vis tests
* Fix metric plugin imports
* Use the operation label as the metric title
* [Lens] Optimize dimension panel flow (#41114)
* [Lens] re-introduce no-explicit-any (#41454)
* [Lens] No results marker (#41450)
* [lens] Support layers for visualizing results of multiple queries (#41290)
* [lens] WIP add support for layers
* [lens] WIP switch to nested tables
* Get basic layering to work
* Load multiple tables and render in one chart
* Fix priority ordering
* Reduce quantity of linting errors
* Ensure that new xy layer state has a split column
* Make the "add" y / split the trailing accessor
* Various fixes for datasource public API and implementation
* Unify datasource deletion and accessor removal
* Fix broken scss
* Fix xy visualization TypeScript errors?
* Build basic suggestions
* Restore save/load and fix typescript bugs
* simplify init routine
* fix save tests
* fix persistence tests
* fix state management tests
* Ensure the data table is aligned to the top
* Add layer support to Lens datatable
* Give xy chart a default layer initially
* Allow deletion of layers in xy charts
* xy: Make split accessor singular
Remove commented code blocks
* Change expression type for lens_merge_tables
* Fix XY chart rendering expression
* Fix type errors relating to `layerId` in table suggestions
* Pass around tables for suggestions with associated layerIds
* fix tests in workspace panel
* fix editor_frame tests
* Fix xy tests, skip inapplicable tests
that will be implemented in a separate PR
* add some tests for multiple datasources and layers
* Suggest that split series comes before X axis in XY chart
* Get datatable suggestion working
* Adjust how xy axis labels are computed
* Datasource suggestions should handle layers and have tests
* Fix linting in XY chart and remove commented code
* Update snapshots from earlier change
* Fix linting errors
* More cleanup
* Remove commented code
* Test the multi-column editor
* XY Visualization does not need to track datasourceId
* Fix various comments
* Remove unused xy prop
Add datasource header to datatable config
* Use operation labels for XY chart
* Adding and removing layers is reflected in the datasource
* rewrote datasource state init
* clean up editor_frame frame api implementation
* clean up editor frame
* [Lens] Embeddable (#41361)
* [lens] Move XY chart config into popover and fix layering (#41927)
* [lens] Move XY chart config into popover and fix layering
* Fix tests
* Update style
* Change wrapping of layer settings popover
* [Lens] Fix bugs in date_histogram and filter ratio (#42046)
* [Lens] Performance improvements (#41784)
* fix type error
* switch default size of terms operation to 3 (#42334)
* [lens] Improve suggestions for split series (#42052)
* [lens] Add chart switcher (#42093)
* solve merge conflicts
* fix test case
* [Lens] Allow only current visualization on field drop in workspace (#42344)
* [Lens] Remove indexpattern id on column (#42429)
* [lens] Implement app-level filtering and time picker (#42031)
* [lens] Implement app-level filtering and time picker
* More integration with filter bar
* Clean up test code and type errors
* Add frame level tests for syncing with app
* Add test coverage for app logic
* Simplify state management from app down
* Fix import errors
* Clarify whether properties are ids or titles for index pattern
* pass new saved object by ref
* add dirty state checking
* Fix tests
* [Lens] Add some tests around document handling in dimension panel (#42670)
* [Lens] Terms operation boolean support (#42817)
* [lens] Minor UX/UI improvements in Lens (#42852)
* Make dimension popover toggle when clicking button
* Without suggestions hide suggestion panel
* Add missing translations (#42921)
* [Lens] Config panel design (#42980)
* Fix up design of config panel
Does not include config popover
* Add metric suggestions, fix tests
* Remove a couple of non-null assertions (#43013)
* Remove a couple of non-null assertions
* Remove orphaned import
* [Lens] Switch indexpattern manually (#42599)
* [Lens] Update frame to put suggestions at the bottom (#42997)
* Back out suggestion changes, in lieu
of Joe's work
* fix type errors
* switch indexpattern on layer if there is only a single empty one (#43079)
* [Lens] Suggest reduced versions of current data table (#42537)
* [Lens] Field formatter support (#38874)
* Fix bugs
* Fix metric autoscale logic
* Register metric as an embeddable
* Fix metric autoscale flicker
* Render mini metric in suggestions panel
* Cache the metric filterOperations function
* fix auto scaling edge cases
* [Lens] Add bucket nesting editor to indexpattern (#42869)
* Modify auto-scale to handle resize events
* use format hints in metric vis
* start cleaning up suggestions
* [Lens] Remove unnecessary fields and indexing from mappings (#43285)
* Tweak metric to only scale down so far, and
scale both the number and the label.
* Fix lens metric tests
* [Lens] Xy scale type (#42142)
* start adding more suggestions
* remove unused imports
* work on suggestions
* work more on suggestions
* work more on suggestions
* work more on suggestions
* [lens] Allow updater function to be used for updating state (#43373)
* [Lens] Lens metric visualization (#39364)
* clean up tests and add new ones
* remove isMetric
* area as default on time dimension
* fix bug in area chart for time
* Fix axis rotation (#43792)
* remove title form layer
* [Lens] Auto date histogram (#43775)
* Add auto date histogram
* Improve documentation and cleanup
* Add tests
* Change test name
* handle state in app
* fix isMetric usages
* fix integration tests
* fix type errors
* fix date handling on submit
* add new suggestion types
* fix test
* do not suggest single tables
* remove unused import
* [Lens] Fix query bar integration (#43865)
* switch order of appending new string column
* resolve merge conflicts
* [Lens] Clean up operations code (#43784)
* fix merge conflicts
* poc implementation
* highlight currently active suggestion and provide button to submit current choice
* [Lens] Functional tests (#44279)
Foundational layer for lens functional tests. Lens-specific page objects are not in this PR.
* [Lens] Add Lens visualizations to Visualize list (#43398)
* [Lens] Suggestion improvements (#43688)
* fix bugs
* [lens] Calculate existence of fields in datasource (#44422)
* [lens] Calculate existence of fields in datasource
* Fix route registration
* Add page object and use existence in functional test
* Simplify layout of filters for index pattern
* Respond to review feedback
* Update class names
* Use new URL constant
* Fix usage of base path
* Fix lint errors
* [Lens ] Preview metric (#43755)
* format filter ratio as percentage (#44625)
* [Lens] Remove datasource suggestion id (#44495)
* [Lens] Make breadcrumbs look and feel like Visualize (#44258)
* [lens] Fix breakage from app-arch movements (#44720)
* Design cleanup
* PR review comments
* fix tests
* small cleanup
* remove unused import
* [lens] Fix type error in test from merge
* [lens] Fix registration of embeddable (#45171)
* keep references stable if table is just extended and add tests
* changed label for stack/unstack
* fix test
* [Lens] Functional tests (#44814)
Basic functional tests for Lens, by no means comprehensive. This is more of a smokescreen test of some normal use cases.
* [lens] Add Lens to CODEOWNERS (#45296)
* [lens] Fix visualization alias registration
* [lens] Fix usage of EUI after typescript upgrade (#45404)
* [lens] Fix usage of EUI after typescript upgrade
* Use local fix instead of workaround
* fix bug and address reviews
* Fix frame tests
2019-09-19 00:28:26 +02:00
|
|
|
});
|
|
|
|
|
|
|
|
expect(rest).toHaveLength(0);
|
|
|
|
expect(suggestion.state).toEqual({
|
|
|
|
...currentState,
|
|
|
|
layers: [
|
|
|
|
{
|
|
|
|
...currentState.layers[0],
|
|
|
|
xAccessor: 'product',
|
|
|
|
splitAccessor: 'category',
|
|
|
|
},
|
|
|
|
],
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|
2020-04-30 16:52:10 +02:00
|
|
|
test('changes column mappings when suggestion is reorder', () => {
|
|
|
|
const currentState: XYState = {
|
|
|
|
legend: { isVisible: true, position: 'bottom' },
|
2020-11-06 16:34:30 +01:00
|
|
|
valueLabels: 'hide',
|
2020-04-30 16:52:10 +02:00
|
|
|
preferredSeriesType: 'bar',
|
2020-07-03 16:15:06 +02:00
|
|
|
fittingFunction: 'None',
|
2020-09-16 10:30:19 +02:00
|
|
|
axisTitlesVisibilitySettings: { x: true, yLeft: true, yRight: true },
|
|
|
|
gridlinesVisibilitySettings: { x: true, yLeft: true, yRight: true },
|
|
|
|
tickLabelsVisibilitySettings: { x: true, yLeft: false, yRight: false },
|
2020-04-30 16:52:10 +02:00
|
|
|
layers: [
|
|
|
|
{
|
|
|
|
accessors: ['price'],
|
|
|
|
layerId: 'first',
|
|
|
|
seriesType: 'bar',
|
|
|
|
splitAccessor: 'category',
|
|
|
|
xAccessor: 'product',
|
|
|
|
},
|
|
|
|
],
|
|
|
|
};
|
|
|
|
const [suggestion, ...rest] = getSuggestions({
|
|
|
|
table: {
|
|
|
|
isMultiRow: true,
|
|
|
|
columns: [strCol('category'), strCol('product'), numCol('price')],
|
|
|
|
layerId: 'first',
|
|
|
|
changeType: 'reorder',
|
|
|
|
},
|
|
|
|
state: currentState,
|
2020-07-17 20:02:52 +02:00
|
|
|
keptLayerIds: ['first'],
|
2020-04-30 16:52:10 +02:00
|
|
|
});
|
|
|
|
|
|
|
|
expect(rest).toHaveLength(0);
|
|
|
|
expect(suggestion.state).toEqual({
|
|
|
|
...currentState,
|
|
|
|
layers: [
|
|
|
|
{
|
|
|
|
...currentState.layers[0],
|
|
|
|
xAccessor: 'category',
|
|
|
|
splitAccessor: 'product',
|
|
|
|
},
|
|
|
|
],
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|
2019-09-26 18:52:03 +02:00
|
|
|
test('overwrites column to dimension mappings if a date dimension is added', () => {
|
|
|
|
(generateId as jest.Mock).mockReturnValueOnce('dummyCol');
|
|
|
|
const currentState: XYState = {
|
|
|
|
legend: { isVisible: true, position: 'bottom' },
|
2020-11-06 16:34:30 +01:00
|
|
|
valueLabels: 'hide',
|
2019-09-26 18:52:03 +02:00
|
|
|
preferredSeriesType: 'bar',
|
2020-07-03 16:15:06 +02:00
|
|
|
fittingFunction: 'None',
|
2020-09-16 10:30:19 +02:00
|
|
|
axisTitlesVisibilitySettings: { x: true, yLeft: true, yRight: true },
|
|
|
|
gridlinesVisibilitySettings: { x: true, yLeft: true, yRight: true },
|
|
|
|
tickLabelsVisibilitySettings: { x: true, yLeft: false, yRight: false },
|
2019-09-26 18:52:03 +02:00
|
|
|
layers: [
|
|
|
|
{
|
|
|
|
accessors: ['price', 'quantity'],
|
|
|
|
layerId: 'first',
|
|
|
|
seriesType: 'bar',
|
|
|
|
splitAccessor: 'dummyCol',
|
|
|
|
xAccessor: 'product',
|
|
|
|
},
|
|
|
|
],
|
|
|
|
};
|
|
|
|
const [suggestion, ...rest] = getSuggestions({
|
|
|
|
table: {
|
|
|
|
isMultiRow: true,
|
|
|
|
columns: [numCol('price'), numCol('quantity'), strCol('product'), dateCol('timestamp')],
|
|
|
|
layerId: 'first',
|
|
|
|
changeType: 'extended',
|
|
|
|
},
|
|
|
|
state: currentState,
|
2020-07-17 20:02:52 +02:00
|
|
|
keptLayerIds: ['first'],
|
2019-09-26 18:52:03 +02:00
|
|
|
});
|
|
|
|
|
|
|
|
expect(rest).toHaveLength(0);
|
|
|
|
expect(suggestion.state).toEqual({
|
|
|
|
...currentState,
|
|
|
|
layers: [
|
|
|
|
{
|
|
|
|
...currentState.layers[0],
|
|
|
|
xAccessor: 'timestamp',
|
|
|
|
splitAccessor: 'product',
|
|
|
|
},
|
|
|
|
],
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|
2019-09-17 20:57:53 +02:00
|
|
|
test('handles two numeric values', () => {
|
|
|
|
(generateId as jest.Mock).mockReturnValueOnce('ddd');
|
|
|
|
const [suggestion] = getSuggestions({
|
|
|
|
table: {
|
|
|
|
isMultiRow: true,
|
|
|
|
columns: [numCol('quantity'), numCol('price')],
|
|
|
|
layerId: 'first',
|
|
|
|
changeType: 'unchanged',
|
|
|
|
},
|
2019-10-30 00:05:03 +01:00
|
|
|
keptLayerIds: [],
|
2019-09-17 20:57:53 +02:00
|
|
|
});
|
|
|
|
|
|
|
|
expect(suggestionSubset(suggestion)).toMatchInlineSnapshot(`
|
2020-03-17 14:57:52 +01:00
|
|
|
Array [
|
|
|
|
Object {
|
|
|
|
"seriesType": "bar_stacked",
|
|
|
|
"splitAccessor": undefined,
|
2020-11-24 09:56:56 +01:00
|
|
|
"x": undefined,
|
2020-03-17 14:57:52 +01:00
|
|
|
"y": Array [
|
2020-11-24 09:56:56 +01:00
|
|
|
"quantity",
|
2020-03-17 14:57:52 +01:00
|
|
|
"price",
|
|
|
|
],
|
|
|
|
},
|
|
|
|
]
|
|
|
|
`);
|
2019-09-17 20:57:53 +02:00
|
|
|
});
|
|
|
|
|
2019-09-24 22:05:47 +02:00
|
|
|
test('handles ip', () => {
|
|
|
|
(generateId as jest.Mock).mockReturnValueOnce('ddd');
|
2019-09-17 20:57:53 +02:00
|
|
|
const [suggestion] = getSuggestions({
|
|
|
|
table: {
|
|
|
|
isMultiRow: true,
|
|
|
|
columns: [
|
2019-09-24 22:05:47 +02:00
|
|
|
numCol('quantity'),
|
2019-09-17 20:57:53 +02:00
|
|
|
{
|
2019-09-24 22:05:47 +02:00
|
|
|
columnId: 'myip',
|
2019-09-17 20:57:53 +02:00
|
|
|
operation: {
|
2019-09-24 22:05:47 +02:00
|
|
|
dataType: 'ip',
|
|
|
|
label: 'Top 5 myip',
|
|
|
|
isBucketed: true,
|
|
|
|
scale: 'ordinal',
|
2019-09-17 20:57:53 +02:00
|
|
|
},
|
|
|
|
},
|
|
|
|
],
|
|
|
|
layerId: 'first',
|
|
|
|
changeType: 'unchanged',
|
|
|
|
},
|
2019-10-30 00:05:03 +01:00
|
|
|
keptLayerIds: [],
|
2019-09-17 20:57:53 +02:00
|
|
|
});
|
|
|
|
|
|
|
|
expect(suggestionSubset(suggestion)).toMatchInlineSnapshot(`
|
2020-03-17 14:57:52 +01:00
|
|
|
Array [
|
|
|
|
Object {
|
|
|
|
"seriesType": "bar_stacked",
|
|
|
|
"splitAccessor": undefined,
|
|
|
|
"x": "myip",
|
|
|
|
"y": Array [
|
|
|
|
"quantity",
|
|
|
|
],
|
|
|
|
},
|
|
|
|
]
|
|
|
|
`);
|
2019-09-17 20:57:53 +02:00
|
|
|
});
|
2019-09-24 22:05:47 +02:00
|
|
|
|
|
|
|
test('handles unbucketed suggestions', () => {
|
|
|
|
(generateId as jest.Mock).mockReturnValueOnce('eee');
|
|
|
|
const [suggestion] = getSuggestions({
|
|
|
|
table: {
|
|
|
|
isMultiRow: true,
|
|
|
|
columns: [
|
|
|
|
numCol('num votes'),
|
|
|
|
{
|
|
|
|
columnId: 'mybool',
|
|
|
|
operation: {
|
|
|
|
dataType: 'boolean',
|
|
|
|
isBucketed: false,
|
|
|
|
label: 'Yes / No',
|
|
|
|
},
|
|
|
|
},
|
|
|
|
],
|
|
|
|
layerId: 'first',
|
|
|
|
changeType: 'unchanged',
|
|
|
|
},
|
2019-10-30 00:05:03 +01:00
|
|
|
keptLayerIds: [],
|
2019-09-24 22:05:47 +02:00
|
|
|
});
|
|
|
|
|
|
|
|
expect(suggestionSubset(suggestion)).toMatchInlineSnapshot(`
|
2020-03-17 14:57:52 +01:00
|
|
|
Array [
|
|
|
|
Object {
|
|
|
|
"seriesType": "bar_stacked",
|
|
|
|
"splitAccessor": undefined,
|
|
|
|
"x": "mybool",
|
|
|
|
"y": Array [
|
|
|
|
"num votes",
|
|
|
|
],
|
|
|
|
},
|
|
|
|
]
|
|
|
|
`);
|
2019-09-24 22:05:47 +02:00
|
|
|
});
|
2019-09-17 20:57:53 +02:00
|
|
|
});
|