* Starting conversion to permissions from userCanCrud
* Migrating userCanCrud to context
* Fixing tests
* Fix type error
* Removing missed userCanCrud
* Fixing tests and addressing permissions.all feedback
* Fixing test
* Adding deletion sub feature priv
* Fixing type errors
* Fixing tests and adding more granular permissions
* Trying to get plugin tests to work
* Removing unnecessary tests
* First pass at fixing tests
* Moving createUICapabilities to a normal function
* Adding more tests for permissions
* Fixing tests
* Fixing and adding more tests
* Addressing feedback and fixing tests
* Reverting permissions.all changes except delete
* Revert "Reverting permissions.all changes except delete"
This reverts commit 609c150b7d.
* Fixing test
* Adjusting permissions for add to new or existing case
* Switching a few all permissions to create and read
* check permisions inside of actions menu
* Addressing initial feedback
* Adding functional tests for deletion
* Changing deletion text
* Addressing feedback and fixing tests
* Fixing deeplinks to allow create when no delete
* Addressing feedback
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
* Remove percy based visual regression tests
These have been disabled for ~3 years, the agent is deprecated, and our
snapshot environment is inactive.
* [CI] Auto-commit changed files from 'yarn kbn run build -i @kbn/pm'
* update codeowners
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
* [type-summarizer] reimplement for broader support
* Enable sourceMaps in all packages
* include naming collision in summarizePackage test
* fix readmes
* remove unnecessary transient dependency
* remove code that was commented out
* remove outdated todo comment
* ensure errors triggered by untyped-exports are ligible
* remove unused import
* break out snippet generation from AstIndexer
* refactor several massive files into smaller pieces and add more inline docs
* fix typos
* update jest snapshots
* add sections to readme that points people to the useful parts of the source code along with a high-level overview of how the type-summarizer works
* remove --dump flag, it doesn't work
* use decName instead of calling names.get a second time
* include `export` as invalid name
When we created the `aiops-utils` package originally, we were not aware that packages could also live within `x-pack`. Since `aiops` is a platinum feature and maintained by the ML team, this moves the package from `/packages` to `/x-pack/packages/ml`. The license header of the package files now match the `aiops` plugin again.
Moves some ML utility code to packages.
- @kbn/ml-agg-utils contains multiple utilities used in combination related to building aggregations.
- @kbn/ml-is-populated-object contains the isPopulatedObject() utility function used across several plugins.
- @kbn/ml-string-hash contains the stringHash() utility function used across several plugins.
As the unified obs team is currently without active engineers, we don't want CODEOWNERS to require reviews from that team. I've changed exploratory view back to the Uptime team, the overview page to the obs design team, and 1-2 others now have no CODEOWNERS and will just require a review from someone other than the code author.
* Add kubernetes link on nav sidebar
* Create new plugin for k8s vis page
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Paulo Henrique <paulo.scape@gmail.com>
This creates a response_stream plugin in the Kibana /examples section. The plugin demonstrates API endpoints that can stream data chunks with a single request with gzip/compression support. gzip-streams get decompressed natively by browsers. The plugin demonstrates two use cases to get started: Streaming a raw string as well as a more complex example that streams Redux-like actions to the client which update React state via useReducer().
Adds a new experimental Kibana setting called `csp.disableUnsafeEval` which will default to `false`. When set to `true`, it will remove `unsafe-eval` from our CSP.
Also introduces a new module called `@kbn/handlebars` which is a replacement for the official `handlebars` module used in the frontend. This new module is necessary in order to avoid calling `eval`/`new Function` from within `handlebars` which is not allowed once `unsafe-eval` is removed from our CSP.
The `@kbn/handlebars` module is simply an extension of the main `handlebars` module which adds a new compile function called `compileAST` (as an alternative to the regular `compile` function). This new function will not use code-generation from strings to compile the template but will instead generate an AST and return a render function with the same API as the function returned by the regular `compile` function.
This is a little bit slower method, but since this is only meant to be used client-side, the slowdown should not be an issue.
The following limitations exists when using `@kbn/handlebars`:
The Inline partials handlebars template feature is not supported.
Only the following compile options will be supported:
- `knownHelpers`
- `knownHelpersOnly`
- `strict`
- `assumeObjects`
- `noEscape`
- `data`
Only the following runtime options will be supported:
- `helpers`
- `blockParams`
- `data`
Closes#36311
Sets up the boilerplate code for the aiops plugin and adds a demo page within the ML app to demonstrate single API request data streaming from Kibana server to UI client.
## Summary
This PR assigns the `<MlPopover />` component and all the related code in the `x-pack/plugins/security_solution/public/common/components/ml_popover` folder to the @elastic/security-detections-response-rules area team.
This component renders the **"ML job settings"** popover we have on the Rule Management page:
<img width="1578" alt="ML job settings popover screenshot" src="https://user-images.githubusercontent.com/7359339/167900123-cf501ce2-8abe-4e01-9af5-9c1c97141d83.png">
* first version of semi-sane results
* getting a bit more sophisticated
* wip on footer, page numbers not working, but logo working
* re-work PoC for readability, added a lot of comments
* change up formatting for readability
* added comment
* remove some comments and remove HACK
* use page.pdf function
* remove controls from shared PoC ui
* preserveDrawingBuffer fix for maps, needs review
* minor clean up
* update sass
* clean up experimental code
* moved a few files around to get this ready for review
* added appservices as print media code owners
* [CI] Auto-commit changed files from 'node scripts/eslint --no-cache --fix'
* added PDFJS to get num pages
* fix getting page number using pdfjs-dist
* update inline snapshot
* Revert "update inline snapshot"
This reverts commit eb413234a7.
* do not create a new page at the very end
* major overhaul, rather use puppeteers footerTemplate and headerTemplate to get visual parity with current reports
* add TODO
* update test fixture
* update doc comment
* remove whitespace
* fix missing time range from print PDF header and make size much smaller
* update tests
* update test
* try out slash instead of nbsp
* Revert "try out slash instead of nbsp"
This reverts commit 1de112a6f5.
* implement ability to inject logo using handlebars templates
* move assets to shared location
* fix injecting of values via handlebars and minor style tweaks for 3rd party logos
* inject a few more values to the footer
* update casing check
* use locales version of headless chromium zip
* fix tests and update sizing of logos
* use locales version for arm64 too
* fix jest test
* fix types
* made pdf capture check stricter
* fix PDF generation issue due to query bar rendering content that caused an issue; need to figure out what exactly the issue was...
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
* Introduces StreamAggregator
This allows us to write 'true' stream processing aggregations.
Implementations of `StreamAggregator` can self bootstrap new
datastreams/timeseries and route data to this new locations
* if a stream aggregator returns dimensions setup timeseries otherwise datastream
* rename worker.ts to allign with new naming rules
* Pick fields from ApmFields
(cherry picked from commit 0147c683d2ccda2953fcbf5ef24a801cdf34a5dd)
* include service.environment and transaction.type as dimensions
(cherry picked from commit 2f0b6044eef768349613fabf8a250cfc0375bc7b)
* rename service.latency to transaction.duration.aggregate
(cherry picked from commit f4d8b17302be9dd56e4c518fcc8919a998b1c40b)
* removed unnecessary intermediate method createFieldsFromState() in favor of flush()
(cherry picked from commit 6e3f5cd6dc898214740d1b483c7dc29839514695)
* ensure we flush previously held range if current event exceeds max window age
(cherry picked from commit 55a52f1d592a67511782c7522c69836a615c0d93)
* move the processor.name to 'metric' for now
(cherry picked from commit 480bbe4120937c4e2cd597ac61a9ee279df42a89)
* clean aggregator stream with wildcard for namespace
(cherry picked from commit 9fb7905dfbaa9b3cd906411ec721e8794655fc98)
* add apm-ui as codeowners of synthtrace
* metricset is not always set should not throw an error when determining writetarget
* safeguard check for max window age
* safeguard incrementing state
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>