* [optimizer] extract plugin discovery (#14745)
* [plugins] extract plugin discover from the kibana server
* integrate plugin discovery module with server
* [pluginDiscovery] fully extend config before checking enabled status
* [pluginDiscovery] limit arbitrary defaults in PluginSpec
* [ui/navLink] fix tests
* [ui/injectedVars] fix tests
* [ui/app] fix tests
* [server/plugins] convert init to callPluginHook tests
* [build/verifyTranslations] update verify logic
* [pluginDiscovery] remove rx utils
* fix i18n transaltion key name
* [pluginDiscovery] do kibana version checks as a part of discovery
* [pluginDiscovery/createPacksInDirectory$] clarify error handling
* [eslint] fix lint errors
* [uiApp/modules] ensure load order matches master
* [uiBundle] use known uiExport type for providers
* [uiExports] use the `home` export type
* [uiExports] validate that all uiExport types are known
* [timelion] remove archaic/broken bwc check
* revert some stragler changes
* [pluginSpecs] reformat comments
* [uiBundle] rebel and use more fcb 😬
* correct comment
* [server/waitForPluginsInit] describe queues var
* [server/plugins] prevent multiple calls to next() by using single then()
* [uiApp] remove archaic deprecation warning
* [uiApp] tighten up tests
* [pluginDiscovery/errors] remove $ from symbol var
* [pluginDiscovery/reduceExportSpecs] update docs
* [pluginDiscovery/findPluginSpecs] rightVersion -> isRightVersion
* [pluginDiscovery/findPluginSpecs] fix typos
* [uiApps/getById] use Map() rather than memoize
* save
* [savedObjects/mappings] use uiExports.savedObjectMappings
* [server/mapping/indexMapping] update tests, addRootProperties method removed
* [uiExports] "embeddableHandlers" -> "embeddableFactories"
* [pluginDiscovery] fix pluralization of invalidVersionSpec$
* [pluginDiscover] add README
* [pluginDiscovery/reduceExportSpecs] don't ignore fasly spec values, just undefined
* [ui/exportTypes] use better reducer names
* [ui/uiExports] add README
* fix links
* [pluginDiscovery/readme] expand examples
* [pluginDiscovery/readme] clean up reduceExportSpecs() doc
* [ui/uiExports/readme] cleanup example
* [pluginDiscovery] remove needless use of lodash
* [pluginDiscovery/waitForComplete] use better name
* [pluginDiscovery/findPluginSpecs] use fixtures rather than core_plugins
* [pluginDiscovery/stubSchema] use deafult: false
* [plguinDiscovery/pluginConfig] add tests
* typo
* [uiExports/readme] fix link
* [pluginDiscovery/packAtPath] fail with InvalidPackError if path is not a string
* [pluginDiscovery/packAtPath] rely on error.code to detect missing package.json file
* [pluginDiscovery/packAtPath] only attempt to get pack when observable is subscribed
* [pluginDiscovery/packAtPath] add tests
* [pluginDiscovery/pluginPack] move absolute path checks into fs lib
* [pluginDiscovery/packsInDirectory] fix error type check
* [pluginDiscovery/pluginPack/tests] share some utils
* [pluginDiscovery/packsInDirectory] add tests
* [pluginDiscovery/pluginPack] only cast undefined to array
* [pluginDiscovery/pluginPack] add tests
* [pluginDiscovery/pluginSpec/isVersionCompatible] add tests
* [pluginDiscovery/InvalidPluginError] be less redundant
* [pluginDiscovery/pluginSpec] verify config service is passed to isEnabled()
* [pluginDiscovery/pluginSpec] add tests
* fix "existent" spelling
* [server/rootRedirect] fix root_redirect view location
* [mocha] use custom reporter for legible results in jenkins
* [jest] use custom result processor for legible results in jenkins
* [karma] enable junit output on CI
* [mocha/junitReporter] accept rootDirectory as configuration
* [jest/reporter] use reporters option added in jest 20
* [toolingLog] remove black/white specific colors
* [dev/mocha/junit] no reason for junit to be a "reporter"
* typos
* [dev/mocha/junit] use else if
* [karma/junit] use string#replace for explicitness
* [junit] use test file path as "classname"
* [ftr/mocha] no longer a "console" specific reporter
* Region map settings clarifications (#14893)
Improve documentation.
This also includes some additions to clarify the new includeElasticMapsService setting.
It also fully qualify all parameter names.
* add some retries, waiting for the loading indicator to be hidden once is not enough
* test to see if looping over the flaky test 25 times will trigger it on jenkins
* Try again to semi-reliably report on jenkins
* Attempt to fix invalid id coming out of getDashboardIdFromCurrentUrl
* Clean up to submit attempted flaky test failure fix
clean up
* allow seriesList with multiple series
* remove junk file
* fix promise bug in precision.js
* remove another junk file
* throw error outside of async function so it is properly handled
* compare split label and not entire series label which includes metric and query strings
* reduce seriesList by label field when both seriesList do not contain splitKey field
* use clearer variable names
* move pairwiseReduce to its own function
* fix es.js test
* Simplify promise setup logic
* Import template from own file
* Use angular.element instead of jquery
* Add documentation for loader methods
* Add params.append
* Remove params.editorMode
* Clarify when returned promise resolves
* Add element to handler
* Allow setting CSS class via loader
* Use render-counter on visualize
* Use Angular run method to get access to Private service
* Allow adding data-attributes to the vis element
* Refactor loader to return an EmbeddedVisualizeHandler instance
* Use this.destroy for previous API
* Remove fallback then method, due to bugs
* Reject promise from withId when id not found
* Add tests
* Change developer documentation
* Revert "Use Angular run method to get access to Private service"
This reverts commit 160e47d7709484c0478415436b3c2e8a8fc8aed3.
* Rename parameter for more clarity
* Add more documentation about appState
* Fix broken test utils
* Use chrome to get access to Angular
* Move loader to its own folder
* Use a method instead of getter for element
* Add listeners for renderComplete events
* Use typedef to document params
* Fix documentation
* feat: add a state management config provider
the only thing to configure right now is the enabled/disabled state of state management
* feat: use state management config to disable state management
* test: add disabled checks for state management functions
* test: add tests for the state management config provider
* chore: consistently use arrow functions in state tests
* chore: be clearer about config value being private
* chore: clean up state config test code
* chore: style stuff that should be caught by the linter
>:( >:( >:(
* test: check url param for persisted state
instead of spying on a private method, create a persistent mock state and check the url's state value, as well as the public save method
* Simplify promise setup logic
* Import template from own file
* Use angular.element instead of jquery
* Add documentation for loader methods
* Add params.append
* Remove params.editorMode
* Clarify when returned promise resolves
* Add element to handler
* Allow setting CSS class via loader
* Use render-counter on visualize
* Use Angular run method to get access to Private service
* Allow adding data-attributes to the vis element
* Refactor loader to return an EmbeddedVisualizeHandler instance
* Use this.destroy for previous API
* Remove fallback then method, due to bugs
* Reject promise from withId when id not found
* Add tests
* Change developer documentation
* Revert "Use Angular run method to get access to Private service"
This reverts commit 160e47d7709484c0478415436b3c2e8a8fc8aed3.
* Rename parameter for more clarity
* Add more documentation about appState
* Fix broken test utils
* Use chrome to get access to Angular
* Move loader to its own folder
* Use a method instead of getter for element
* Add listeners for renderComplete events
* Use typedef to document params
* Fix documentation
This fix ensures the render-complete event does not fire before rendering is actually completed.
- This ensures that the ChoroplethLayer is fully loaded, by explicitly waiting until all geojson files are loaded.
- It also removes the special init() code-path for coordinate-maps.This was the cause of coordinate-maps not showing on reports.
* Make time picker enable/disable more granular
This makes the timefilter API more granular by removing the timefilter.enabled boolean property and introducing timefilter.enableTimeRange(), timefilter.disableTimeRange(), timefilter.enableAutoRefresh(), and timefilter.disableAutoRefresh() methods to toggle the enabled/disabled state of the time range selector and auto-refresh selector, respectively. Further, the current state of these two selectors can be read via timefilter.isTimeRangeEnabled and timefilter.isAutoRefreshEnabled.
* Clearer naming of API methods
* Reverting to !! instead of Boolean cast
* Wrapping the consequent in {} per style guide
* Removing outdated comment
* [input controls] Horizontal layout (#14918)
* input controls horizontal layout
* fix controlWidth calculation
* add functional test to ensure panel resizing changes layout
* use all caps for consts, add more comments about where values came from
* replace sleeps in functional tests with retry
* use KuiFlexGroup with wrap option instead of manually calculating widths
* remove no longer used min width constants
* fix dashboard grid function test.
* [dev/ci_setup] generalize jenkins_setup script for other CI environments
* [dev/ci_setup] accept more general `CACHE_DIR` env arg
* [dev/ci_setup] node.js install might not be invalid
* Implement getActiveInjector
* Fix typo in comments
* Rename method to sound more frightening
* Move test utils
* Add more documentation
* Fix typo in comment
* Fix name of method in comments