* [Lens] UI for reference-based functions
* Fix tests
* Add a few unit tests for reference editor
* Respond to review comments
* Update error handling
* Update suggestion logic to work with errors and refs
* Support ParamEditor in references to fix Last Value: refactoring as
needed
* Fix error states
* Update logic for showing references in dimension editor, add tests
* Fix tests
Co-authored-by: Joe Reuter <johannes.reuter@elastic.co>
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
* Move applyFilter, selectRange, valueClick triggers to data/embeddables.
* Update imports.
* Remove embeddable references to non-existent data plugin dependency.
* remove data mocks from embeddable
* Remove query, filters, timeRange from EmbeddableInput and move to apps.
* Remove data plugin imports from embeddable test samples.
* Remove circular dependencies caused by expressions renderer handlers.
* Update circular deps allowList.
* Remove data dependency on embeddable.
* Revert accidental data plugin change.
* Fix new circular deps issues.
* Update generated docs.
* Fix type errors in vis_type_xy
* Fix inspector data table.
* [Lens] (Accessibility) Added focus state and accessible name to suggestions
* Apply suggestions from code review
* Update x-pack/plugins/lens/public/editor_frame_service/editor_frame/suggestion_panel.tsx
padding oops
* cr
* [Lens] allow drag and drop on xyChart for y dimension
* wip
* tests
* dimension panel fix
* eslint
* fix test
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
* bump version to 4.1.1-rc
* fix code to run kbn bootstrap
* fix errors
* DO NOT MERGE. mute errors and ping teams to fix them
* Address EuiSelectableProps configuration in discover sidebar
* use explicit type for EuiSelectable
* update to ts v4.1.2
* fix ts error in EuiSelectable
* update docs
* update prettier with ts version support
* Revert "update prettier with ts version support"
This reverts commit 3de48db3ec.
* address another new problem
Co-authored-by: Chandler Prall <chandler.prall@gmail.com>
* add search syntax parsing logic
* fix ts types
* use type filter in providers
* move search syntax logic to the searchbar
* fix test plugin types
* fix test plugin types again
* use `onSearch` prop to disable internal component search
* add tag filter support
* add FTR tests
* move away from CI group 7
* fix unit tests
* add unit tests
* remove the API test suite
* Add icons to the SO results
* add test for unknown type / tag
* nits
* ignore case for the `type` filter
* Add syntax help text
* remove unused import
* hide icon for non-application results
* add tsdoc on query utils
* coerce known filter values to string
Co-authored-by: Ryan Keairns <contactryank@gmail.com>
* update deps
* update rules
use type-aware @typescript-eslint/no-shadow instead of no-shadow. do not use no-undef, rely on TypeScript instead
* fix or mute all lint errors
* react-hooks eslint plugin fails on ? syntax
* fix wrong typings in viz
* remove React as a global type
* fix eslint errors
* update version to 4.8.1
* fix a new error
Jest tests are currently organized into main configuration files (src/dev/jest/config.js and x-pack/dev-tools/jest/create_jest_config.js). Both of these are similar, but very slightly due to previously being in separate repositories. This change consolidates the scripts referenced in those configs and moves them to the `@kbn/test` project.
OSS contained an alias for `test_utils`. Those aliases have been removed in favor of importing these utilities from `@kbn/test/jest`
Blocker to #72569
Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>
* [Lens] Use entire layers, not specific columns
* Fix types
* Move all of state_helpers over
* Fix tests
* Fix crash and add tests to prevent future issues
* Prevent users from dropping duplicate fields
* Respond to review feedback
* Fix review feedback
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
* ✨ First pass with visualization validation + error messages
* 🔥 Remove indexpattern error handling for now
* 🏷️ Fix type issues
* ✅ Add getErrorMessage test for data table
* ✅ Add tests for pie and metric error messages
* 🌐 Fix i18n checks issues
* 🐛 Fix last issue
* ✅ Add more tests for the XY visualization validation code
* 👌 Included all feedback from first review
* ✏️ Off by one message
* 🌐 Fix i18n duplicate id
* 🌐 Fix last i18n issue
* 🐛 Fixed a hook reflow issue
* ♻️+✅ Reworked validation flow + tests
* 🏷️ Fix type issue
* 🐛 Improved XY corner cases validation logic
* 🐛 Fix empty datatable scenario
* ✨ + ✅ Improved error messages for invalid datasources + tests
* 🌐 Add missing i18n translation
* 🏷️ Fix type issues
* 🌐 Fix i18n issues
* ✨ Filter out suggestions which fail to build
* 🚚 Migrate datatable validation logic to the building phase, handling it as building state
* 🏷️ Fix type issue
* ✏️ Add comment for future enhancements
* ✏️ Updated comment
* :world_with_meridians: Refactor axis labels
* 🌐 Reworked few validation messages
* 🐛 Fix break down validation + percentage charts
* ✅ Align tests with new validation logic
* ♻️ Fix suggestion panel validation to match main panel
* 🌐 Fix i18n issues
* 🔧 Fix some refs for validation checks in suggestions
* 🐛 Fix missing key prop in multiple errors scenario
* 🐛 Fix swtich issue from XY to partition
* 🌐 Fix i18n messages and aligned tests
* 🐛 Fix suggestions switching bug
* :refactor: Add more validation + refactored validation logic in a single place
* ✏️ Add note about lint hooks disable rule
* 🚨 Fix linting issue
* 🏗️ Add infra API for datasource advanced validation
* ✅ Align tests with new API
* ✅ Fix type issues in tests
* 👌 Early exists added
* ✨ Add layers groups to the API
* ✅ Fix some broken test after the validation change
* 👌 Move to disctionary shape
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
* [Visualizations] New vis wizard
* Update functional tests
* Create oss plugins for maps and lens and unregister alias function
* Add new plugins to .i18nrc.json
* Add readme and codeowners to the new plugins
* update docs
* fix tests
* fix types
* fixes
* Update development docs
* fix oss functional tests
* Fix jest and x-pack functional tests
* Fix functional test
* changes on the layout
* Cleanup and responsiveness
* cleanup unecessary code
* add common folder to the new OSS plugins
* remove unecessary translations
* Update limits.yml file
* Fix basic label
* Add experimental badge on controls vis
* Nice improvements
* fixes
* Improving styles
* Making modal go full height on smaller screens
* Fixing sass lint warning
* fix lint error
* fix internationalization error
* PR fixes
* PR changes
* Use useCallback where possible
* Remove translations that need to be translated again
* Lazy Load wizard modal
* Remove legacyMapVisualizationWarning
* Import the OSS plugins constants from the plugins
* Export constant from lensOss
* Change the new oss plugins from OSS to Oss
* Add a new line to the kibana.json files of the new plugins
* New nit fix
* Fix spaces
* Change the texts for the first step of the modal
* Fix test
* Fixes some of the PR comments
* Add onClick funtionality to the entire aggregation based card
* Cards description changes, introduce a copyFromRoot method to solve the problem of when disabling the x-pack plugic, to also disable the oss
* Create new FTR for testing the functionality of the wizard when both maps and lens apps are disabled
* fix eslint error
* Change groupTitles and descriptions
* Change input vis description
* Remove the copyFromRoot from the signature of the ConfigDeprecationFactory and export it from the main entrypoint
* Make the disabled cards badge clickable
* Changes from code review
* Fix functional tests failures
* Rename groupTitle to titleInWizard to be more specific
* Change vega vis note
* minor design changes
* fix problem with plugins list docs
* Retrieve maps and lens landing page from docs service and add tracking url param
* Fix funtional test for the new dashboard flow
* Fix logic in alias registry for removing the discardOnRegister alias
* no need to remove the alias entry from the discardOnRegister array
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: miukimiu <elizabet.oliveira@elastic.co>
* create xpack plugin skeleton, start to implement management section
* add tag creation modal
* first implementation of the tags table
* use InMemoryTable
* add edit modal and delete action
* update plugin list
* add tag list, fix types
* add capabilities check on client-side
* add tag combo box component
* add missing i18n keys
* fix privilege FTR tests
* add base structure for FTR tests
* fix feature ftr test
* use string literals for i18n
* create savedObjectsTaggingOss plugin, move API types to oss plugin, start to wire to SO management page.
* update plugin list
* fix types
* allow to use `_find` with multiple references
* add FTR test for _find API on references fields
* add _find integration tests
* update generated doc
* start to implement tag filtering on SO management section
* update generated docs
* wire tagging API to dashboard listing page
* fix i18n namespace
* fix type & tests
* update dashboard listing snapshots
* adapt FTR listingTable service to search for parsable queries
* wite tagging API to visualize listing
* update tagging plugin limits
* add server-side and client-side validation for tag create/edit
* rename title field to name
* fix types
* fix types bis
* add removeReferencesTo API to SOR/SOC
* update generated doc
* add server-side unit test for `savedObjectsTagging` plugin
* move tagging API types to its own file
* add savedObjectsTaggingOss mock
* add tags_cache tests
* add tests for client-side tag client
* extract uiApi to distinct files
* various API improvements
* add more tests
* add link between tag and so management sections + add connection counts
* add base functional test suite for tagging
* add more FTR tests
* improve feature control func test
* update codeowners
* update generated doc
* fix access to proxy modal
* adapt SO save modal to allow to add tag field
* add SO decorator registry and tag implementation
* add unit tests for SO tag decorator
* add functional tests for visualize integration
* add tag SO read permission for vis/dash feature
* add RBAC api integ tests
* add API integration tests
* add test for getTagConnectionsUrl
* add SOM test suite
* add dashboard integration suite
* remove test line
* add missing unit tests
* improve API types doc
* fix create modal save button label
* remove console.log
* improve doc
* self review
* add refresh interval for tag cache
* improve page object doc
* minor cleanup
* address review comments
* small layout fixes
* add initial focus
* use lazy accessor for tag request handler context
* adapt SOM export and export route to handle references
* remove icon from feature config due to master changes
* fix SO table tests
* update generated docs
* sort tags by name in filter dropdown and listing component
* wire SO tagging to dashboard save modal
* fix types
* - add 'create tag' action in tag selector
- add notifications on update/create/delete from management
- delete modal wording
* add description max length validation
* remove real-time validation
* fix i18n bundle id
* update expected size of savedObjectsTagging plugin
* use own useIfMounted
* update limit again, contract components cannot be lazy loaded atm.
* math is hard
* remove single usage of lodash for bundle size
* add async imports for create/edit modal
* add FTR test for 'create tag' action from tag selector
* allow 'create new' option to prepopulate name field
* extract savedObjectToTag
* add advancedSettings read user for security api_integ suite
* add audit login for security client wrapper
* use import type when possible
* wire SO tagging to lens visualization
* fix lens jest test
* Fix `create tag` option being selected when closing the selector dropdown
* add sorting to tag column from getTableColumnDef
* address some of restrry comments
* rename tag selector's setSelected option to onTagsSelected
* fix audit logging even type for saved_object_remove_references
* update plugin size limit to current size
* adapt maxlength validation wording
* remove selection column until we have batch action menu
* remove connections link when user lack read privilege to savedObjectManagement
* forbid registering multiple SO decorators with the same priority
* add so decorator test
* extract getTagFindReferences and create API mock
* update audit-logging ascidoc
* doc nit
* throw conflict error if update returns any failure
* use refresh=true as default
* wording nits
* export: rename `references` to `hasReference`
* update generated doc
* set description max length to 100
* do not initialize tag cache on anonymous pages
* split fetchObjectsToExport into two distinct functions
* change tag client `delete` call order
* tsdoc nits
* more nits
* add README for oss plugin
* add oss plugin start tests
* SavedObject.find: rename `references` to `hasReference`
* change section description label
* remove url prefix constants
* last nits and comments
* update generated doc
* [lens] fix unhandled promise rejection when saving Lens with duplicate title
* more clean up
* restore getDisplayName, used by return of checkForDuplicateTitle
* fix jest test
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
* reduce padding on lens visualizations in dashboard
* tweak padding and axes title colors to match lens
* remove faux padding (border) to match lens padding
* update snapshots
* Revert "update snapshots"
This reverts commit c63cf2bf1c.
* update functional test baseline screenshot
* Create lens action and unregister the visualize one
* remove console
* Implement Discover to Lens, wip, missing tests
* Add unit tests
* fix embed lens to empty dashboard functional tests
* fix suggestions on save
* Fix bug on save button, query and filters should be transferred from discover
* Add functional test for the navigation from Discover to Lens
* PR update after code review
* unregister visualize action only if the action exists
* Change the test to not be flaky
* Move suggestions to editor frame and hide the emptyWorkspace for visualize field
* Update ui actions docs
* Add a retry to remove test flakiness
* Fix bug of infinite loader when removing the y axis dimension
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
* Making saveMethod mandatory in attribute service
* Making unwrap method mandatory
* Making book embeddable respect new attribute service
* Remove savedObjectsClient from attribute service
* Add checkForDuplicateTitle method to book embeddable
* Make options mandatory on attribute service
* Changing Lens attribute service
* Somw more typescript fixes
* Fixing attribute service typescript and tests
* Fixing typescript errors
* Unsetting feature flag
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
* Remove wrapping div of DragDrop and pass props to child
* Using EuiHighlight
* Basic styles in for all DnD states
* Fixing dimension button styles
* Fix FieldButton to accept `…rest` props
* A few other minor fixes
* Fixed horizontal scroll of error message
* Quick fix for invalid link
* wip, redsign the xy axis general settings
* pie chart settings. fix tests, initial implementation
* Fix Internationalization
* Cleanup
* remove unused translations
* Add test to check that right axis is enabled
* fix test
* remove unecessary translation
* Added icons and cleaned up some of the visuals for grouped buttons
* Fix types
* Axis Settings Popover Reusable Component
* Legend Popover Reusable Component
* Cleanup unused translations
* Fix right axis behavior
* Revert yLeftTitle to yTitle to avoid migration
* PR fixes
* identify which axis is enabled
* Change the logic on enabling the y axes popovers
* Adjust axis popover on horizontal bars
* fix failing test and change the logic of fetching the y axis titles
* Simpify the axis title logic, make the toolbar repsponsive, add TopAxisIcon
* Ui Changes on legends popover
* Cleanup and more unit tests
* use groupId instead of index to take under consideration all possible scenarios
* fix gridlines
* Remove ts-ignore from icons and move toolbar button to shared components
* Workspace toolbar wraps on smaller devices
* Tooltip on Toolbar appears only if the button is disabled
* clean up
* Add missing translations
* fix eslint
Co-authored-by: cchaos <caroline.horn@elastic.co>
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
* [Lens] Drag to replace
* Add jest tests for drag and drop
* Fix bug in dragging to empty
* Hide dragged dimension when drag starts
* Make table metrics required
* Update class names
* Implement styles on non-droppable items
* Replace drag and drop image in docs
* Remove extra specificity
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
* [Lens] Add styling options for x axis on the settings popover
* ts related changes
* Changes to the popover's design and y-axis implementatin
* fix types and add unit tests
* Add extra translations
* Fix functional test and change the logic of the yTitle
* fixes
* fix showTitle settings bug
* Fix ticklabels bug on y axes
* fix some tests
* Change the user flow on x and y titles on settings popover and enable the gridlines by default
* disable linter warning
* PR Comments
* Add a comment to callback to explain the decision to listen only to open changes
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
Fixes#71461 regression since 7.7
New state syncing utils didn't properly handle errors,
Errors happening during URL parsing or writing wasn't handled, so state syncing could stop or in worth case blow out. (see #71461)
There are not much scenarios where missing proper error handling could really impact users, except the one described in #71461:
Kibana users state:storeInSessionStorage
Users often intuitively share hashed dashboard urls directly
When someone opens those urls - there is a blank screen with warning
In 7.6 - dashboard would still load with default state.
Since 7.7 these still could be achieved by removing query params for URL, but it is not obvious for regular users.
This PR makes sure that behaviour is similar to one we had before 7.7.
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
* improve test stability
* query string input manager (needed for search demo)
* docs
* dashboard
* Fix jest
* mock fix
* Allow restoring a saved query
* sync url
* Luke's fix to test
* cleanup
* lens jest tests
* docs
* use queryStringManager.getDefaultQuery
Don't sync query to global state
* Update app.test.tsx
lens mock
* jest fix
* jest
* use new api in the example
* Rename state param to query to match url state
* Apply changes to discover
* Update src/plugins/data/public/query/query_string/index.ts
Co-authored-by: Anton Dosov <dosantappdev@gmail.com>
* Improve query string state manager
* Cleanup dashboard code
* Handle refresh button
* Set initial dashboard state
* visualize state
* remove unused
* docs
* fix example
* fix jest
* fix filter app state in discover
* fix maps test
* jest
Co-authored-by: Anton Dosov <anton.dosov@elastic.co>
Co-authored-by: Anton Dosov <dosantappdev@gmail.com>
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
* Fix dimension popover layout and color picker “Auto”
* Created ToolbarButton
* Move disabled help text to tooltip for missing values
* Darker side panel backgrounds
* Adding to .asciidoc about where to put the SASS import
* Moving `SASS` guidelines to STYLEGUIDE.md
* Fix keyboard focus of XY settings popover
* Fix dark mode