* Add failing tests
* Add fix by preventing uiState from being directly updated in visualization.
* Add test that would catch error caused by this PR in regards to filter agg
* Fix issue with uiState triggering dirty dashboard state by introducing temporary "sessionState" on a vis
* Click go after toggling the switch
* add more tests to ensure getRequestAggs functions as intented
* Go back to old zoom calculations. Update vis test data
I think because mapCollar is no longer saved in uiState, the save
recenters the data and we get slightly different data points from the
test data. As far as my eye can tell, everything is working as
intended.
* fixes and tests
- incorporate the new init function which fixes the bug where we lose
map bounds data on a fresh save
- add a test that would have caught that
- adjust tests due to bug where map bounds is changing slightly. File
another issue for that separately as it doesn’t actually affect the
users map experience.
* Fix tests
Tests relied on my original logic of defaulting to the saved zoom state
and not relying on uiState, so I went back to that logic. Also found
another bug where mapZoom of 0 was being considered invalid, but it is
actually a valid zoom level.
* Since leaflet upgrade 'path.leaflet-clickable' can't be used to retrieve circles anymore
* Avoid stale element reference
I suspect because the page is changing, you have to keep fetching the
element afresh. I don’t see this error on my local but saw it on
jenkins.
* remove spy select from PageObjects.visualize.getDataTableData
The function is used in the Data Table visualization where the spy pane
select doesn’t exist.
* Add missing aria-label to aggregation selection
* Make all tabs accessible
* Make add and delete buttons accessible
* Make annotation editor accessible
* Add color picker a11y label
* Make index patten component accessible
* Create htmlId generator
* Make series config accessible
* Make calculation aggregation accessible
* Make derivative agg accessible
* Make filter ratio agg accessible
* Make moving avg accessible
* Make percentile (ranks) aggs accessible
* Make serial diff agg accessible
* Make series agg accessible
* Make static agg accessible
* Make std aggs accessible
* Make option panels accessible
* Make all series headers accessible
* Make time series metrics options accessible
* Fix broken tests
* Add tests for htmlIdGenerator
* Remove unused event handlers in Agg
* Hide split drag handler for screen readers
* Ignore a11y eslint issues in markdown builder
* Move htmlIdGenerator to different lib folder
* Make legend expand button accessible
* Make legend options accessible
* Add keyboard accessibility to annotations
* Ignore some eslint a11y warnings
* Revert "Remove unused event handlers in Agg"
They weren't as unused as I thought.
This reverts commit 1fb6ecc434.
* aria-hide drag handles
* Generate random ids when no suffix is specified
* smoothLines should not override the seriesParams setting
* adding new series should respect the previous settings
* update visualization configuration
* updating based on review from thomas
* upgrading metric fontSize setting
* Use aria-expanded and better labels for agg collapsables
* Fix all agg options collapsables, fix#12892
* Label all vis editor inputs correctly, fix#11859
* Fix broken functional test
* Check sort:options for Discover default sort order
I went back and forth on a lot of different solutions for this.
Initially I thought it would make sense to just allow users to set a
default saved search in Discover. There were some problems with that
approach though. It would change the default workflow in Discover.
Instead of starting with an unsaved search, users would be editing a
saved search by default. I could see this leading to a lot of
unintentional changes to the default. The settings from the default
saved search also wouldn't carry over to new searches, which I think
would be desirable most of the time.
I also considered adding a new advanced setting for specifying a default
sort field/direction. This kind of setting would make more sense at the
index pattern level though. One field may not be valid across all index
patterns.
So I ended up going with the simplest solution. It solves the issue
identified by the author of the linked issue and nothing more. If a sort
order is specified in the existing sort:options advanced setting, we'll
use that direction when sorting on the index pattern's timestamp field
by default.
Fixes https://github.com/elastic/kibana/issues/5164
* Create a new advanced setting instead of re-using sort:options
* Just pass a default order
* Use correct aria-label react attribute
* Label TSVB auto apply button, fix#12900
* Create possibility to conditionally disable input-focus directive
* Disable auto focus when creating a new viz, fix#12888
* Fix styling of label in TSVB
* Disable auto focus in visualizations, fix#11856
* Fix disable of auto focus
* Disable auto focus of index selection in vis wizard
ui-select-match's expression was expecting an IndexPattern object, but
the indexPatternList passed to ui-select-choices contained SavedObject
instances due to the [SavedObjectsClient refactor][1]. This wasn't a
problem most of the time because switching index patterns caused the
entire directive to get destroyed and re-created. However, when the
directive didn't get re-created (for example, when clicking the already
selected pattern) it would result in a blank select box.
Fixes https://github.com/elastic/kibana/issues/13080
[1]: https://github.com/elastic/kibana/pull/12719
* Clamp the centroid to stay within the box boundaries
If a document has two or more geo fields, then the centroid calculation
will place the centroid in between the two geo fields. This can cause
the centroid to be in the middle of nowhere so clamp it to keep it
closer to where it should be.
* Add geocentroid and clamping tests
* Re-enable filter editor suggestions
* Use search instead of include
* Escape query
* Show spinner
* Use include rather than search
* Add additional regex and explanation for parameters
* Add suggestions API test
* Make sure test actually runs
* Use send instead of query
* Fix suggestions API test
* [angular/$http] remove use of .success() and .error() callbacks
* [angular/$route] remove `!` hash prefix
* [angular] upgrade
* [angular/$timeout] prevent unhandled exception "canceled" logging
* [ui/fancy_form] refactor FormController for compatibility
* [ngModelController] ensure method calls keep context
* [ui/queryBar/tests] attach $elem to DOM so "click" triggers "submit"
* [confirmModalPromise] fix test for rejected promise
* [watchMulti] specifically check watchers array for length
* [typeahead] check for property rather than own keys
* [ui/compat] add initAfterBindingsWorkaround
* [ui/fancyForms] fix _getInvalidModels()
* [fancyForm] add tests that check nested form error counting
* [ui/fancyForms] ensure that submit is blocked properly
* [ui/fancyForms] escalate soft errors on failed submit
* [ui/fancyForms] bind handlers to this in constructor
* [uiBootstrap/tooltip] describe the new error handling
* [ui/confirmModalPromise] use more sinon assertions
* [$http] resp => data before old .success() and .error() handlers
* [indices/createWizard] apply callAfterBindings workarounds
(cherry picked from commit 2eae80cd0c)
* keep current cursor or top line in view when resizing to avoid losing user context
* rename variable to more descriptive name
* move state from editor to smart_resize