* add useTimeFilter parameter to Controls visualization
* fix broken jest test
* add functional tests for useTimeFilter
* remove wrong comment
* use _.clone and _.isEqual for time comparision
* do not track time changes in vis_controller - use status.time instead
* add tutorial directory and home promo section
* tutorial components
* use KuiCodeEditor for displaying instruction code
* move spec files to server so joi can be used. Fetch via rest API
* Adding more tutorials (#4)
* More edits on the Apache logs tutorial
* Added nginx, mysql, and sytem modules for FB
* Moved apache to apacheLogs and added an apacheMetrics tutorial
* Added mysqlMetrics, nginxMetrics, systemMetrics tutorials
* Reduce duplication in the tutorials
This uses common objects for the install and start steps for Filebeat.
Same can be done for MB.
* fix windows path for config file
* add markdown parsing
* use mustache to replace config.kibana.version with kibana version
* add image preview to tutorial introduction
* fix css class name
* add param types constants
* add docs variables
* [WIP] Logstash Netflow module tutorial (#5)
* First draft of Logstash Netflow module tutorial
* Incorporated writing style suggestions
* pass params to template replace logic
* parameter inputs
* use isReadOnly flag from ui-framework for KuiCodeEditor
* dedemorton commits on netflow
* remove trailing slash from base links
* add config.docs.logstash and fix vertical spacing between Content component and commands
* Use logstash docs config variable
* Starting to add Deb instructions
* Fix Logstash documentation link
* Make commands optional
* Refactor: extract common LS instructions
* Edits for the existing tutorials
* change schema to support three instruction types
* [Netflow tutorial] Simplify OSX instructions
* replace axios with fetch
* pass credentials to tutorial fetch
* display cloud instructions when cloud set
* RadioButtonGroup component
* update copy
* add tutorial component jest tests
* content component test
* load isCloudEnabled in home_app
* add functional test ensuring add data tutorials are fetch and displayed
* rename card btns to 'Add data', fix type in tutorial directory tab, remove 'Set up index pattern from tutorial directory'
* move parameters form to right of instruction set title
* add copy snippet button, remove line numbers from command block
* add breadcrumb to tutorial view
* update tutorial jest snapshot
* use componentDidMount and ignore async results if componenent has been unmounted
* define shape of prop for instructionVariants and params. Create NumberParameter and StringParameter components
* add bread crumb to add data directory page
* Add cloud version of the apache_logs tutorial (#16)
* Add cloud version of the apache_logs tutorial
* Added onprem-cloud version as well
* fix styling broken by EUI rebase
* add artifacts to tutorial schema
* fix styling for code block
* [Tutorials] Netflow: instructions for onPremCloud (#18)
* Extract common on-prem cloud instructions so LS and Beats can share them
* Extracting common instructions; adding onPremCloud instructions
* fix copy bug where copy would only contain previously selected text
* make string parameter input type be text
* Implementing Elastic Cloud tutorial for Netflow module (#19)
* More tutorial edits (#20)
* More tutorial edits
This updates the on prem instructions with a step that installs the GeoIP and
UA plugins in ES. It also makes the on-prem steps more consistent with the cloud
instructions which results in less redundancy in the code.
* Show config step for all variants
* More DRY in the tutorial content
* Updated screenshot for apache_logs
* wrap markdown content in markdown-body class
* use EuiFlexGroup to remove wasted space with 'copy snippet' button and instruction text
* change OSX to macOS, use Computed property names for instruction_variant DISPLAY_MAP, replace /app/kibana with kbnBaseUrl, remove unneeded if check in copy_to_clippboard, put getTutorials mixin on server instead of request
* capitilize 'C' in Elastic Cloud
* remove try/catch from copy_to_clipboard
* Removing unrelated instructions
* Copy editing fixes
* Multiply edits to the Beats tutorials (#21)
* Updated Nginx module
* Updated MySQL logs module
* Updated system logs module
* Correct the on_prem_cloud enable steps
* Updated the Nginx metrics tutorial and added screenshot
* Updated the Apache metrics module + screenshot
* Updated the MySQL metrics module + screenshot
* Updated the system metrics module + screenshot
* prevent 'Copy snippet' button text from wrapping
* [Netflow tutorial] Windows instructions (#22)
* [Netflow tutorial] Adding onPrem instructions for Windows
* Removing unrelated/superfluous instructions
* Adding Windows instructions for onPremElasticCloud and elasticCloud
* use EuiImage so tutorial images are clickable to view in full screen
* fix jest tests
* set fullScreenIconColor and alt options for EuiImage, add space between command block and instruction text
* switch to yarn
* cleanup misc references to npm
* [yarn] loosen dependency ranges so yarn will merge more deps
* fix linting error now that moment uses ESM
* [licenses] font-awesome changed the format of its license id
* Use local yarn
* Misc fixes
* eslintignore built yarn file
* Remove mkdir which doesn't do what it should do
* Check build without upgrading lots of versions
* Fix license check
* too many moments
* Better description
* Review fixes
* Lock to angular@1.6.5
* More specific version locks
* Revert "More specific version locks"
This reverts commit 11ef81102e.
* Revert "Lock to angular@1.6.5"
This reverts commit 3ade68c14c.
* rm yarn.lock; yarn
* Forcing a specific version of React, Angular, Moment
* Using vendored version of yarn in ci
* Use --frozen-lockfile
* fixes
* replace KuiConfirmModal with EuiConfirmModal
* add titles to confirm modals. Update modal text and button text
* updates for newest version of EUI
* use EUI class in overlay and EUI button constants
* remove logic about changed filters in cancel dashboard editing modal, clean up wording for import saved objects modal
* fix broken function test - management delete index pattern
* wrap names in single quotes
* Naively switching to Observables
* Dispatching native renderStart and renderComplete events
* Emitting actual event...
* Removing the visualize debounce
* Fixing unsubscribe
* Dispatching correct event for the metric visualization
* Moving the $scope.$apply to right after the call to render so it does
what it's supposed to
* Switching angularjs attribute name
* Removing the renderStart since it doesn't do anything
* Removing the renderComplete trigger from visualize, since no one listens
at this level
* Using vis.requestError to communicate when there's a request error
* Grabbing the container when creating the observable
* Dispatching renderStart as soon as we can
* Only emitting renderComplete after we wait for a new animation frame
* Can't ignore the first resize, sometimes it's actually a resize
* Use $timeout in visualiationEditor render, it can be in a digest already
* Calling renderComplete in componentDidUpdate as well
* Switching tests to use render-complete
* Fixing peer review corrections from @gammon
* Removing visDiv reference, we don't need it anymore
* Removing requestAnimationFrame
* Removing unused $timeout
* Removing test that was testing an implementation detail
* Adding $timeout.flush
* Moving the failures to the actual tests don't work.
* Deleting tests that weren't running before
* Removing import of removed test
* Consolidating the dispatchRenderComplete/dispatchRenderStart
* Upgrade to jQuery 3.2.1
The jquery-migrate showed a number of warnings,
but no errors, so it should be safe to use.
Warnings mostly related to bind, unbind, focus, ...
https://github.com/jquery/jquery-migrate/blob/master/warnings.md
To enable jquery-migrate, I added it to package.json, and added
a require('jquery-migrate') to the webpackShims/jquery.js right
after the require('jquery').
* Breaks in jQuery3: $(window).offset()
* await field.type(), update chromedriver
* Fix design of debug spy panel
* Simplify the debug spy panel
* Fix height of spy content
* Use scope bindings for spy
* Allow modes to be enabled/disabled based on vis
* Make showSpyPanel docs for loader more detailed
* Only show default panels when using courier
* Fix styling of req/resp spies
* Fix title styling in spy panel
* Get rid of visData in spy panels
* Use tabs instead of select box
* Ensure uiState in spy
* Restyle code in default editor
* Remove unnecessary if protection
* Use local scope variable for rowsPerPage
Due to issues with primitive datatype bindings in Angular this anyway
didn't save it correctly back into the variable.
* Pull all logic into spy directive
* Fix bug when closing panel
* Check for minimum chart size
* Skip spy tests for now
* Fix functional tests
* Improve uiState mock
* Create unit tests
* Remove dead scope binding
* Add EUI v0.0.7 as a dependency.
- Add support for using dark theme EUI CSS in Dashboard.
- Set light theme as the default.
- Add comments to chrome.jade about role of theme node.
- Add (WTFPL OR MIT) to acceptable licenses.
* Remove old reset CSS.
- Remove naked element selectors from base.less.
- Remove Bootstrap resets.
- Remove UI Framework reset.
- Remove unused reset styles from UI Framework.
* Fix CSS regressions caused by removal of CSS reset.
- Replace usage of sr-only with euiScreenReaderOnly.
- Apply euiButtonEmpty classes to the 'Add a filter' button.
- Fix Notification padding and layout.
- Apply euiTabs styles to Timepicker mode tabs.
- Fix layout of Available Fields heading in Discover.
- Add padding to Popular Fields container in Discover.
- Push down Selected Fields heading in Discover sidebar.
- Fix appearance of links in Discover sidebar.
- Fix height of pills in Filter Bar.
* Fix timepicker tests.
- Remove kbn-accessible-click from timepicker buttons.
* Fix functional tests.
- Use byCssSelector inside of testSubjects.find.
- Delete flaky view_edit.js test: 'when time changed is stored with dashboard'.
- Delete flaky view_edit.js test: 'and preserves edits on cancel > when time changed is stored with dashboard'.
- Delete flake Gauge Chart tests. EUI changed the font size, and the text within the gauges doesn't render when the window is too small.
* try to repro
* try 30 times
* some clean up and extra tests
Don’t see how this should help, but switch to using data-test-subj and
add a wait until loading line.
Still, I don’t see that it would actually help.
Also it took 50 test run to hit it once, so doubling the amount of
times the test suite runs to improve chances of hitting it.
* Throw the function in a retry
Unfortunately it’s probably not worth investigating why the click
sometimes fails, given how rare it is and that it’s only reproducible
in the test environment.
* Remove extra test loops
* remove skip and check multiple times again
* Fix issue with flaky field toggle selection
* forgot await
* More stabilizations
* Stabilize by disabling toast auto hides on all dashboard tests
* avoid all the retries to see if disabling toast auto hides was what was messing everything up
* remove comment that is no longer relevant
* Remove extra tests
* Shift negative series before drawing, fix#15553
* Add tests fot TSVB markdown
* Use waitUntilLoadingHasFinished
* Remove forgotten skip
* Switch test order
* Use generic seriesOption
* Rename test from chart to metric
* Use test subj to find metric tabs
* Improve TSVB tests
* [colors] try new cli colors
* [colors] try magentaBright instead of magenta
* [colors] try white for log text
* [colors] replace all remaining ansicolors with chalk
* [colors] try yellowBright instead of yellow
* remove ansicolors from package.json
* [tests] attempt to fix tests
* [tests] attempt to fix tests again
* [color] backgrounds, cleanup
* Tests were sometimes failing locally when waiting for a render counter of 6
Render counter value, as it turns out, is unstable and unreliable, and
is in the process of being replaced. For now, we have to use a lower
render counter (sometimes it’s 6, sometimes it’s 4) and add a sleep.
Very unfortunate, but hopefully will soon be able to be use the newer
logic.
* Remove extra test runs
* Add mechanism for dashboard snapshots
* Adjust wait for render function since it needs to be 2, not gt 0.
Should be obsolete when the new render stuff is complete.
* resize images using new library so comparisons work across different screen resolutions
* use jimp comparison and see if expanding to expanded panel mode helps when comparing across browser/os
* Try to ensure window size
* Experiment with a smaller window, see if screenshot dimensions change
Update screenshot for new window dimensions
* Try cover + quality, see what the diffs look like.
* Stop trying to get TSVB to pass, try area charts
There is a timezone bug with tsvb:
https://github.com/elastic/kibana/issues/15501
* gah, cover didn't work, check resize
* bump render counter to 6, as it should be.
As it turns out, the visualization was not done re-rendering to
maximized mode
* Bump threshold for comparison
* reduce down to a single test run
* Don't use an environment variable to detect updateBaselines cmd line flag
* Use render counter to fix timing issue with click events not being applied by the time a pie slice is clicked.
* use testSubjects.moveMouseTo function
It has built in safety checks for stale element refs
* remove sleep
* Remove extra test suite runs, passed enough times
* First, run the test suite in question 20s to see how flaky it is and if it can be semi reliably repro'ed
* Use testSubjects instead of click by link test.
* spaces in data-test-subj selectors messes this up
* Passed sufficient number of times, remove extra test runs
* [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
* 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
* [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
* 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
* Remove uiState from dashboard - communicate via the panelState instead
* migrate old app state from the url
* Add comment about migration and why the unused uiStateJSON field is kept around still
* get wiring done for timelion application functional tests
* add tests for expression type ahead functions, arguments, and argument values
* provide argument suggestions when argument name not provided
* updates from cjcenizal review
* [es][savedObjects/index] put template on each savedObject write
The elasticsearch plugin currently checks for the Kibana index on each iteration of the healthCheck, and creates it if it does not exist. This removes that step from the healthCheck and instead, before each savedObject is written to elasticsearch, ensures that Elasticsearch has the necessary index template should the write result in index creation.
The healthCheck still has the `patchKibanaIndex()` logic, which checks the type in the Kibana index and adds any missing types. This step now does nothing when the Kibana index does not exist, and does what it has always done when it does.
* [ftr] remove unused kibanaIndex service
(cherry picked from commit b1ef897dafeb6d43fe279776e44a9d793a389dc3)
* [savedObjects/integration] create now creates kibana index
* [es/healthCheck] remove use of format()
* [es/healthCheck/tests] use sinon assertions
* [es/patchKibanaIndex] test for kibana index missing behavior
* [savedObjects/errors] add tests for EsAutoCreateIndexError
* [savedObjects/config] deprecate and remove savedObjects.indexCheckTimeout config
* use dangling commas consistently
* [ui/error_auto_create_index] fix class names
* [ui/savedObjectsClient] no need to specify basePath
* [eslint] fix linting issue
Also adds some stabilization by refactoring some retries and
expectations.
and fixes a bug that snuck in between two PRS where the pie slice css
changed.
* [ftr/mocha] revert Mocha UI assigments after loading test files
* [ftr] add beforeTopLevelSuite and afterTopLevelSuite lifecycle hooks
* [ftr] add defaultWindowWidth and defaultWindowHeight options
Adds two configuration parameters to the functional test runner which
will set the windowSize before running the tests in any file and
restores the original window size when the tests complete.
Individual test files can set the windowSize within its own before() or
beforeEach() handlers using the same `command.setWindowSize()` command.
* [ftr/assignmentProxy] use better naming
* [ftr] restore initial window size after each suite
* [ftr] improve error message for unexpected suite definitions
* [ftr/remote] remove configuration option, rely on suite-level changes
* [ftr] fix stack manipulation order
* [ftr/remote] write tests for window size management
* Add a couple tests with queries and saved searches linked to visualizations
Fix issue when edit link is clicked too soon and embeddable hasn't finished loading
* attempt to fix flakiness
* remove duplicate lines
* pie labels
* add simple unit test
* fixing dashboard test
* fixing basedo on review
* simplifying conflict resolution
* removing unused code
* cleanup code
* minor changes based on review
* updating option templates to match new design
* updating truncate_labels to work with chars instead pixels
* [eslint] upgrade to 4.10.0
* [eslint-config-kibana] limit jest config to jest test files
* [ui_framework] remove trailing comma from rest-spreads
* [dashboard/tests] tag jest helpers with .test.js suffix
* explicitly import expect.js where used
* [eslint] apply auto-fixes
* [eslint] manually add/wrap some parens for compliance
* [npm] point to local packages for testing/review
* [jest] remove .test extension from jest helpers
* [ui_framework] fix trailing comma removal from 3bc661a1c8
* [packages] upgrade eslint packages
This PR removes the ability to create scripted fields with the expression language. It also adds an error message to the scripted field list page if any expression scripts already exist which instructs the user to convert all their scripts to painless.
* introduce a mechanism to load a dashboard by title is a single one is found, if not, to refill the search box on the listing page
* Make case insensitive and prevent listing page from "blipping" up on the screen before the redirect
* Add tests
* add a test that will fail due to the current TSVB bug
* add a test to catch the latest bug with saved searches
* reorder array so tests pass
* Update tests since the first panel is TSVB and won't have a spy pane toggle
* Don't update panels in state one at a time when layout changes
* Add test that would have caught the bug
* fix test
Hmmm, I thought grabbing the panels the second time would change their
order predictably but seems no. Still unsure if the order is
garaunteed.
* Need to split out merging panel updates action and setting panels
Tests caught this issue, woot.
* Fix remaining setState warnings by not calling getEmbeddableHander in render
* Add an option to add margins between panels
Make it a boolean useMargins to make this even simpler
* Fix issue with undefined not matching false and triggering a dirty state
* add some test helpers and css for plugin use-age
* default to margins on for new dashboards.
* use const variable syntax for margins
* Fix issue with older dashboards being bumped into useMargins: true mode
* Add tests to catch error
* Fix test
* Don't store column and sort state in panel uiState unless explicitly overridden in a dashboard.
* add debug messages
* Elements can go stale between the find by and the click event so wrap in a retry
* fix bad merge with master
* Adding a check to make sure everything is available to render
* Adding some safety
* Fixing a bug with the label
* Adding an additional sleep to wait for the new data to arrive.
* Refactor focus state logic to use the React lifecycle correctly.
* Update KuiPopover snapshots.
* Remove unnecessary isVisible prop from KuiContextMenu.
* Allow user to both tab AND use the arrow keys for navigation.
* Reinstate ability to tab and shift-tab to the title of KuiContextMenuPanel.
* Release focus from Dashboard panel options KuiContextMenu by closing it when you select an option.
* Update KuiContextMenu example to demonstrate best practice of closing the menu when an item is clicked.
* Replace native transitionend event handler with onAnimationEnd React event handler.
* update histogram agg to fetch min and max when search request started
* scale interval when too many buckets are created
* move min and max params into autoBounds param, remove typo in help text
* use decorated property instead of params to avoid changing agg state, add functional test
* remove sleep from functional test
* make args for onSearchRequest functions specific. Add getters and setters for autoBounds to AggConfig. Protect against divide by zero
* add unused arguments with eslint comment
* Initial check in of introducing redux in dashboard
* Use redux-actions and redux-thunks to reduce boilerplate
* Make sure all panels are minimized from the start when a dashboard is loaded - we don't want a panel id from a different dashboard in the state tree on a fresh open.
* Remove unused file
* use classnames dependency instead of manual logic
* First pass on selectors, handleActions, and more segmented reducers.
* Fix bugs with selectors and reducers and add tests that would have caught them.
* Fix issue plus tests
discover was not returning a promise
* Make expanding a panel purely a css modification which avoids all re-renders
* Found another bug with initial state not being set correctly on a hard refresh
* Remove check for change handlers now that the event handler bug is fixed
* rename dashboardState => dashboard for reducers and redux state tree
* Remove unnecessary top level describe in jest tests
* Navigate back to landing page at the end of the newly added test suite
* Fix lint errors
* Stabilize flaky tests by waiting until saved object search is finished loading results
* Don't leak subscriptions to the store.
* use selectors to grab dashboard panel off state.
* Remove use of getState in dispatcher to avoid circular reference and still use selectors
* use spread over object.assign
* No need to pass second param in when the input is simply returned as-is.
Integration tests should go into the corresponding directory under
`test` and should use the appropriate testing framework that is designed
for long-running tests like those. Tests under __tests__ directories
should be fast-running unit tests only.
Integration tests should go into the corresponding directory under
test and should use the appropriate testing framework that is designed
for long-running tests like those. Tests under tests directories
should be fast-running unit tests only.
* [uiSettings] auto upgrade savedConfig doc when missing
* naming tweaks
* fix comments
* ensure that rcVersions are not found within a version
* add some tests for non-single digit versions/rcs/betas
* return the condition, rather than using an if()
* assert that getUpgradeableConfig() is always called once
* [uiSettingsService] remove excess space
* [savedObjectsClient] only attempt to createOrUpgradeSavedConfig once
* [uiSettings/routes/tests] remove unused assert helper
* [functional/console] correct test title
* [ftr/kibanaServer/uiSettings] fix disableToastAutohide timeout
* Adds ability to change index pattern on import
Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>
* UI changes. Use a table in the modal grouped by index pattern id instead of multiple modals.
* PR feedback
* PR feedback
* PR updates
* Handle skip properly
* Fix error when there were no existing index patterns
* Tests for the new import conflict logic
* Fix invisible filters caused by missing index pattern (#14131)
"invisible filters" occur when the mapping chain throws an error. If a single filter throws an error, the entire chain rejects. As a result, not even the valid filters appear in the filter bar because they never get added to the scope. However the filters still exist in app state and still get sent with each search request.
The most common error occurs when the filter's meta.index property points to a non-existing index pattern. Since this property is only used for looking up field formatters and it is not essential for a working filter, we now fall back on raw values instead of failing if the index pattern is not found. See the PR this one replaces for discussion about other solutions we tried and why we chose to go this route.
* Show query and filter bars even when there's a linked search (#14212)
The query bar used to be hidden in the presence of a linked search because unlike filters, queries didn't get merged when flattening a SearchSource hierarchy. That means a query in the query bar would override the query in the linked search. This is no longer the case. As of 6.0 we include all queries in the SearchSource hierarchy in the final request, so there's no longer any reason to hide the query bar.
Since filters created via a Vis show up in the query bar when Kuery is selected, these filters now appear correctly even when there's a linked search in the vis editor.
Previously when unlinking a saved search visualize would insert the query and filters from the saved search into app state before removing the SearchSource from the hierarcy. This posed a problem because combining two lucene query strings isn't as easy as combing two sets of filters. We decided this behavior was a bit counterintuitive anyway. If the user wants to unlink the saved search, they probably want to discard it, not combine it with their local changes. So I've also updated the unlinking functionality to discard the saved search.
* limit wait time for baselayer (#14047)
* adding scope appy back (#14269)
* remove junk tests (#14191)
* We are using the index pattern id now
* Use the index pattern id here too
* Use an isolated es env for these tests
* Revert "Fix invisible filters caused by missing index pattern (#14131)"
This reverts commit e09d7ad1f9.
* Revert "Show query and filter bars even when there's a linked search (#14212)"
This reverts commit 3aee7c2bf0.
* Revert "limit wait time for baselayer (#14047)"
This reverts commit 44a71071ac.
* Revert "adding scope appy back (#14269)"
This reverts commit 51b6b51aac.
* Revert "remove junk tests (#14191)"
This reverts commit f06c18332b.
* Revert these
* [savedObjects/delete+bulk_get] add failing tests
* [savedObjects/delete+bulk_get] improve 404 handling
* [savedObjects/client] fix mocha tests
* [savedObjects/tests] remove extra test wrapper
* [apiIntegration/kbnServer] basically disable es healthcheck
* [savedObjects/create] add integration test
* [savedObjects/find] add failing integration tests
* [savedObjects/find] fix failing test
* [savedObjects/client] explain reason for generic 404s
* [savedObjects/get] add integration tests
* [savedObjects/find] test request with unkown type
* [savedObjects/find] add some more weird param tests
* [savedObjects/find] test that weird params pass when no index
* [savedObjects/update] use generic 404
* fix typos
* [savedObjects/update] add integration tests
* remove debugging uncomment
* [savedObjects/tests] move backup kibana index delete out of tests
* [savedObjects/tests/esArchives] remove logstash data
* [savedObjects] update test
* [uiSettings] remove detailed previously leaked from API
* [functional/dashboard] wrap check that is only failing on Jenkins
* [savedObjects/error] replace decorateNotFound with createGenericNotFound
* fix typo
* [savedObjectsClient/errors] fix decorateEsError() test
* [savedObjectsClient] fix typos
* [savedObjects/tests/functional] delete document that would normally exist
* [savedObjectsClient/tests] use sinon assertions
* [savedObjects/apiTests] create without index responds with 503 after #14202
* Initial check-in to replace gridster with react-grid-layout and reactify panels
* # This is a combination of 3 commits.
# This is the 1st commit message:
Add margin of error to test determining panel widths
# This is the commit message #2:
use real kibana version when creating panel data. Will make future conversions easier.
# This is the commit message #3:
Fix lint errors
* Add margin of error to test determining panel widths
use real kibana version when creating panel data. Will make future conversions easier.
Move default height and width to dashboard_constants so those that need it don't end up including extra stuff like ui/chrome
* Remove unnecessary _.once when creating react directives in dashboard.js
* Remove unnecessary constructors
* Use componentDidMount instead of componentWillMount bc of async calls, and handle case where destroyEmbeddable is not defined.
* Remove unnecessary null in classNames
* Use loads defaultsDeep instead of Object.assign
* use render* instead of get* for functions returning an element
* use relative css paths
* Use local import path
* Switch to local imports and remove need for plugins path in jest tests
* Improve accessibility of max/min panel toggle icon
* remove unused css
Had to implement this via code
* disable eslint rule for setState in componentDidMount
Am not aware of a better way to handle this, aside from switching to
redux, since it’s recommended not to put async calls in
componentWillMount. Since I plan to investigate redux next, disabling
for now. Open to other’s opinions on the matter.
* Use native map instead of lodash
* Have the grid handle setting the z-indexes of the right reactgriditem
* Make the draggable handle the title, not the whole heading
Otherwise the drag event often takes over click events when trying to
open the panel options menu and it gets really annoying.
* Change from click to mouse down detector in KuiOutsideClickDector so drags also close pop ups.
* Fix mistaken commit
Code from the redux PR snuck into this one.
* Run getEditPath and getTitle async calls in parallel - no need to wait on the return value of one before starting the others.
* Fix tests: update snapshots, add promise returns.
* version being added to panelData in the wrong spot caused isDirty flag to be true when it shouldn't be
* Fix unmounting/mounting problem with panels due to view/edit mode switch
* Fix bug where panels get squashed to one side when view mode is changed while a panel is expanded.
* Update snapshots to match wrong view mode comparison
* Improve naming of a variable
* Fix issue with pop over hiding behind tile maps
* Previous panel.js included ui/doc_table and ui/visualize - needed to include them in the chain for Dash only mode but not in that file.
* Fix bad merge: remove baseline screenshots
* react editor example
* ensure props are not updated
* use new stageEditorParams method to stage parameter changes
* make component stateless
* use terms_vis_editor component
* get add button to work
* update vis controller to display terms input controls
* update componenent when query bar updates
* add functional test
* lay ground work for different control types in single visulization
* make editors for range and text controls
* text control
* implement type ahead suggestor for text control
* add range slider
* some CSS work
* add submit button, move control init functionallity under control_factory
* add custom options for control types
* provide buttons to move controls up and down
* Make ControlEditor component and clean up styling of editor
* styling work
* multi select for terms dropdown control
* add option to disable filter staging, only enable submit button when filters are staged
* clean up range styling
* rename top level vis folder
* cleanup
* move control type select out of each control editor
* dark theme styling
* use ui/public/filter_manager/lib/phrases.js to build phrases filter, add tests to range filter manager
* use savedObjectsClient to get index patterns
* remove text control and add id to controls for react tracking
* ensure fields get updated when index pattern changes
* update PropTypes for react 15.6.1
* update to latest react-select to avoid isMounted deprecation warnings
* fix input controls functional test
* rename termsControl to listControl to be more generic
* add function test for clear button, refactor directory structure
* functional tests for updateFiltersOnChange is true
* fix react-select clipping problem in dashboard
* try clicking option instead of pressing enter to set react-select value in functional tests
* react-select css
* clean up control_editor component, make ListControlEditor component be function
* add jest test for vis_editor component and accessibility
* add decimal places option to range slider
* add jest test for InputControlVis component
* add default to switch blocks, split editor into seperate tabs, use shallow in snapshot tests
* fix race condition in field_select, update index_pattern_select to fetch indexPatterns on each filter
* clean up control initialization
* use htmlIdGenerator to avoid html element id conflicts
* update functional test to support new editor tabs
* finish jest tests for sub componenets
* mark vis as experimental, refactor buttons for better usability
* fix bug in list control where unable to select options containing numbers and options containing commas. Truncate display of long list options
* fix chart types functional test
* fix jest tests, add margin to action buttons
* remove binds from render functions
* experement with native input range sliders
* Revert "experement with native input range sliders"
This reverts commit aed599e88a.
* Use Promise.resolve in tests and replace _createRequest with searchSource.fetch
* add inputs to range control
* [babel] create babel-preset and babel-register modules
* [babel-preset] add comments to babel-preset-env.target choices
* [babel-preset] use more normal BUILT_WITH_BABEL signal
* [babel-register] extended comment about filtering ./src in dist
* [babel-preset] stage of class properties has changed, sorta
index.mapper.dynamic should not be used for 6.0+ indices, so this commit
removes it from the esArchiver mappings.json for kibana
Related elastic/elasticsearch#25734
* 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.
* 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
* 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
* Create Index Pattern Creation wizard.
- Create a directive for each step in the wizard.
- Reorganize files into conventional folder structure.
- Rename files with more conventional and consistent naming patterns.
- Display indices, partial matches, exact matches.
- Add loading, empty, and success states.
- Add option to include system indices.
* Temp: comment out and mock getIndices functionality.
* Hook up data seaching
* Add for/id connections for form inputs and labels
* Automatically append a wildcard
* Highlight the index pattern in the results
* Ensure we only remove the last character if it's a `*`
* Auto hide index pattern id controls
* Ensure this link is tabbable
* Move the advanced fields down
* Use toggle button
* This shouldn't ever be required
* Revert "This shouldn't ever be required"
This reverts commit b6e31e79308271e7f04ea1d42ce66e32e7aa0612.
* Update based on comments in PR
* Ffew more changes
* Port changes from Tyler's PR, https://github.com/elastic/kibana/pull/13353
* Remove unnecessary file
* Fix broken functional tests
* Copy changes
* Fix functional tests
* Remove loading from the main select, and move to an additional select
* Show help text when loading
* Fix sorting
* Fixing broken functional tests
* Couple changes from PR review
* Ensure input field does not show a red border until touched
* More descriptive and consistent copy
* upgrade leaflet modules to 1.x latest
* fix css for leaflet controls
* update draw options so it is easier to see polygon when drawing
* fix chrome touch issues with closing polygon in leaflet draw
* use canvas renderer
* use leaflet-responsive-popup to avoid tooltip cutoff
* remove radius configuration from leaflet heatmap
* make blur a factor of radius. Set maxZoom to map zoom since new values are calculated per precision
* use _.get to avoid error, cannot read property of undefined
* add cluster size slider
* experiments with image differences
* onload not onLoad
* use canvas dimensions
* compare map canvas to stored PNG of map canvas
* remove pixelmatch from project dependecies
* fix broken test - rounding error
* add expected image tests for geohash layers shaded circles and geohash grids
* bump z-index of vis-spy
* update functional test expected data
* update to leaflet 1.2.0
* revert to leaflet 1.0.3 and update expected data set for map functional tests
* test geohash_layer heatmap in unit test
* update region_map functional test since it can not longer pluck map vectors from DOM
* update documentation
* add markdown functional test
* update markdown vis to use markdown-it
* migrate markdown angular filter to markdown-it
* place other uses of marked and remove dependency
* update breaking changes documenation and set linkify to true
* Make table pagination controls keyboard-accessible. Update KuiLink so it can be used on a button element.
* Add additional properties to link mixin to make kuiLink look the same for both buttons and anchor tags.
* Fix tests.
* [SavedObjectClient] emit detectable errors
* [uiSettingsService] consume new SavedObjectsClient errors
* [SavedObjectsClient] expose errorTypeHelpers as such
* [elasticsearch/tests] recreate error for each test
* [http] wait for elasticsearch plugin to be ready
* [shortUrl/tests] ensure that create request responds with 200
* [shortUrl] use errorTypeHelpers to filter errors
* [uiSettings/savedObjectsClientStub] stub errorTypeHelpers
* [SavedObjectsClient/errors] expose error module so tests can make errors
* [shortUrl/tests] use actual SavedObjectsClient errors
* [uiSettings/savedObjectsClientStub] use actual errors lib
* [SavedObjectsClient] use decorate instead of "wrap"
* [server/routes/uiSettings] refactor routes to forward Boom errors from uiSettings
* [uiSettings] colocate routes and service
* [testUtils/esTestCluster] use more standard api style
* [testUtils/es] add createCallCluster util
* [testUtils/esTestCluster] add getters for client/callCluster
* [es/healthcheck] ensure that healtcheck stops when server is stopped
* [uiSettings/routes] add param/payload validation
* [uiSettings/routes] add tests that verify error behaviors
Fixes#12639
It's now possible to tab to each filter's actions and interact with them via the keyboard.
In order to get the actions to show/hide on both mouse hover and action focus I had to create a new filter-pill component that could manage a bit of state to track whether the user was interacting with a given pill or not.
* Use find service instead of remote which doesn't have built in safety checks for stale elements
* use data-test-subj instead of id
* add missing function and awaits
* Did not realize WebElements could find descendants
Added some extra functionality for this in find and testSubjects
service, and using in the one place it’s required.
* Move dashboard panel rendering logic to each registered type.
* Remove dashboard knowledge of click and brush handlers for visualizations
Move it to the VisualizeEmbeddableHandler.
* merge master with manual changes
* No need to use lodash
* Add EmbeddableHandler base class
* Use correct path to embeddable_handlers_registry
* clean up
* Set visualize scope uiState that is of type PersistedState, otherwise it won't actually be set.
* add retry to loading saved search data
* Fix handleError param and remove unnecessary private param
* Rename savePanelState updatePanel and return the new object rather than mutating the original
* Make ContainerAPI a base class and move the dashboard specific functionality into a new class
* Make api's async and clean up documentation
* Fix panel tests
* Fix bug which broke tests - need to pass container-api to dashboard-panel
* Address code comments
- Rename onFilter to addFilter
- Use angular promises instead of async/await
- fix jsdoc
- rename createChildUiState to getInitialState
* changed the wrong variable name
* no need for async or Promise.reject on interface
* add tests that will fail due to spy pane issue in this PR
* Fix logic with spy pane toggle
There is still a bit of a bug here as mentioned in
https://github.com/elastic/kibana/issues/13340 but it will be fixed
separately as it’s also an issue in master
* Fix failing test
* Use ui-select for agg selector
* Fix functional tests
* Fix functional tests
* Fix test
* Fix visualize page object
* Use sortPrefixFirst in agg selector
* Fix unit tests
* Fix unit test
* Use not(.ng-hide) rather than last-child
* Make sure no one can show the chrome if the default setting is hidden.
add tests
Fixes https://github.com/elastic/kibana/issues/13040
* Improve variable and function names and fix tests
* update paginated table headers with columns update
* remove unneeded sleep
* update getDataTableHeaders to preffered format
* use data-test-subj attribute for functional tests instead of CSS selectors
* [es/tests] remove unused module
* [testUtil/es] add utility for starting es nodes in tests
* [ftr/tests] use esTestCluster util to start es
* [es/tests/routes] use esTestCluster to start own es
* [testUtils/kbnServer] disable uiSettings unless plugins are enabled
* [testUtils/esTestCluster] use standard test es port by default
* [server/http/tests] add esTestCluster to setup
* [test/config] unify es test config into a single module
* [testUtils/esTestCluster] directory is no longer configurable
* [testUtils/esTestCluster] throw when es.start() is called again without es.stop()
* [testUtils/esTestCluster] is* checks should not mutate state
* Ensure that conflict fields can be searchable and/or aggregatable in the UI
* Use `some` instead of `reduce`
* Revert UI changes
* Attempt to convert multiple ES types to kibana types, and if they all resolve to the same kibana type, there is no conflict
* Add comma back
* Cleaner code
* Add tests
* Update failing test to handle searchable and aggregatable properly
* Add functional test to ensure similar ES types are properly merged
* Update tests
* Revert shard size
* Stabalize tests and bring back flaky test
* Try to fix flaky map radius visualize test
* fix flaky tile map zoom test
* Try to fix flaky zoom test by avoiding zooming in and out with spy panel open
* Remove duplicate wrapped retry around find methods
The retry was moved internally, around a check for stale elements as
well, so this should no longer be neccessary.
* ensure timezone attribute is adhered to
Two issues - one the archiver was loading the visualize mapping after
the config setting so it was bring overwritten, and two,
uiSettings.replace wasn’t working correctly to begin with.
* extra line to ensure server is stabilized to prevent transitory failures
* remove inline awaits
* testSubjects.find now always returns a promise, so we need to make sure there is no more inlining
* more find conversions
* need to pass property name
* Make sure async functions are awaited on.
* add time to toggleSpyTable to give time for tab to open and map to adjust
* make open and close spy panel functions that retry until panel is in correct state
* filter geo hash agg - merged with vis refactor
* get collar size from geohash aggregation
* fix getBounds
* add test for _buckets to handle single bucket case
* use _getGeoHashAgg to update precision
* call reload when map bounds outside of map collar
* update fit control to use geo_bounds aggregation metric
* remove geo_hash param collarScale
* fix precision parameter test
* refactor _geo_hash.js test for readability
* do not trim map bounds
* only change aggregation state when data needs to be refected because zoom changed or map bounds are outside of collar
* remove extra geo_utils.js file from tile_map plugin
* only filter geoJson layer on client when results are not filtered on server
* set up layer options before creating geoJson layer
* add updateExtent back
* add getUntrimmedBounds, clean up filter option verbage, remove scale param from scaleBounds function
* move check for server-side filtering for updateExtent into geohash_layer
* move fetchBounds to geohash_layer
* fix _tile_map functional test, response data is different because of added filter aggregation
This updates the function tests by:
Changing logstash_functional's _type from docs (changed in #13001) to doc.
Adding the original _type (apache or nginx) as a new field named type to logstash_functional's documents.
Updated the mappings to include the expected type field.
Did the same for makelogs by removing _default_ and other _types in favor of doc and the new type field.
Dropped the single_type setting from makelogs.
Updated associated tests that were looking for _type values of apache and nginx.
* Remove field_stats pre-flight option for index patterns
This feature was originally added to make searches against Elasticsearch
more performant when searching across many indices, such as when dealing
with daily indices that have accumulated for years. Elasticsearch now
automatically optimizes index access once a certain amount of shards are
in play, so Kibana doesn't need to hack its own solution.
This option can be removed entirely as existing index patterns that had
this option configured will degrade gracefully.
* test: fix parse error test to account for multiple shards
* [elasticsearch] patch mappings that are missing types
* [elasticsearch/healthCheck] fix tests
* fix doc typo
* [tests/functional/dashboard] fix suite name
* [es/healthCheck/ensureTypesExist] limit randomness a bit
* [test/functional] update es archives with complete mappings
(cherry picked from commit 929aa8efae)
* Index pattern is created, by default, with a random ID by Elasticsearch
* Updated all references requiring the pattern itself to use indexPattern.title
* Advanced options toggle added to index pattern creation page to provide a specified ID
* If an index pattern does not exist, the user is given a link to create a pattern with the referenced ID.
This reorganizes the internals of Visualize. The main contributions are:
- separation of Editor from Visualization. This allows users to create editors separate from their Visualization. Both Timelion and TSVB are examples of visualizations not using the sidebar editor
- no longer restricted to just use angular as a rendering technology
- introduction of API object, which avoids the need to pull in modules directly, like time-filter or filter-bar
* converting Vis to es6 class
* <visualize>, <visualization> and <visualization-editor>
* editor, responseHandler and requestHandler registries
* updating visualize editor app
* vis, default editor, request handlers and vis types
* updating vis types
* updating kibana to work with new visualize
* migrating existing visualizations
* fixing bugs with rebase
fixing tests
fixing tsvb auto apply button
fix tsvb resizing issue
update scope.$apply for react editor components
re-render react component when vis.params are updated (#12347)
fixing heatmap
remove obsolete maps_renderbot indirection
remove cruft/ remove custom resizing and hook into global event
fixing brush event
fixing resize event for vislib_vis_type
fixing legend
changing based on nathans review
* fixing tests
* fixing renderComplete issues with editor
* map updates
* fixing maps zoom
* fixing based on nathans review
* fixing render complete issue and doulbe rendering with maps
* trying to get maps in order .... wip
* removing resize method from visualizations
* changing the rendering process a bit
* fixing metric chart type auto changing
* minor simplifications in coordinate map viz
* more simplications now we only have single render
* minor fixes
* do not recreate layer when not necessary
* minor changes
* fixing maps bounding box filter
* fixing desaturation option
* fix zoom settings when toggling between WMS/basemap
* adding status to the render method (to figure out what changed)
* fixing legend open icon going out of page
* skip index selection for timelion
* timelion brush fix
* fixing circular json issue
* fix faulty rebase
* fixing updateStatus
* removing timelion requesthandler registration
* removing double slash
* fixing maps
* add debug statement
* test CI with guard statement
* fixing rebase
* show the spy toggle in an expanded panel on hover
the css was wrong because the expanded panel is no longer inside
gridster. Added tests that would have caught this.
* rename toggleSpyPane to toggleSpyPanel
This fixes issues where properties from the visualizations saved in older versions were not applied to the Visualization.
This also addressed the fontSize of metrics not being applied on the Dashboard.
* provide getFormat function to date_histogram
* move format object creation to time_buckets
* fix broken test
* pass getConfig to field format constructor since field formatters no longer manage config themselves
* fix _agg_config testing of agg without getFormat method. Old test used date_histogram which now has getFormat, so needed a new agg type
* update expect values for area chart data
* fix expect for visualize app vertical bar
* fix expect for visualize app heatmap chart
* [indexPatterns] remove support for time patterns
* Revert "[indexPatterns] remove support for time patterns"
This reverts commit 4263e37c66.
* [indexPatterns] remove ability to create time-based patterns
* [indexPattern/routes] fix export of routes for stub
* [Storage] export Storage class for testing
* [indexPatterns/unsupportedTimePatterns] add tests
* [indexPatterns] focus warning check module
* [indexPatterns/tests] fix method name
* add metion of this change to migration docs
* disable warnings by default until we have a migration tool
* prevent the warning from disapearing
* fix grammar
* enabled warnings in the tests
Recolor Kibana for Accessibility. Attempt to clean up spacing / layout irregularities by adding some level of global variable control. Major changes are:
* better animation against login
* switch to colored kibana logo
* add docs for secondary buttons in kui, addjust hover states
* simplify focus states
* adjust svg rects for discover graph to be lighter
* add ui select overwrite file, adjust new filter selector to match palette changes
* make spy usable in discovery
* panel withHeader removed completely, tests updated
* force timeout, logs indicate that pings are getting stuck
(cherry picked from commit ff6a71819be272253d969a0be681dc9749a0f00d)
* actually reject the promise
* Preserve the saved vis url when using the add new vis link from dashboard
Fixes https://github.com/elastic/kibana/issues/11078
* Store the edit url in browser history as well
* Fix tests by reordering them.
* add a more explanatory comment
* Revert "When on an embedded page, bypass Getting Started gate check (#12040)"
This reverts commit 05293f1c8d.
* Revert "Making tweaks. (#12003)"
This reverts commit aa3fa06f61.
* Revert "Functional tests for the Getting Started page (#11850)"
This reverts commit 099178a7ca.
* Revert "Prevent flicker on Getting Started page (#11826)"
This reverts commit c4b3ade27d.
* Revert "Getting Started page (#11805)"
This reverts commit 32eff371f2.
* Remove check for Getting Started page from navigateToApp
* [indexPatterns] support cross cluster patterns
* [vis] remove unused `hasTimeField` param
* [indexPatterns/create] fix method name in view
* [indexPatterns/create] disallow expanding with ccs
* [indexPatterns/create] field fetching is cheaper, react faster
* [indexPatterns/resolveTimePattern/tests] increase readability
* [tests/apiIntegration/indexPatterns] test conflict field output
* [indexPatterns/fieldCaps/readFieldCapsResponse] add unit tests
* [test/apiIntegration] ensure random word will not be valid
* [indexPatterns/ui/client] remove unused import
* remove use of auto-release-sinon
* [indexPatterns/create] don't allow expand when cross cluster
* [indexPatternsApiClient/stub] use angular promises
* [indexPatterns/create] add tests for base create ui behaviors
- Users can now create choropleth maps. This requires configuring an inner join between the results of a term-aggregation and a reference vector layer. This vector layer needs to be in the GeoJson format. By default, Kibana uses vector layers serverd by a data service hosted by Elastic. Users can also bring in their own layers by adding configuration entries in the kibana.yml. These need to point to a CORS-enabled data service that accepts requests from the Kibana application.
- For clarity, the tilemap is renamed to Coordinate Map.
- A new manifest is published by Elastic. this includes metadata for the available tilemap services, as well as metadata for the available vector data layers.
* attempt to fix dashboard view/edit flaky test
hope to fix https://github.com/elastic/kibana/issues/12014
* Need to wait for global loading indicator to be hidden once top nav is visible
* use Error object for throw
* inline function only used once
* gauge chart
* adding ranges and color options
* adding green to red color pallete
* adding more options
* fixing based on tanya's review
* fixing label positions
* improving range settings
* percentage mode applies to legend
* hidding labels when too long
* updating based on ui rview
* rebasing on master
* adding unit tests
* adding selenium tests
* fixing tests
* adding metric gauge type
* removing metric vis
* adding metric and goal charts
* updating options
* fixing bugs
* fixing based on review from Thomas
* updating icons
* fixing tests
* updating based on last review
* hide some settings if only one range
* fixing tests
* removing unsupported aggs
* fixing defaults
* fixing options
* fixing error with inverse color schema
* adding spacing to info icon
* fixing some tiny issues
* [indexPatterns/field] replace mapping awareness with readFromDocValues
* move link to more details to proper location
* Address kjbekkelund's feedback
* let the prs speak for themselves
* Implement a way to hide write controls from dashboard
* Add roles definition to the saved dashboard object
* Remove roles from dashboard
* Use an angular provider to control the hideWriteControls flag
* Add an api to chrome to show only a single app by id
* Refactor injectVars logic
* Fix tests
* Refactor kibana root controller
* add additional test functionality
* Missed a couple spots for hiding edit controls
* add retry and help text for dash only mode failures
See if it helps. Tests pass locally.
* Move element into screen when clicking
* use shorthand for object creation
* Hide checkboxes, show 'no dashboard' message with the button
* Adding some more functionality to the Getting Started page object
* Using optOut method from Getting Started page object
* Adding functional tests for Getting Started page
This set of tests specifically tests the scenarios under which a user should or should not get redirected to the Getting Started page
* Adding log.debug message
* Conforming to HTML style guide
* Using new GettingStarted page object methods + opting out
* Adding test for nav being shown
* Removing unnecessary line
* Navigate to Discover expecting to be redirected to the Getting Started page
* Trying beforeEach instead of before
* Remove LS data index + load empty kibana index
* Removing unnecessary line
* Fixing order of operations
* Introduce Clone feature in view mode
* Use a new react modal for cloning dashboards
* Fix focus issues and tests
Unfortunately can’t run jest tests outside of the ui_framework at this
time.
* Add tests for dashboard clone modal
* move the jest tests out of the __tests__ directory
It’ll cause failures for the normal unit test runs
* use react instead of angular for overlay and loading of dom element
* Append 'Copy' to the title in the clone dialog so by default it doesn't clash
* address code comments
* [tests/functional] automatically opt-out of getting started page on navigation
* [test/functional/commonPage] avoid circular reference
* [test/functional/commonPage] move check for getting started after url has settled
* [gettingStarted] prevent route resolution by returning halt promises
* [test/functional/commonPage] wait for kibana to load before checking for getting started
* [uiRoutes/setupWork] provide a token that can be thrown to halt setup work
* [ui/routes] rename reference to WAIT_FOR_URL_CHANGE_TOKEN
* address review feedback
This adds the ability to display a filter bar in the Context view and to apply those filters to the queries. It also modifies the link from the Discover view to the Context view to copy the currently defined filters when switching. New filters can be added from within the Context view using the icons in the expanded detail rows.
* fix focused button not being set
Need to do it in a timeout because ng-react hasn’t loaded the react
code yet, so it can’t find the buttons.
* add a test
that would have caught the issue, and also change the default focused
button for the listing delete page since it’s a destructive action.
* Add a comment
* Push focusing of default button into react code
* Push ESC key handling into react as well
* Remove ESC tests in angular form
They don’t pass, I’m guessing because of the way it’s triggered, but
these test cases should now be handled in jest. Also confirmed it
works as expected with the modal.
* Address code review comments
* Use autoFocus