* [Stats API] Set API field names per spec
* fix jest tests
* fix api integration test
* trash the original metrics collector
- constantly accumulating stats over time does not align with the existing behavior, which is to reset the stats to 0 whenever they are pulled
* move some logic out of the collector types combiner into inline
- change the signature of sourceKibana
* Make a new stats collector for the API
- to not clear the data when pulling via the api
- fetching is a read-only thing
* isolate data transforms for api data and upload data
* no static methods
* remove external in bytes
* remove the _stats prefix for kibana and reporting
* update jest test snapshot
* fix collector_types_combiner test
* fix usage api
* add test suite todo comment
* reduce some loc change
* roll back mysterious change
* reduce some more loc change
* comment correction
* reduce more loc change
* whitespace
* comment question
* fix cluster_uuid
* fix stats integration test
* fix bulk uploader test, combineTypes is no longer external
* very important comments about the current nature of stats represented and long-term goals
* add stats api tests with/without authentication
* fix more fields to match data model
* fix more tests
* fix jest test
* remove TODO
* remove sockets
* use snake_case for api field names
* restore accidental removal + copy/paste error
* sourceKibana -> getKibanaInfoForStats
* skip usage test on legacy endpoint
* fix api tests
* more comment
* stop putting a field in that used to be omitted
* fix the internal type to ID the usage data for bulk uploader
* correct the kibana usage type value, which is shown as-is in the API
* more fixes for the constants identifying collector types + test against duplicates
* add a comment on a hack, and a whitespace fix
* add savedObjects to tutorial schema, add savedObjects to APM, add bulk create endpoint
* SavedObjectInstaller component
* bulkCreate fixes
* fix tutorial jest test
* update from sqren review
* updated copy
* move saved object json into seperate json files
* minor commit clean up
* ensure isMounted before setting state after async call, allow manifest to customize saved object install message
* remove duplicated logic for getting config xpack.apm.indexPattern
* refactor get index pattern title
* add functional test that loads APM saved objects
* remove extra await
* display overwrite message
* use angular free savedObjectClient
* functional test cleanup
* handle bulkRequest exception and add jest tests for SavedObjectsInstaller
* use Promise.reject instead of throw
* update copy
* Improve tests for histogram, tag cloud, input controls and enable lab mode.
* enable skipped tests
* Update shakespeare test navigation to visualize
* Add sleep to shakespeare test
* Skip shakespeare test for now, it is not clear why it is failing and does not fail locally, need the other tests to run in CI
* Revert selector for selectAggregation, re-enable shakespeare test
* skip vega spec text test, was not fixed with changes
* Enable only visualize tests to run, need to see results and it's being blocked by other test failures
* Enable all tests again, visualization tests all passed
* Skipping sample data test due to bug #20807, let's see if rest of the tests pass
* add check that combobox was successfully cleared
* run test 25 times
* checkin the correct files this time
* re-enable skipped test
* remove extra test loaders
* Added coverage around search and dashboard tests.
* Added tests to check for whether the resource is available. If not, return 404.
* Skipped two tests due to https://github.com/elastic/kibana/issues/19713. Added error handling for relationships API for when no result is found. Return 404.
* Applied patch file per PR.
* Applied Chris patch and tested locally. No failures.
* Removed ajv and utilised joi for schema validation.
* Fixed package.json.
* Copied package.json description from master.
* Reverted package.json and made proper edit.
* refactor login page check, turn off telemetry
* significant refactor of navigateTo
* replace slashes with _ in test failure output html files
* re-do out of date PR
* create saved object client that is native javascript
* fix savedObjectClient unit tests
* get saved object client from chrome when being used outside of angular
* update error handlers to pull status code from FetchError
* add some debug messages to failing functional test
* revert changes to management/_objects
* add clicks to import done in import objects test
* take screenshots of test only failing in CI
* remove functional test screenshot code since test is passing in CI now
* remove unused file, clean up saved_objects_client test to not use global, add test to error_auto_create_index to ensure compatibility with kfetch errors
* add body to kfetch error
* update savedObjectClient.bulkCreate
* add bulkCreate wrapper to SavedObjectsClientProvider
* mark _createSavedObject and _processBatchQueue as private methods
* input controls - re-fetch options list user input
* fix jest tests
* add functional test case
* remove unneeded async and await
* use fetchAsRejectablePromise instead of fetch to avoid kill kibana session when fetching agg results
* only show options once field is selected
* clean up list control editor to only display options when field selected and only display dynamic checkbox when field is string
* do not use size when using dynamic options
* display disabled toggle when field is not string field, allow searching in middle of word
* no tooltip for disabled dyncamic options, just change help text
* fix functional test expects since search now includes more than terms that start with
* Upgrade to EUI 1.0.1
* upgraded to eui 1.1.0
* fix setInspectorTablePageSize function in functional tests
* better comment about basic table pagination buttons
* disable broken functional tests in saved object import
* add better assertions to verify objects are imported as expected
* more discriptive variable name
* add test case for imported object linked to saved search when saved search does not exist
* Update getSuccessorLoadMoreButton() to point to correct selector
Add a sleep in navigateTo() and remove refresh()
Add methods to click predecessor and successor load more buttons
Update waitUntilContextLoadingHasFinished to check buttons are enabled and displayed
Update tests to use click methods
* Fix lint issues
* [Functional Tests] Use @kbn/test on Kibana CI (#18967)
* Replace test:api with @kbn/test runTests
* Improve CLI help menu 🆘
* Use --es-from
* Replace jenkins:selenium with kbn-test
* Validate cli args, fixing test in the process
* Clean up some stuff
* Code review fixes
* Explanation for collectCliArgs
* Remove exit codes, they're useless anyway.
* Make markdown vis test pass with dev_mode setting
* Tests
* Remove unneeded export
* Code review: move console logging up to cli.js
* Code review: refactor startServers and runTests to take single options collection
* Code review: Remove all things I am sure we do not use
* Improve tests
* Code review fixes
* Pass created log to runFtr, runElasticsearch, runKibanaServer
* Update --es-from option to --esFrom
* Let dev server run from snapshot by default
**Interface changes**
There are two goals behind the interface changes:
* Make it clearer which courier modules are meant for public consumption by exporting them from the top level.
* Simplify the courier object by removing responsibilities and focusing its responsibility solely on scheduling search requests via the fetch method and timefilter.refreshInterval Angular event.
I did this by taking the following steps:
* Removing redirectWhenMissing, indexPatterns, SearchSource, and SavedObject from the courier object. I also removed some unused methods from its interface.
* redirectWhenMissing is now a service registered on the kibana/url Angular module.
* indexPatterns is now a service registered on the kibana/index_patterns Angular module.
* SearchSourceProvider and SavedObjectProvider are now top-level exports of ui/courier.
* migrateFilter, decorateQuery, buildQueryFromFilters, and luceneStringToDsl are now top-level exports of ui/courier.
**Internal changes**
I also made some internal changes in an effort to organize the code clearly and reduce unnecessary complexity.
* I refactored the async code in CallClient to appear sync with async/await and encapsulated chunks of logic in helper functions. I also used an isAborted flag instead of overwriting the esPromise var with an enum.
* I combined Looper and SearchLooper into a single class and deleted unused functions.
* I reorganized the courier/fetch/request code into SearchRequest, SegmentedSearchRequest, and serializeFetchParams modules.
* Renamed various other methods and variables to improve clarity.
* Created general driver to accept an argument select the driver to run.
* Added environment variable for driver, changed package.json to use custim leadfoot, and made changes to browserdriver to use any driver.
* Made changes per PR.
* Fixed all nits.
* Replace spy panels by Inspector (#16387)
* Add Inspector feature
* So long, and thanks for all the fish, spy panel
* Fix several functional tests
* Fix unit tests
* Fix spy panel button tests
* Replace old spy panel documentation
* Disable test temporarily until we have dashboard triggers
* Enter edit mode for dark theme test
* Fix some more functional tests
* Fix more functional tests
* More test fixing
* Fix more functional tests
* Allow opening the inspector via loader handler
* Refactor InspectorViewChooser, remove unused CSS
* Remove dead code
* Fix data download button style
* Remove redundant code
* Load inspectorViews for dashboard_viewer
* Extract inspector views to custom core_plugin
* Switch API to TypeScript 🎉
* Design changes
* Remove icons from views
* Design changes
* Improve typings of API
* Add typing to all adapters
* Show loading spinner in request selector
* Rewrite InspectorView to TypeScript
* Fix help text for data view
* Remove deprecated React lifecycle methods
* Embed inspector into dashboard panel actions
* Remove temporary inspector trigger
* Remove old CSS
* Fix dashboard trigger for new panel action
* Add tests for InspectorPanel and DataAdapter
* Produce a hierarchical table if the vis is hierarchical
* Remove allowJs option again
* Add missing Apache license headers
* Close inspector on dashboard when navigating away
* Use proper title for dashboard panels
* Fix functional tests
* Skip broken test for now
* Flush view chooser button
* Add request adapter tests
* Skip more tests, broken due to typescript
* Add Request Time description
* Add description for courier request
* Fix tests
* Replace icon by new (not yet released) icon
* Finalize design of inspector
* Remove discover test, that relied on spy panels
* Change API to be properly mockable in tests
* Add aria-live region for request status
* Replace old method in functional tests
* Replace abitrary magic number
* Use object destructuring in vis
* Fix issue with crashing requests view
* Add request time tooltip
* Get request body of correct search source
* Make filter buttons properly keyboard accessible
* Follow Dave's design suggestions
* Remove redundant request from name
* Remove unneeded comments
* WIP raw-formatted values
* Fix filtering issue
* Fix tests and more license headers
* Add data view tests
* Remove search from table
* Fix typos
* Implement review suggestion
* Remove artificial delays for testing
* Fix new panel action structure
* Minor design adjustments
* Fix failing functional test
* Update failing snapshot test
* Implement final wording
* Apply new EUI styling
* Fix closing inspector in tests
* Fix sorting of table
* Align punctuation between tooltips
* Fix test that doesn't exist on master
* Fix one inspector test (#20072)
* Remove file that came accidentally back due to merging
* Fix accidental merge paste
* Fix 6.4 test failures