* Getting Started page (#11673)
* Initial code
* Renaming files/folders
* Notes and changes from HTML/CSS review
* CSS changes
* Fixing transform units
* Fleshing out logo circle
* Adding logos
* Un-nesting styles
* Adding kuiText class on <p> elements
* Making shield icon 404 go away
* Using trustAsHtml filter; using registry
* Adding code for registry
* Adding images
* Hooking up the opt-out link
* Fixing linter issues
* Fix issue with refresh bringing back nav
* Removing load_default module
* Use GETTING_STARTED_ROUTE constant
* Allow topMessage to be a directive
* Adding kuiLink CSS class to anchor elements
* Adding alt text to images
* Replace getters with regular methods
* Remove leftover comment
* Removing unnecessary comment
* Fixing typo in comment
* Adding comments for message properties
* Fixing typo in method name
* Defining custom CSS class
* Fixing method call
* Creating custom CSS classes
* Adding documentation links
* Use a instead of button for demo link
* Allow directives in manage and monitor messages
* Refactoring shared code into single ui/public/getting_started folder
* Adding README
* Fixing whitespace in/around links
* Trim messages before setting them
* Decorate in-app links with opt-out attribute
* Opt out of the Getting Started page if the user already has index patterns
* Adding more commentary around expectations of setTopMessage use
* Using ng-src and ng-href attributes where attr values are angular expressions
* Importing the directive before using it
* Using ui/registry for message registries
* Renaming service => helpers to clarify intent
* Adding explanatory comment
* Adding "or"
* Fixing div id
* Breaks out the inject logic into another directive
* Adding Getting Started page object for functional tests
* Consolidate into one registry
* Fixes incorrect classes
* Changes how styles are applied to injected-items items
* Modifying class name per CSS style guide
* Adding getting started doc link
* Removing unused import
* Attempting to fix breaking build
Apparently the Getting Started page is preventing access to Console (Dev Tools, really) so the functional tests for Console are failing. This commit opts the user out of the Getting Started page before attempting to navigate to Console.
* Cleanup on aisle testbed! (#11765)
* Navigate to getting started page so we can opt out of it
* [tests/functional] move screenshots to their own service
* [ftr] add testFailure and testHookFailure lifecycle hooks
* [tests/functional/screenshots] cleanup old screenshots at startup
* [test/functional/screenshots] take screenshots when tests fail
* [cli_plugin/install] fix test
* [ui/scanner] fix test
When a user configures a WMS, we should not use the zoom-settings from the manifest. These depend on the user's license level, and are not relevant when using a 3rd party WMS service.
* [indexPattern/create] fix test subject
* [indexPattern/create] only auto-select when there is more than one time field
* [indexPatterns/create] describe weird timeField auto-selection
* [indexPattern/create] update no-date-field text
* restore functional test changes in 02787e3df5
* Hide the second toast when adding a new visualization straight from dashboard
* fix tests that assume two notifications
* fix another tests that assumes two toasts
* Change expected data to match change in table UI
* fix more expected results for data UI change
* Revert one previous change and fix one other test
* fix last issues
* missed splitting the last array element
* missed splitting the last array element
* Removing "Index contains time-based events" checkbox
* Rename label
* Adding "No Time Filter field" to time field select list
* Using translation for i18n and consistency with label on create form
* More useful verbiage
* Updating copy
* Adding help block below select for added clarity
* Removing functional tests that used time-based events checkbox
* s/INDEX/INDICES/ to be reflect reality
* Fixing logic error
* Updating functional test to match new behavior
* Use controller property instead of inline expression
* More readable variable name
* Migrate Console to kuiButton.
* Convert angular-bootstrap Timepicker and Tabs components to use kuiButtons.
* Convert Timelion to use kuiButtons.
* Convert Visualize and visTypes to use kuiButtons.
- Convert Heatmap vistype to use kuiButtons.
- Convert Visualize editor, AggTypes controls, and Heatmap options to use kuiButtons.
- Convert VisType control rows_or_columns to kuiButton.
- Adjust formatting of kuiButtons in AggTypes controls and Heatmap options.
- Convert Visualization save prompt to use kuiButtons.
- Convert visualize legend to use kuiButtons.
- Convert Visualize Spy to use kuiSelect instead of Bootstrap buttons.
* Convert Notify to use kuiButtons.
- Fix appearance of Notifier countdown.
* - Convert Dashboard to use kuiButtons and kuiMenuButtons.
- Convert Dashboard save panel to use KuiButtons.
* Convert Discover sidebar to use kuiButtons, and have an improved UX and accessibility.
- Convert Discover field chooser to use kuiButtons.
- Convert Discover no-results to use kuiButtons.
- Convert Discover save panel to use KuiButtons.
* Convert filter bar to use kuiButtons.
* Convert fatal splash screen to use UI Framework components.
* Convert number list to use kuiButtons.
* Convert stringify color editor to use kuiButtons.
* Convert timepicker directive to use kuiButtons.
* Convert Index Pattern Management to use kuiButtons.
- Convert Index Pattern Management field editor to use kuiButtons.
- Remove unnecessary ng-class from Create Index Pattern submit button.
* Remove unused global_config.html partial.
* Fix functional tests.
- Rename discover-save-search-btn test subject selector to discoverSaveSearchButton.
- Convert Notifier tests to use kuiButtons.
- Convert functional tests to use test subject selectors instead of relying on btn classes.
- Update HeaderPage and VisualizePage page objects to refer to timePickerGoButton.
- Fix broken functional tests for Discover, Visualize, and Settings.
- Fix failing Discover scripted fields tests.
* Fix visual bugs with FieldChooser string, Notifier buttons, and NumberList.
* Fix Number List so the 'remove' buttons are small.
* Fix FieldEditor to have space between Popularity input and dec/increment buttons.
* Update FieldChooser string partial to have padding around 'Visualize' button.
* Reorder Create Index Pattern logic so local functions are before scope methods.
* Extract some Index Pattern Creation logic into sendCreateIndexPatternRequest and getDefaultPatternForInterval services.
* Use UI Framework typography components for Index Pattern Creation header.
* Separate user-specified variables for configuring the index pattern from controller variables, which just change the UI state.
* Rename index to newIndexPattern for clarity.
* Use controllerAs and fat arrow functions in Create Index Pattern.
* [functional_test_runner] replace functional testing tools with custom/pluggable solution
* [functional_test_runner] Convert unit tests to commonjs format
* [functional_test_runner] Fix dashboard test in wrong mode
* [functional_test_runner] Add dashboardLandingPage test subject
* [functional_test_runner] Get Visualize page object
* [functional_test_runner] Fix outdated references
* [functional_test_runner] Fix more outdated refs
* [functional_test_runner] Remove duplicate tests
* [functional_test_runner] Improve test readability
* [functional_test_runner] 😞 So many duplicate methods
* [functional_test_runner] Move mgmt `before` outside toplevel describe
* [functional_test_runner] Settings page obj missing methods
* [functional_test_runner] Add improvements from @gammon
* [functional_test_runner] Fix return statements in async funcs
* [functional_test_runner] Move before() to correct scope
* [functional_test_runner] Add after() hooks to remove index patterns
* [functional_test_runner] Attempt to fix vertical bar chart tests
* [functional_test_runner] Clean up
* [functional_test_runner] Reinstate unit tests
* [functional_test_runner] Set default loglevel back to info
* [functional_test_runner] Replace `context`s with `describe`s
* [functional_test_runner] Better error handling
* [functional_test_runner] Add in new Tile Map tests
* Incorporate changes from master
* [functional_test_runner] validate that every test file has a single top-level suite
* Update contributing doc with link to full doc
* [docs] Spelling and grammar fixes
* docs: writing and running functional tests
* [docs] Move plugin doc to plugin area
* [docs] Housekeeping. Doc in wrong place
* [docs] Remove dup doc file
* [grunt] Only run mocha_setup when running tests, not every grunt task
- adds the geo-centroid metric as the new default for visualizations
- various bug fixes and improvements
- avoid unnecessary calls to manifest
- avoid map flicker when zooming
- enable scroll/pinch/touch zooming
- avoid heatmap errors
- ensure map fills screen in dashboard
- ensure fit works consistently
- relax tilemap constraints
- remove support for multi-maps
- this refactor sets the stage for new vector map visualization which will reuse the same map components
* Hide the time interval select on blur
* Show scale warning on discover and keep drop-down
* Show scale without need to hover over info icon
* Remove unused variables
* Fix discover page object tests
* Fix getChartInterval in functional test
* As a part of bringing functional testing to plugins, esArchiver gives these plugins a way to capture and reload es indexes without needing to write a bunch of custom code. It works similarly to the elasticDump and ScenarioManager tools that it replaces.
Differences:
- Streaming implementation allows for much larger archives
- CLI for creating and using archives
- Configurable archive location
- Stores the data in gzipped files (better for source control, searching, large archives)
- Automatically identifies and upgrades Kibana config documents
Methods:
- `#load(name)`: import an archive
- `#loadIfNeeded(name)`: import an archive, but skip the documents what belong to any existing index
- `#unload(name)`: delete the indexes stored in an archive
CLI operations:
- `./bin/es_archiver save <name> [index patterns...]`: save the mapping and documents in one or more indexes that match the wild-card patterns into an the `<name>` archive
- `./bin/es_archiver load <name>`: load the mapping and documents from the `<name>` archive
* [functional_tests/common/nagivate] check for statusPage
* [es_archiver] move bins into new scripts dir
* [functional_tests/apps/context] use esArchiver
* [esArchiver] general improvements after showing to a few folks
- remove auto-upgrading config doc logic (until we have better access to kibana version info)
- export unload command
- remove preemptive checks in favor of reacting to errors
- use type "doc" vs "hit" for doc records (consistency)
- wrote a bunch of pending tests to think though and plan
* [esArchiver] make log a stream that writes to itself
* [esArchiver] fill in stats and archive format tests
* [esArchiver] splitup action logic
* [esArchiver/cli] fix cli --help output and comment
* [esArchiver] remove type-based param coercion
* [esArchiver/log] use strings for log levels
* [esArchvier] remove unused var
* [esArchiver/indexDocRecordsStream] add tests
* [esArchive] fill in remaining tests
* [esArchiver] fix dem tests
* [eslint] remove unused vars
* [esArchiver/loadIfNeeded] fix call to load()
* [esArchiver] remove loadDumpData helpers
* Start at view/edit mode 4
* Revert back to save panel
- Get rid of `clone`
- Get rid of rename
* Move order of top nav component around so no chance of hitting Edit -> Cancel
* Update "lose changes" confirmation dialog
- Change the string and button text
- Set default focus on the cancel button.
* Remove DashboardViewMode
It was previously used when viewMode wasn’t stored in appState, in
order to keep an unsaved dashboard, that was just saved, in Edit mode.
This is unnecessary in the latest iteration.
* Pull time filter out of dashboard_state
* Fix edit controls bug, add more tests, make other tests more stable.
* Remove unnecessary logic, unapplied query bug fix, code clean up
* Fix bug on filter reloading, add tests & clean up
* Fix issue with move and remove icons showing up in expanded panel mode
and add tests to catch it.
* Fix issue with lose changes not resetting panel state
and add tests.
* General Clean Up
- Merge function only used in one spot inline.
Add comments
* address code review comments
* Stop using static + class to namespace functions
Instead, export each function individually.
* Show dashed border on maximized panels in edit mode.
* Be more methodical about ensuring the modal dialog hides before continuing.
* abide by new no unused vars rule
* Add a dropdown to filter indexed fields by type
Added tests and test subjects for index pattern filters
Use UI Framework components
Change index field filter to use kuiFieldGroup, move filters below tabs
* Dynamically load indexed type filter based on existing field types
* Iterate over fields once to get types / languages
* Only check scripted flag for checking scripted lang fields, all other
fields should have their type added to type filter
* Initial import
* updating the editor width to match the new specs
* Adding tribe node support
* Adding tests for server libs
* removing bluebird
* removing extra cruft
* Fixing the font sizes
* Fixed the updating code
* Adding brushing
* Fixing linting issues
* Adding global filters
* Adding missing packages
* Default gauge style to half circle
* Fixing the markdown css bug
* Adding tests for the get_vis_data api
* Adding time offset
* Adding time offset to each type
* fixing bugs from time offset
* adding index pattern option to series
* Adding index pattern overrides
* Adding index pattern overrides
* Fixing tests
* Fixing brushing in the vis editor
* Changing the label
* Change the behavior of selecting a pipeline agg when only one exists.
* Refactoring series a bit
* Changing series options to just options
* Making sure we honor the toaster container height
* Adding first tests
* renaming vis_config to panel_config
* renaming vis_config to panel_config
* Adding more tests
* adding more tests
* removing api subdirectory
* refactoring get_vis_data (breaking it up and removing unused imports)
* reorganizing the visualization directory
* Re-organizing directory layouts and moving things to more logical places
* Refactoring React compontents to use ES6 syntax and adding propTypes for each. Also refactored out splats as much as possible.
* Adding serial differencing
* Refactored gauge to use 2 components instead of 4
* Finishing react refactor on visualizations. Consolidated legned funtionality
* Refactoring series config and removing a bunch of duplicate code
* fixing series config name
* Fixing numbers and strings (doesnt matter which it is); Fixing classname
* Changing the way the dark theme works
* Adding new vis into list for test
* Adding empty bucket check
* Fixing the index patterns in the aggs
* Fixing typo
* Refactoring vis_data
* Fixing std_metric
* Fixing refresh-hack
* Adding tests for get_splits, get_last_metric, map_bucket
* Fixing the error handing
* removing restrictions
* Sometimes values are strings or numbers... it doesn't matter
* Adding new color options for splits
* Fixing colors
* fixing size
* Adding support for fitlers agg
* Fixing tests
* Fixing splits for filters
* Fixing Top N to work better with fitlers
* Adding annotation editor
* initial work for annotations
* Finalizing annotations
* Fixing label
* making it expandable
* Fixing hacks fixed by #10175
* Fixing bars to use the same stacking options as lines
* Getting rid of align by colons
* removing unused depends
* removing unused depends
* Changing to readable lodash function
* Adding missing parens
* refactoring custom color picker
* Removing string refs and converting uncontrolled components
* Fixing the controlled components where value maybe null; converting error to css
* refactoring styles from components
* fixing the refresh behavoir borked by fullEditor
* Adding the executor service
* Fixing the test directories
* fixing save
* Adding filter ratios
* Fixing controlled components
* Trying to fix the weird typing
* Fixing offset bug with days
* Adding percentile rank
* Fixing yaxis updates; fixing percentile rank layout; adding steps to line chart
* removing unused depends
* Fixed a bug with the index patterns updating; fixed bug with charts rendering too much
* Fixing tests
* Commenting out React tests because the ENV must have change and they are no longer working
* Moving bucket transform
* moving calculate auto
* Moving calculate_indices
* moving extended_stats_types && get_agg_value
* moving get_buckets_path
* moving get_sibling_agg_value
* moving parse_settings
* moving series_agg
* Moving unit_to_seconds
* Fixing tests
* Fixing per PR
* Renaming vars to make it more clear what's happening
* Changing the way testible functions are exported
* fixing tests
* removing unused imports; fixing typos; fixing package name
* Name has to match the plugin path
* Fixing typos; removing unused imports
* fixing tests
* rearanging and removing unused imports
* Fixing a bug with unque names for radio buttons on the same form
* Fixing filter ratio to use a metric instead of just count
* fixing a bug with the new filter ratios
* Fixing the file path from the #8
* Fixing renderComplete trigger; Fixing embedded mode; Changing names for Timelion and Time Series Visual Builder
* Fixing name
* Fixing docs
* Fixing a typo for the field select for terms splits
* Fixing tests
* Warn if the title is a duplicate
* warn when copyOnSave is checked. add a test
* update message
* fix tests
* Fix issues with substring matching
add more tests.
* make case insensitive and return matching title
* Fix bug caused by subtle difference between this.type and type
Add a comment and rename one of the variables to make the distinction
clearer.
* add debug messages.
* fix tests again
* uncomment out tests
* more debug messages
* save more screenshots
* Need to wait till save finishes or the page may redirect the url after the page has navigated away
* address code review comments
This adds a link to the detail view of discover rows to switch to a view of the documents immediately before and after the selected document. Since that view uses the timestamp field of the index pattern, it is only available for time-based indices.
See #9198 for detailed screenshots.
* Adding attributes to be used by sharing
* Moving the shared-item tags for dashboard panels
* Switching from shared-item-title/description to just title/description
* Removing move noise
* Fixing typo
* Adding data- prefix before attributes, began writing tests
Adding shared-item title tests
Switching up the panel tests
Adding description tests
Fixing linting
Adding dashboard timefilter test
Adding visualization shared-item tests
Adding shared-timefilter tests
Adding discover shared-item tests
* Fixing shared-items-count on dashboard
* Fixing functional test data for discover and visualize
* adding vislib chart grid
* updating vislib to correctly render all new features
* adding new options to kibana visualizations
* update vis icon on save
* updating documentation
* fixing unit tests
* cleaning up
* updating based on UI review
* adding visualize editor unit tests
* selenium tests
* additional option tabs
* some more changes to the tabs/options [thanks CJ]
* going back from Category/Value axis to X/Y axis
* fixing unselected dropdown options
* updating based on last UI review
* updating based on last review
* updating based on last review
* fixing issue with axis titles
* allowing to specify only upper or only lower data bound
* updating based on brandons review
* fixing horizontal bar chart labels
* fixing test
* adding backward compatibility
* updating based on last review
* fixing selenium tests
* Stabilize tests involving absolute timepicker
The asynchronous nature of angular's digest cycle and the page rendering
in the browser can lead to situations in which
`isGlobalLoadingIndicatorHidden()` returns true because the loading
triggered by the previous action has not yet started. In this case
subsequent actions incorrectly assume the loading has already been
completed. This is probably responsible for the flakiness described in #10302.
The newly introduced `waitUntilLoadingHasFinished` first waits for a
duration up to `defaultTimeout` for the loading indicator to appear
before waiting for it to be hidden again. In the best case this will
reduce the false positive rate of `setAbsoluteTimerange()`. In the worst
case the function will wait `defaultTimeout` longer than when just using
`isGlobalLoadingIndicatorHidden`.
fixes#10302
* [npm] upgrade babel
The upgrade to babel 6 requires an upgrade to all of the associated modules, which meant that a few other things changed at the same time. The most notable is the way that we handle our babel-options, which is now done with an npm module and includes using the babel-loader's "presets" query string param.
This meant changes to the babel_options.js module and extending it to help setting up the "babel-register" module, which was previously copy-pasted in several places.
* [mtodules] upgrade to support babel6 module semantics
* [eslint] fix lint errors
* [babel] ignoer massive fixture files
* [cli/errors] use Object.setPrototypeOf since subclassing Error is broken
* [babel] Upgrading core babel libraries
[babel] Use WIP babel-6-fix branch of babel-preset-kibana
* Fix broken test
* [babel] Reverse unnecessary module.exports changes
* Fix notifier
* Use babel presets and plugins directly
* [babel/options] resolve preset/plugins paths for better plugin compatibility
* [babel/options] use babel-preset-env for correct node settings
* [babel] cache babel compilation in webpack like we thought we were
* Refactor Visualize Wizard to use explicit controller names, instead of defining them dynamically.
* Add landing page with table to Visualize app.
* Update Visualize wizard UI.
* Add kuiIcon--basic and support icons in Table component. Display icons in Visualize landing page.
* Refactor Visualize Wizard templates to use import syntax.
* Set kuiViewContent width to 100% to avoid it shrink wrapping its content.
* Move ToolBar buttons to the right side. Remove labels and add tooltips.
* Remove unused Visualize load menu template.
* Disable timepicker in Visualization listing.
* Change Visualize route names. Add omitPages attribute to breadcrumbs directive. Make Visualize breadcrumbs into links.
* Remove Open and New menu buttons from Visualize.
* Add ConfirmationModal for deleting visualizations.
* Implement sorting for name and type columns in Visualize listing.
* Refactor Visualize routes into VisualizeConstants file. Fix functional tests.
* Add pager_controls directive and pager service. Add pagination to Dashboard and Visualize landing pages. Change Dashboard listing to use hrefs for each dashboard.
* Use ng-if instead of ng-hide to hide/reveal Table action buttons in Dashboard listing.
* Redirect from old Visualize wizard routes to new ones.
* Use ViewContent and Title components in Visualize wizard.
* Fix Visualize and Dashboard listing table logic so that selection only applies to the current page of items.
* Paging clears the selection.
* Searching clears the selection.
* Sorting clears the selection.
* Use consistent "Create" terminology in both Visualize and Dashboard for creating new items.
* Use NoItems and PromptForItems components in Visualize listing view.
* Use $injector to inject dependencies in Visualize and Dashboard listing.
* Introduce dashboard landing page
Still TODO:
- Add clickable breadcrumbs
- Remove New and Open top nav options
* use clickable breadcrumbs instead of 'New' and 'Open' nav items
* code cleanup
improve tests
* Add new empty dashboard styling
* Fix selenium tests
* Address code review comments
- rename bread_crumb_url => bread_crumb_urls
- fix reporting link in dash (separate PR)
- Use NoItems instead of PromptForItems when searching
- Style fixes
* Use a constant for the landing page url
* Fix tests
* Restructure dashboard files and folders
* Try to stay DRY
avoid duplicate ‘dashboard’ naming when unnecessary
* rename index => dashboard and add an index.js with imports
rename style
* un-dig