Commit graph

73 commits

Author SHA1 Message Date
Kibana Machine
97e3bbd891
[presentation] Create Expression Input (#119411) (#120413)
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>

Co-authored-by: Clint Andrew Hall <clint.hall@elastic.co>
2021-12-03 15:05:07 -07:00
Catherine Liu
a4dd96a7b9
Revert "Revert "[Canvas] By-Value Embeddables (#113827)" (#116527)" (#117613) (#117751)
* Revert "Revert "[Canvas] By-Value Embeddables (#113827)" (#116527)"

This reverts commit 9e6e84571f.

* Fix ts error

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-11-10 13:06:43 -07:00
Spencer
7d3d79e6a1
[8.0] [eslint] enable type-specific lint rules (#114184) (#117444)
* [eslint] enable type-specific lint rules (#114184)

* [eslint] enable type-specific lint rules

* autofix violations

* duplicate eslint-disable to new export statement

Co-authored-by: spalger <spalger@users.noreply.github.com>
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
# Conflicts:
#	src/plugins/share/common/index.ts

* autofix more types

Co-authored-by: spalger <spalger@users.noreply.github.com>
2021-11-04 03:02:56 +00:00
Kibana Machine
4359e708b0
[8.0] Revert "[Canvas] By-Value Embeddables (#113827)" (#116527) (#116539)
Co-authored-by: spalger <spalger@users.noreply.github.com>
Co-authored-by: Spencer <email@spalger.com>
2021-11-01 14:17:15 -06:00
Catherine Liu
bacd7f91dd
[Canvas] By-Value Embeddables (#113827)
* [Canvas] Generic embeddable function (#104499)

* Created generic embeddable function

    Fixed telemetry

    Updates expression on input change

    Fixed ts errors

Store embeddable input to expression

Added lib functions

Added comments

Fixed type errors

Fixed ts errors

Clean up

Removed extraneous import

Added context type to embeddable function def

Fix import

Update encode/decode fns

Moved embeddable data url lib file

Added embeddable test

Updated comment

* Fix reference extract/inject in embeddable fn

* Simplify embeddable toExpression

* Moved labsService to flyout.tsx

* Added comment

* [Canvas] Adds Save and Return Workflow (#111411)

* [Canvas] Adds editor menu to Canvas (#113194)

* Merge existing embeddable input with incoming embeddable input (#116026)

* [Canvas] Extract and inject references for by-value embeddables (#115124)

* Extract/inject references for by-value embeddables in embeddable function

Fixed server interpreter setup

Register external functions in canvas_plugin_src plugin def

* Fixed ref name in embeddable.inject

* Fixed ts errors

* Fix missing type error

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-10-26 17:25:06 -07:00
Tyler Smalley
4681a80317
[DX] Upgrade prettier to v2.4.0 (#112359)
Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>
2021-09-19 22:34:30 -07:00
Michael Marcialis
4dc72140be
Account for presence of top banner when EuiDataGrid and Canvas are full screen (#111038)
* account for banners when data grid is full screen

* account for banner when canvas is full screen

* change height per feedback

* add withKibana

* rm withKibana; move vars out of Fullscreen

* Use hasHeaderBanner$

* add banner height var comments

* fix ts error

Co-authored-by: Catherine Liu <catherine.liu@elastic.co>
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-09-13 11:58:01 -04:00
Jean-Louis Leysens
02a6eeb69f
[Canvas/Reporting] Migrate Canvas to V2 reporting (#109860)
* first iteration of canvas reporting using v2 PDF generator

* updated jest test

* made v2 report URLs compatible with spaces and simplified some code

* remove non-existent import

* updated import of lib

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-09-06 13:44:47 +02:00
Corey Robertson
d3774519c0
[Canvas] Adds references extract/inject for Workpads (#109874)
* Register embeddable functions server side.  Adds reference extraction/injection to workpads

* Clean up

* Fix Types

* Update API docs

* Remove API doc from expression (bad conflict resolution)

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-08-31 09:45:48 -04:00
Yaroslav Kuznietsov
b352976b3b
[Canvas] Expression reveal image. (#101987)
* expression_reveal_image skeleton.

* expression_functions added.

* expression_renderers added.

* Backup of daily work.

* Fixed errors.

* Added legacy support. Added button for legacy.

* Added storybook.

* Removed revealImage from canvas.

* setState while rendering error fixed.

* tsconfig.json added.

* jest.config.js added.

* Demo doc added.

* Types fixed.

* added limits.

* Removed not used imports.

* i18n namespaces fixed.

* Fixed test suite error.

* Some errors fixed.

* Fixed eslint error.

* Removed more unused translations.

* Moved UI and elements, related to expressionRevealImage from canvas.

* Fixed unused translations errors.

* Moved type of element to types.

* Fixed types and added service for representing elements, ui and supported renderers to canvas.

* Added expression registration to canvas.

* Fixed

* Fixed mutiple call of the function.

* Removed support of a legacy lib for revealImage chart.

* Removed legacy presentation_utils plugin import.

* Doc error fixed.

* Removed useless translations and tried to fix error.

* One more fix.

* Small imports fix.

* Fixed translations.

* Made fixes based on nits.

* Removed useless params.

* fix.

* Fixed errors, related to jest and __mocks__.

* Removed useless type definition.

* Replaced RendererHandlers with IInterpreterRendererHandlers.

* fixed supported_shareable.

* Moved elements back to canvas.

* Moved views to canvas, removed expression service and imported renderer to canvas.

* Fixed translations.

* Types fix.

* Moved libs to presentation utils.

* Fixed one mistake.

* removed dataurl lib.

* Fixed jest files.

* elasticLogo removed.

* Removed elastic_outline.

* removed httpurl.

* Removed missing_asset.

* removed url.

* replaced mostly all tests.

* Fixed types.

* Fixed types and removed function_wrapper.ts

* Fixed types of test helpers.

* Changed limits of presentationUtil plugin.

* Fixed imports.

* One more fix.

* Fixed huge size of bundle.

* Reduced allow limit for presentationUtil

* Updated limits for presentationUtil.

* Fixed public API.

* fixed type errors.

* Moved css to component.

* Fixed spaces at element.

* Changed order of requiredPlugins.

* Updated limits.

* Removed unused plugin.

* Added rule for allowing import from __stories__ directory.

* removed useless comment.

* Changed readme.md

* Fixed docs error.

* A possible of smoke test.

* onResize changed to useResizeObserver.

* Remove useless events and `useEffect` block.

* Changed from passing handlers to separate functions.

* `function` moved to `server`.

* Fixed eslint error.

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-07-01 13:30:00 +03:00
Poff Poffenberger
da785eae04
Revert "Revert "Add essql search strategy and integrate in canvas (#94754)" (#98841)
* Revert "Revert "Add essql search strategy and integrate in canvas (#94754)""

This reverts commit 0f15a12420.

* Update squel usage to safe-squel

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-05-03 12:42:26 -05:00
Jonathan Budzenski
0f15a12420 Revert "Add essql search strategy and integrate in canvas (#94754)"
This reverts commit 2628cea05e.
2021-04-29 15:52:18 -05:00
Poff Poffenberger
2628cea05e
Add essql search strategy and integrate in canvas (#94754)
* Add essql search strategy, new escount temporary function, and new essql temporary function

* Move old es* functions to legacy, add esdocs to use search strategy, add parameter arg for essql

* Clean up

* cleanup

* cleanup

* Move request builder files to common

* cleanup

* add comment

* PR Feedback

* Removing old types

* update type

* Add data.search to labs and fix error messages

* Fix function help type

* Add data service to usage collector types

* Update telemetry

* remove unrelated telemetry change

* Enable multi value leniency for SQL  queries

* Display data service lab project
2021-04-29 14:58:11 -05:00
Clint Andrew Hall
e2933b5141
[Canvas][Labs] Integrate Labs Service into Canvas (#96920) 2021-04-26 19:56:33 -05:00
Mikhail Shustov
09f90d8651
[Canvas] Cleanup types in lib (#94517)
* fix get_legend_config error in canvas/lib/index

* convert resolve_dataurl to ts to fix canvas/lib/index failure

* convert expression_form_handler to ts to fix canvas/lib/index failure

* convert canvas lib/error into ts

* canvas: do not compile json file due to effect on performance

* remove type. it is not exported and inferred as any implicitly

* fix datatable error in lib/index.d.ts file

* fix url resolver

* case manually to avoid incompatibility error
2021-03-16 10:22:09 -04:00
Brandon Kobel
4584a8b570
Elastic License 2.0 (#90099)
* Updating everything except the license headers themselves

* Applying ESLint rules

* Manually replacing the stragglers
2021-02-03 18:12:39 -08:00
Wylie Conlon
ac39321fc5
Tinymath is now a Kibana package (#89383)
* Tinymath is now a Kibana package

* Rename to @kbn/tinymath

* Update import style

* Update README

* Use commonjs import syntax

* Fix to commonjs export

* More commonjs fixes
2021-01-28 13:58:37 -05:00
Tiago Costa
693775ce03
chore(NA): move canvas plugin tests out of __tests__ folder (#87519)
* chore(NA): move canvas plugin tests out of __tests__ folder

* chore(NA): fix types import on fixtures

* chore(NA): rename helpers to test_helpers

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-01-06 22:11:22 +00:00
Joe Reuter
fe3b0538ff
[Lens] Categorical color palettes (#75309) 2020-11-04 11:27:52 +01:00
Corey Robertson
9e5bf0f92f
[Canvas] Move Handlebars and Flot dependencies out of main bundle (#78542)
* Move Handlebars and Flot dependencies out of main bundle

* Fix unit test

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2020-10-01 09:10:02 -04:00
Pierre Gayvallet
e70ef657d4
Delete src/legacy/ui/public folder (#76085)
* delete src/legacy/ui/public folder

* remove jest.mock('ui/XXX'); from tests

* adapt stubbedLogstashIndexPatternService

* remove delete keys from translation files

* fix types import with Capabilities

* remove legacy test utils

* remove dead file referencing ui/newPlatform

* move saved-object-finder styles to timelion plugin
2020-09-01 09:23:22 +02:00
Poff Poffenberger
e6e7354a9e
[Canvas] Remove dependency on legacy expressions APIs (#74885)
* Remove legacy types and function registration

* Pull server interpreter functions routes into Canvas and update them to use new expressions API

* Clean up comment

* Removing boom and doing more cleanup

* Add functions test and refactor other router tests

* Adding a type and refactoring a forgotten test

* more tests

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2020-08-18 12:39:46 -05:00
Peter Pisljar
a987cef583
preparing datatable for unifying with kibana_datatable (#73654) 2020-08-17 15:47:37 +02:00
Corey Robertson
bc0b4821ad
[Canvas][tech-debt] Convert renderers (#74134)
* Convert renderers to typescript

* Fix typo

* Fix type issues

* Fixes

* Fix issue with data table render

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2020-08-11 11:36:08 -04:00
Tiago Costa
6c62c686cf
chore(NA): upgrade to lodash@4 (#69868)
* chore(NA): upgrade oss to lodash4

chore(NA): migrate cli, cli_plugin, cli_keystore,  dev, test_utils and apm src script to lodash4

chore(NA): missing file for cli plugin

chore(NA): add src core

chore(NA): es archiver and fixtures

chore(NA): try to fix functional test failure

chore(NA): migrate src/legacy entirely to lodash4 except src/legacy/core_plugins

chore(NA): move legacy core plugins to lodash4

chore(NA): upgrade optimize to lodash4

chore(NA): upgrade to lodash4 on advanced_settings, charts, console and dashboard

chore(NA): migrate to lodash4 on dev_tools, discover, embeddable, es_ui)shared, expressions, home plugins

chore(NA): upgrade data plugin to lodash4

chore(NA): upgrade usage_collection, ui_actions, tile_map, telemtry, share, saved_objects, saved_objects_management, region_map and navigation to lodash4

chore(NA): missing data upgrades to lodash4

Revert "chore(NA): upgrade usage_collection, ui_actions, tile_map, telemtry, share, saved_objects, saved_objects_management, region_map and navigation to lodash4"

This reverts commit 137055c5fed2fc52bb26547e0bc1ad2e3d4fe309.

Revert "Revert "chore(NA): upgrade usage_collection, ui_actions, tile_map, telemtry, share, saved_objects, saved_objects_management, region_map and navigation to lodash4""

This reverts commit f7e73688782998513d9fb6d7e8f0765e9beb28d1.

Revert "chore(NA): missing data upgrades to lodash4"

This reverts commit 92b85bf947a89bfc70cc4052738a6b2128ffb076.

Revert "chore(NA): upgrade data plugin to lodash4"

This reverts commit 88fdb075ee1e26c4ac979b6681d8a2b002df74c6.

chore(NA): upgrade idx_pattern_mgt, input_control_vis, inspector, kbn_legacy, kbn_react, kbn_usage_collections, kbn_utils, management and maps_legacy to lodash4

chore(NA): map src plugin data to lodash3

chore(NA): missing lodash.clonedeep dep

chore(NA): change packages kbn-config-schema deps

chore(NA): update renovate config

chore(NA): upgrade vis_type plugins to lodash4

chore(NA): move vis_type_vislib to lodash3

chore(NA): update visualizations and visualize to lodash4

chore(NA): remove lodash 3 types from src and move test to lodash4

chore(NA): move home, usage_collection and management to lodash 3

Revert "chore(NA): move home, usage_collection and management to lodash 3"

This reverts commit f86e8585f02d21550746569af54215b076a79a3d.

chore(NA): move kibana_legacy, saved_objects saved_objects_management into lodash3

chore(NA): update x-pack test to mock lodash4

Revert "chore(NA): move kibana_legacy, saved_objects saved_objects_management into lodash3"

This reverts commit 2d10fe450533e1b36db21d99cfae3ce996a244e0.

* chore(NA): move x-pack and packages to lodash 4

* chore(NA): remove mention to lodash from main package.json

* chore(NA): remove helper alias for lodash4 and make it the default lodash

* chore(NA): fix last failing types in the repo

* chore(NA): fix public api

* chore(NA): fix types for agg_row.tsx

* chore(NA): fix increment of optimizer modules in the rollup plugin

* chore(NA): migrate `src/core/public/http/fetch.ts` (#5)

* omit undefined query props

* just remove merge usage

* fix types

* chore(NA): fixes for feedback from apm team

* chore(NA): recover old behaviour on apm LoadingIndeicatorContext.tsx

* chore(NA): fixes for feedback from watson

* Platform lodash4 tweaks (#6)

* chore(NA): fix types and behaviour on src/core/server/elasticsearch/errors.ts

* Canvas fixes for lodash upgrade

* [APM] Adds unit test for APM service maps transform (#7)

* Adds a snapshot unit test for getConnections and rearranges some code to make testing easier

* reverts `ArrayList` back to `String[]` in the painless script within `fetch_service_paths_from_trace_ids.ts`

* chore(NA): update yarn.lock

* chore(NA): remove any and use a real type for alerts task runner

Co-authored-by: Gidi Meir Morris <github@gidi.io>

* chore(NA): used named import for triggers_actions_ui file

* chore(NA): fix eslint

* chore(NA): fix types

* Delete most uptime lodash references.

* Simplify. Clean up types.

* [Uptime] Delete most uptime lodash references (#8)

* Delete most uptime lodash references.

* Simplify. Clean up types.

* chore(NA): add eslint rule to avoid using lodash3

* chore(NA): apply changes on feedback from es-ui team

* fix some types (#9)

* Clean up some expressions types.

* chore(NA): missing ts-expect-error statements

* Upgrade lodash 4 vislib (#11)

* replace lodash 3 with lodash 4 on vislib plugin

* Further changes

* further replacement of lodash3 to 4

* further work on upgrading to lodash 4

* final changes to update lodash

* chore(NA): upgrade data plugin to lodash4

chore(NA): upgrade data plugin public to lodash4

chore(NA): fix typecheck task

chore(NA): fix agg_config with hasIn

chore(NA): assign to assignIn and has to hasIn

chore(NA): upgrade data plugin server to lodash4

chore(NA): new signature for core api

fix(NA): match behaviour between lodash3 and lodash4 for set in search_source

* chore(NA): remove lodash3 completely from the repo

* chore(NA): fix x-pack/test/api_integration/apis/metrics_ui/snapshot.ts missing content

* chore(NA): fix lodash usage on apm

* chore(NA): fix typecheck for maps

* Patch lodash template (#12)

* Applying changes from https://github.com/elastic/kibana/pull/64985

* Using isIterateeCall, because it seems less brittle

* Also patching `lodash/template` and `lodash/fp/template`

* Reorganizing some files...

* Revising comment

* Ends up `_` is a function also... I hate JavaScript

Co-authored-by: Pierre Gayvallet <pierre.gayvallet@gmail.com>
Co-authored-by: Josh Dover <me@joshdover.com>
Co-authored-by: Clint Andrew Hall <clint.hall@elastic.co>
Co-authored-by: Oliver Gupte <ogupte@users.noreply.github.com>
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
Co-authored-by: Gidi Meir Morris <github@gidi.io>
Co-authored-by: Justin Kambic <justin.kambic@elastic.co>
Co-authored-by: Stratoula Kalafateli <stratoula1@gmail.com>
Co-authored-by: Luke Elmers <luke.elmers@elastic.co>
Co-authored-by: Brandon Kobel <brandon.kobel@gmail.com>
Co-authored-by: kobelb <brandon.kobel@elastic.co>
2020-07-03 01:30:13 +01:00
Corey Robertson
a9f72bc5e4
[Canvas] Move Templates to be stored as Saved Objects (#69438)
* Moves Canvas templates to live server side

* Adds Clone from template test

* Fix url

* Clean up

* PR Feedback

* i18n
2020-06-30 14:21:01 -04:00
Ahmad Bamieh
266f853b0b
[Telemetry] Collector Schema (#64942)
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2020-06-27 02:52:26 +03:00
Clint Andrew Hall
9e00da35b8
[pre-req] Convert Palettes and Components (#69065)
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2020-06-24 11:47:56 -04:00
Clint Andrew Hall
f3fbf31f3a
[chore] TS 3.9: convert ts-ignore to ts-expect-error (#69541)
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2020-06-23 15:13:21 -04:00
Spencer
7e328417ab
[kbn/optimizer] share all plugin bundles (#68986)
Co-authored-by: spalger <spalger@users.noreply.github.com>
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2020-06-15 22:15:31 -07:00
Mikhail Shustov
f593455a62
Bump TypeScript to v3.9 (#67666)
* add babel support for export type

* bump ts version to 3.9.3

* rebuild kbn-pm

* bump typescript-eslint

* fix error in security plugin UI

* check export as works

* fix app migration type

* use correct test subj attribute

* fix errors from the old PR

* embeddable is already passed in props

* explicitly define type of fetch

* add some types for viz

* fix fetch type p.2

* add null to allow spreading without type errors due to override

* add type guard to fix type error

* cast to any, since cannot assign unknown

* add timestamp to known types

* fix type error in fetch

* fix type error. id is always defined in attibutes

* declare a type

* move ts-ignore to the lines with errors

* declare tuple type explicitly

* mute type error. cannot assign unknown

* fix errors. id is always defined

* fix error type

* fix override errors. id is always defined

* fix error. extends any doesn't work anymore

* fix type error. type is always defined

* env doesn't always contain values

* fix type error

* cast to string

* add: logs is already declared in getNodeLogsUrl

* state is already  passed in props

* fix some errors in timelion

* number of fragments is always defined

* 'absolute' is not just string, but value

* TEMP: option is always defined

* always true if cast to promise manually

* both props are always defined

* explicitly define returned SO type

* workaround type

* bump tslib to be compatible with ts v3.9

* test private property

* rebuild kbn-pm

* Fix ts errors for beats management

* Fix type inference broken by the TS 3.9 upgrade

* Fix ingest manager saved object attributes typings

* Fix TS errors in cross_cluster_replication and index_management.

* Fix TS error in Watcher.

* roll back colorRange wrong type

* fix security plugin types

* TypeScript 3.9 fixes for APM

* Fix ColorRange types.

* fix actions & alerts errors. ByGidi

* fix lists error

* More APM fixes

* Remove paramaterization from `removeEmpty in agent config SettingsPage component (it's only used there and doesn't need to be parameterized.)
* Add option chain for case in registerTransactionDurationAlertType
* Cast `overallValue` in transform_metrics_chart
* Use more specific type for custom link filters
* Add more option chaining for local UI filters buckets response
* Remove unused parameters from routes
* Fix getProjection type parameter
* Use destructuring in serviceNodesLocalFiltersRoute to hide `never` error
* Revert `UnionToIntersection` change in `AggregationResponseMap`

Fixes #67804.

* fix platform type error

* Fix visualizations types.

* Fix data plugin types.

* bump TS version to 3.9.5

* Fix telemetry TS errors

* Fix dashboard code

* Adding Canvas Fixes for TS 3.9

* Fix case and security_solution types

* roll back to the old export syntax. new one might cause problems in api-extractor

* update docs

* Fix timelion code

* Fix meta

* Fix types

* fix type errors om ingest_manager

* bump babel deps

* enable private props & methods syntax

* update kbn-pm dist

* whitelist 0BSD license

* use @babel/plugin-proposal-private-methods in default set as well

* disable new babel plugins

* Revert "disable new babel plugins"

This reverts commit 04d959431d.

* cleanup security_solution types

* Fixes type error for newer TypeScript

* update docs

Co-authored-by: Nicolas Chaulet <nicolas.chaulet@elastic.co>
Co-authored-by: Felix Stürmer <stuermer@weltenwort.de>
Co-authored-by: CJ Cenizal <cj@cenizal.com>
Co-authored-by: Larry Gregory <larry.gregory@elastic.co>
Co-authored-by: Nathan L Smith <smith@nlsmith.com>
Co-authored-by: Walter Rafelsberger <walter@elastic.co>
Co-authored-by: Luke Elmers <luke.elmers@elastic.co>
Co-authored-by: Alejandro Fernández Haro <alejandro.haro@elastic.co>
Co-authored-by: Tim Roes <tim.roes@elastic.co>
Co-authored-by: Clint Andrew Hall <clint.hall@elastic.co>
Co-authored-by: Patryk Kopycinski <contact@patrykkopycinski.com>
Co-authored-by: FrankHassanabad <frank.hassanabad@elastic.co>
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2020-06-11 10:04:09 +02:00
restrry
bf04235dae apply prettier styles 2020-05-22 09:08:58 +02:00
Poff Poffenberger
9f11d21df5
[Canvas] Fix nav link behavior in Canvas (#65590)
* wip

* Storing last page for canvas in session storage

* Fix bad path

* Fix bad merge

* Cleanup and adding some types

* Fixing types

* PR feedback and storage refactor

Co-authored-by: Corey Robertson <corey.robertson@elastic.co>
2020-05-07 14:54:00 -05:00
Corey Robertson
b8bea5b8b2
[Canvas] move files from legacy/plugins to plugins (#65283)
* Moves the files

* Rename legacy/plugins/canvas paths

* Correct paths

* Fix shareable_runtime and storybook

* ESLint Fixes

* Fix jest test and paths
2020-05-05 20:52:56 -04:00
Court Ewing
7ac8e4d9cc Move x-pack plugins/server/common to x-pack/legacy 2019-06-20 13:34:48 -04:00
Corey Robertson
6b3ffb8491
Convert common/lib files to Typescript and Jest (#37640)
* Remove unused lib and associated tests

* Convert unquote string to TS and Jest

* Convert getFieldType to TS and Jest

* Convert httpurl to TS and Jest

* Remove latest_change and tests

* Convert pivot_object_array to TS and Jest

* Address PR feedback
2019-06-17 14:38:58 -04:00
Clint Andrew Hall
ce80d0063a
[Canvas] Update Type Documentation (#38554)
* Add docs; fix nits

* Updating documentation

* Tweaks

* Fix missed conversions
2019-06-12 14:08:39 -05:00
Catherine Liu
3c9182f4b1
[Canvas] Clean up expression function definitions (#37305)
* Cleaned up common function defs

    fixed broken tests

    Remove boolean and null as context/arg valid types in lt, lte, gt, and gte

    Added 'function' alias

    Updated comparator tests

    Added neq to options in compare function

    null audit

* Deleted obsolete 'browser' and 'server' functions

* More clean up

* Removed server and browser function i18n strings

* Fixed broken tests

* Addressing feedback

* Removed browser and server from function_help

* Added ts-ignore for constant import

* Fixed help text label

* Fixed font
2019-06-07 14:32:12 -07:00
Corey Robertson
b605c90cec
Reapply custom element telemetry (#37113)
* Revert "Revert "[Canvas] Adds telemetry info for custom elements (#36177)" (#37100)"

This reverts commit 3f4c2c89ec.

* Cast fromExpression unknown type

* PR Feedback
2019-06-07 13:01:49 -04:00
Corey Robertson
3f4c2c89ec
Revert "[Canvas] Adds telemetry info for custom elements (#36177)" (#37100)
This reverts commit 4fabe6c441.
2019-05-24 10:56:32 -04:00
Corey Robertson
4fabe6c441
[Canvas] Adds telemetry info for custom elements (#36177)
* Adds telemetry info for custom elements

* Addresses PR feedback, converts to TS

* Fix bad equality check

* Fix problem with errored query

* Fix eslint issue with typescript

* Switch from export * to stop eslint complaining

* Fix test

* Clean up TS and tests

* Remove unused imports
2019-05-24 08:40:24 -04:00
Catherine Liu
47ae8ee685
[Canvas] Chore: Custom elements clean up (#35999)
* Extracted ElementGrid from ElementTypes

Added stories for ElementGrid

Updated stories

fix: close modal after custom element list is updated

Removed redundant state props

Refactored sidebar_content. Added stories for MultiElementSettings and GroupSettings

* Fixed ts errors and updated snapshots

* Pulled out CustomElementModal and added stories

* Extracted ElementCard and added stories

* Updated stories

* Fixed ts errors

* Moved element_types.scss to element_card.scss

* Moved test elements into /fixtures

* Refactored element_grid

* Reorganized sidebar_header

* Fixed sidebar_content
2019-05-07 14:02:05 -05:00
Catherine Liu
53ad55cf6f
[Canvas]Feat: Custom Elements (#34140)
* Added custom element routes

    Added context menu to sidebar header

    Added custom element modal

    Added tabs to element_types

    Added handlers for retrieving custom elements

    sidebar header tweaks

    Added edit and delete element controls

    Added a selector for transient.selectedToplevelNodes

    Refactored element event handlers

    Added additional sidebar views

    Fixed adding custom element to workpad

    Converted element_controls to tsx

    Disabled group/ungroup buttons sidebar

    Disabled layer controls in multi_element_settings

    Cleaned up props for element_types

    Added story for element_controls

    Added stories for global_config, group_settings, and multi_element_config

    TSified element_handler_creators

    fixed ts errors

    more tsifying

    Added decorator to element_controls

    Updated stories for custom_element_modal

    Disabled global_config, group_settings, and multi_element_settings stories

    TSified sidebar

    disable layer controls in group_settings

    Removed save element shortcut

    added public/private keywords

    Converted sidebar_header to ts and added stories

Refactored sidebar_header

fix file extension

design cleanup

fix image in edit modal

Fixed ts errors

Update x-pack/plugins/canvas/server/routes/custom_elements.js

Co-Authored-By: cqliu1 <catherineqliu@outlook.com>

Update x-pack/plugins/canvas/server/routes/workpad.js

Co-Authored-By: cqliu1 <catherineqliu@outlook.com>

Reordered args for insertNodes and removeNodes to match corresponding redux actions

Extracted PositionedElement interface

Fixed TS issues

Adjust title and desc lengths

Added comments to props interface

Refactored onClick handlers

more ts

Added types for ast

Switched common/lib/constants back to JS

Added comments

Updated more comments

Removed unused import

Added snapshots

Typed custom_element_service

Fixed ts errors

* Added comments to @ts-ignore's

* Removed custom_element_modal stories

* Added a few more comments

* Update security tests with new canvas-element saved object

* Updated privileges test

* Updated ui_capabilities security_only saved_objects_management test

* Added state interface for CustomElementTypes

* Added state interfaces

* fixed comment

* Removed unnecessary exports
2019-05-02 16:38:46 -05:00
Clint Andrew Hall
8e0b216557
[canvas] TS Asset Manager + Stories (#31341)
## Summary

This diff updates the Asset Manager to use Typescript.  I also added Storybook examples for ad-hoc testing.  The entire Asset Manager link and modal are now independently editable/testable without starting Kibana.

I also took the opportunity to split the component up a bit, and refactor event handlers for consistency.

I opted to not TS the index file with redux, as it introduces a lot of churn to common files.  I'll do that in a follow-up diff.

<img width="1552" alt="screen shot 2019-02-15 at 8 44 10 pm" src="https://user-images.githubusercontent.com/297604/52893536-e7619980-3162-11e9-8b3e-d61efe56a134.png">
<img width="1552" alt="screen shot 2019-02-15 at 8 44 28 pm" src="https://user-images.githubusercontent.com/297604/52893537-e7fa3000-3162-11e9-9dea-1fad1023357a.png">
<img width="1552" alt="screen shot 2019-02-15 at 8 44 33 pm" src="https://user-images.githubusercontent.com/297604/52893538-e7fa3000-3162-11e9-8ada-785192f0f7d9.png">
<img width="1552" alt="screen shot 2019-02-15 at 8 44 37 pm" src="https://user-images.githubusercontent.com/297604/52893539-e7fa3000-3162-11e9-8b8b-008352fb9e0f.png">

## Bugs Fixed
- Shadowed variables
- Storybook did not honor some ES5 features
- Event handlers used assets inconsistently-- switched to always expect an asset, not just an id or value.
- Unnecessary `resolve` wrap for value using `FileReader`.
- Inconsistent returns between library functions.

### Checklist

Use ~~strikethroughs~~ to remove checklist items you don't feel are applicable to this PR.

- [ ] ~~This was checked for cross-browser compatibility, [including a check against IE11](https://github.com/elastic/kibana/blob/master/CONTRIBUTING.md#cross-browser-compatibility)~~
- [ ] ~~Any text added follows [EUI's writing guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses sentence case text and includes [i18n support](https://github.com/elastic/kibana/blob/master/packages/kbn-i18n/README.md)~~
- [ ] ~~[Documentation](https://github.com/elastic/kibana/blob/master/CONTRIBUTING.md#writing-documentation) was added for features that require explanation or tutorials~~
- [X] [Unit or functional tests](https://github.com/elastic/kibana/blob/master/CONTRIBUTING.md#cross-browser-compatibility) were updated or added to match the most common scenarios
- [ ] ~~This was checked for [keyboard-only and screenreader accessibility](https://developer.mozilla.org/en-US/docs/Learn/Tools_and_testing/Cross_browser_testing/Accessibility#Accessibility_testing_checklist)~~

### For maintainers

- [X] This was checked for breaking API changes and was [labeled appropriately](https://github.com/elastic/kibana/blob/master/CONTRIBUTING.md#release-notes-process)
2019-04-15 13:46:29 -05:00
Catherine Liu
daf0a8858f
[Canvas] Fixes esdocs fields (#34894)
* Fixed api route for esFields

* Changes canvas api route back to /api/canvas
2019-04-12 12:26:51 -05:00
Peter Pisljar
98eb5d5bc4
renaming 'api/canvas' endpoint to 'api/interpreter' (#34410) 2019-04-03 12:25:45 +02:00
Spencer
2e232c2e31
[@kbn/expect] "fork" expect.js into repo (#33761)
* [@kbn/expect] "fork" expect.js into repo

* [eslint] autofix references to expect.js

* [tslint] autofix all expect.js imports

* now that expect.js is in strict mode, avoid reassigning fn.length
2019-03-25 09:56:48 -07:00
Joe Fleming
7c7bcddabb
Fix: correctly access types from "to" function (#32691)
* fix: correctly access types

they are not exposed on the handlers object, they must be imported from @kbn/interpreter

* chore: move to function to browser

types can be accessed in the browser now, and a common function makes no sense right now. also https://github.com/elastic/kibana/issues/33039 prevents having the same function in both places anyway
2019-03-12 16:11:07 -06:00
Catherine Liu
45149c06ab
[Canvas] Improvements to Expression Editor (#32336)
* Added font size controls and expand/shrink button to expression editor

* style the expression editor controls

* Removed debug code
2019-03-07 11:22:35 -07:00
Joe Fleming
7d8dbc669e
Fix: Prevent some needless re-rendering in high-level components (#31958)
In an effort to remove the workpad renaming lag in https://github.com/elastic/kibana/issues/25070, I started hunting down and fixing re-renders that happened with the name change. 

I was hoping this PR would fix the lag, but I've shifted to some other performance issues that have a much larger impact, so this is just a bunch of re-rendering fixes, which come with some performance gains. Here's the breakdown:

- `Workpad`, `WorkpadHeader`, and `FullscreenControl` would always re-render because the hotkey handler function was always re-created
- `Workpad` would re-render when the workpad's name changed
  - We were passing the whole workpad object into the component, so it re-rendered on all sorts of changes
  - Page title updating moved to middleware so the component doesn't need that value
- `AssetManager` would always re-render if the parent re-rendered because it always created a new state value in `mapStateToProps`
- make `Workpad` and `Toolbar` pure, they take no props and this helps stop some re-rendering
2019-03-01 17:18:56 -07:00