* Move SavedObjectClient files to core/public
* Initial SavedObjectsService in public Core
* Public SavedObjectsClient tests
* Import SimpleSavedObject from src/core/public
* Use types from source files for kibana.d.ts
* Add html raw loader to x-pack/jest
* Cleanup
* Drop case utilities and improve test coverage
* Update types and documentation
* Fix build breaking when importing directly from /server in /public
* Ensure that all option paramaters are picked and renamed
* Fix option mapping and introduce stronger types
* Eslint: allow imports from src/core/*/types
* Add compatibility layer for kfetch vs http.fetch error responses
* Improve documentation
* Expose SavedObjectsMigrationLogger
* Documentation and type tweaks
* Revert type changes from 73e601f and update api docs
* Refactor request into savedObjectFetch + test
* Make legacy SavedObject compatible with http.fetch exceptions
* Fix types and tests
* simple_saved_object import from src/core/server
* server imports from root instead of server/types
* Make SavedObjectsService a class
* Don't pick unkown keys from server response
* Rename SavedObjectsFindResponse to SavedObjectsFindResponsePublic
* Remove err.response from SavedObjects fetch errors
* Revert "Remove err.response from SavedObjects fetch errors"
This reverts commit 61705ca361.
* Don't introduce err.response until we deprecate err.res
* improving naming, add TSDoc
* re-genereate docs
* use response name in migration guide
* Apply suggestions from code review
Co-Authored-By: Josh Dover <me@joshdover.com>
* place docs near the related code
* re-generate docs
* mark code as example to reduce noise in http-service.md
* [ftr/docs] replace leadfoot with webdriver
* [ftr/docs] more details about running tests in Firefox
* [ftr/docs] update references to ftr services
* [ftr/docs] fix links and update description
* [ftr/docs] update services information
* [ftr/docs] fix more links
* small fix
* [ftr/docs] Firefox run example
* revert link changes
* review fix
* review fixes
* add details on how to start x-pack tests
* lost fix for tags description
* Update docs/development/core/development-functional-tests.asciidoc
Co-Authored-By: Spencer <email@spalger.com>
* Update docs/development/core/development-functional-tests.asciidoc
Co-Authored-By: Spencer <email@spalger.com>
* Allow mtask definitions to overwrite default setting maxAttemps
* Leverage scheduledAt from task manager
* Treat maxAttempts like attempts and not retries
* Add support for second intervals
* Min 1 attempt
* Reverse relying on scheduledAt
* Add new startedAt attribute in task manager that keeps track when task started running
* Don't extend runAt when claiming a task
* Remove startedAt from state
* Attempt trying to define custom getBackpressureDelay function
* Pass error object to getBackpressureDelay
* Cleanup processResultForRecurringTask code
* Add backpressure to timed out tasks
* Change default timeout backpressure calculation
* getBackpressureDelay to return seconds instead of milliseconds
* Add comment for task store query
* Compress query
* Revert alert / actions specific code
* Add more interval tests
* Fix failing jest tests
* Fix test
* Add more unit tests
* Fix integration tests
* Fix sorting of tasks to process
* WIP
* Always provide error when getBackpressureDelay is called
* Rename getBackpressureDelay to getRetryDelay
* retryAt to be calculated from timeout time by default
* Remove invalid test
* Add unit tests
* Consider timeout before scheduling a retryAt
* Remove backpressure terminology
* Remove support for 0 based intervals and timeouts
* Apply PR feedback
* Fix last place using Math.abs
* Modify migrations to allow running a script when converting an index to an alias
* Convert task manager to use saved objects
* Fix broken test
* Fix broken tests pt1
* Remove index from task manager config schema
* Accept platform changes
* PR feedback
* Apply PR feedback
* Apply PR feedback pt2
* Apply PR feedback pt3
* Apply PR feedback pt4
* Fix feedback pt3
* Rename RawSavedObjectDoc to SavedObjectsRawDoc
* [ts] upgrade to 3.5.2
* [ts] run from cwd so that relative paths are correct
* move eslint-disable-line comment into jsx attribute
* autofix eslint violations
* avoid generic type, it's not necessary and problematic
* make elasticsearch.cluster optional, many instances don't have them
* remove invalid prop
* expand AllowUnknownProperties to cleanly handle arrays
* esfilter values can sometimes be an array of strings
* allow exception objects to have unknown properties
* define accumulator as a boolean
* fix return type
* return a 404 if beat isn't found after update
* use Object.values for better types
* define return type of get() call
* define value type for Set
* define return value of get()
* define State property type
* use less get(), so ts can infer types
* define Set item type
* map state type
* make default_operator optional, since it's not always defined
* remove seemingly unused prop
* define return type of get() fn
* define inner type for state
* don't define base types are objects with index signatues
* regenerate public api docs
* make indices privileges optional too
* remove unnecessary index-signature from Exception interface
* use variadic _arg instead
* [core/plugin] use Record<string, any> rather than {}
* replace a couple more instances of {}
* revert some unnecessary changes
* remove unused types
* [reporting] output, payload, and meta are required properties
* bump to latest patch version
* Mocks for CoreStart, CoreSetup and PluginInitializerContext
* Public CoreStart, CoreSetup mocks
* Update api signature/docs
* Convert embaddable_api tests to new core mocks
* CR Feedback
* Introduce ui_new_platform.test.mocks and refactor embedabble tests
* Hack to get TS warnings for Core mocks
* Core mocks types cleanup & hack to get TS warnings for Server Core mocks
* Use __mocks__ new_platform
* Remove accidently commited auto-mock
* Introduce MockedKeys type for Core mocks
* Better typing/docs for UiSettings
* Revert "Use __mocks__ new_platform"
This reverts commit 2d666facc8.
* Add missing mock to test
* Cleanup UiSettings types
* New and Legacy platforms share http server instance.
Required to use a common security interceptor for incoming http requests
* generate docs
* remove excessive contract method
* add test for New platform compatibility
* address comments part #1
* log server running only for http server
* fix test. mutate hapi request headers for BWC with legacy
* return 503 on start
* address @eli comments
* address @joshdover comments
* crude test updates
* remove custom server typedef
* allow spaces to aquire security plugin after init
* split CoreSetup into CoreSetup and PluginsSetup
* move interfaces to new plugin
* init interceptors in legacy plugin
* fix import
* add placeholder kibana.json
* use NP Elasticsearch service instead of legacy ES Plugin
* cleanup imports
* don't destructure the es client
* introduce request facade
* document reason for getSecurity
* prefer relative imports from src/core
* fix typo in filename: inteceptors --> interceptors
* fix imports; remove stray ts-ignore
* improve typings for spaces client
* rename InterfaceExcept --> Omit
* don't use legacy config in NP
* additional comment
* shim NP config service
* fix merge from master
* revert relative imports into src/core and src/legacy
* shim capabilities modifier into new platform
* removing placeholder kibana.json
* fix prettier problem
* temporary: patch NP 'setUrl'
* migrate onRequest interceptor to NP, without tests
* fix ts error
* testing and deps cleanup for onRequestInterceptor
* replace spaces's usages of request.getBasePath with http.getBasePathFor
* add explicit timeouts for jest interceptor tests
* attempt to fix imports
* use NP logging instead of faked implementation
* revert stray yarn.lock change
* attempt to stablize and fix tests
* update jest config to include src/core/server/mocks
* fix plugin config typings
* add service tests
* fix merge
* allow spaces service to also work with legacy requests
* update interfaces to confirm to new internal/external API convention
* re-enable some post auth interceptor tests
* add explicit timeouts for tests
* prefer modifyUrl instead of manual url modification
* update logger shim to conform to PluginInitializerContext
* remove spaces ConfigClass
* don't weaken type declaration for scoped cluster client calls
* remove legacy server from SpacesCoreSetup
* remove spaces service cache
* remove legacy server as an interceptor dependency
* use modifyUrl on the raw request too
* remove unused import
* cleanup typings
* replace onRequest interceptor with new onPreAuth interceptor
* fix onPostAuth tests
* temporarily copy modifyUrl into spaces plugin
* fix mock export
* fix merge from master
* spaces scopedClient always uses updated ES client and config
* improve typings for usage collector
* rename isLegacyRequest -> isFakeRequest
* use updated NP base path API
* remove commented code
* only expose scoped spaces client
* use OptionalPlugin instead of getSecurity
* update imports of Saved Objects Service to use new src/core/server location
* update core docs
* Move src/legacy/server/saved_objects -> src/core/server/saved_objects
* Fix SavedObject import references after moving files to core
* First pass at SavedObjects api docs
* Expose and import all saved object types through core/server
* Don't expose SavedObjectsManagement from core and fix imports
* Improve typings for SavedObject error helpers
* Fix type errors after master merge
* Fix SavedObjectErrorHelpers tests
* Prevent exposing Hapi.Request to registerAuth.
Prevent exposing headers.authorization in KibanaRequest.
Introduce a mechanism to associate authorization headers with an
incoming request and retrieve its value to perform a request to
elasticsearch cluster.
* fix tests
* address @joshdover comments
* unify modifyUrl on client and server
* create BasePath as a separate entity on server
* use BasePath class in http server
* use BasePath a separate entity on client
* use BasePath class on Http service on the client
* switch client code to the new api
* improve setver http service mocks
* address comments #1
* address comments #2
* update docs
* add comment why we define own typings
* Allow passing in a signal to abort an Elasticsearch request using the cluster client
* Go back to using promises (which still return abort method) and update test
* Update docs
* Explicitly return Promise<any> instead of {}
* Kibana request keep a reference to raw request. used to bind hapi-cookie
* CookieSessionStorage should work with KibanaRequest
as soon as registerAuth refactored to restrict access to hapi Request, CookieSessionStorage won't work with hapi request directly
* change registerAuth public api
* adopt auth lifecycle tests
* move lifecycle auth tests from integration to unit and adopt to new api.
* mark toRawRequest as internal to prevent exposure
* generate docs
* reword test cases
* mark Request internals in tsdoc
* expose route info in KibanaRequest
* update mocks in test
* make tags readonly, getRouteInfo is private method
* add mocks for hapi internals
* mode deepFreeze to core utils level as it env agnostic
* freeze route props
* fix typo
* add tests for route options
* fix integration tests. deep_freeze was moved under core utils
* add comments, expose public types and regenerate docs
* address comment. remove unnecessary async in route handlers
* make routeSchema optional instead of union with undefined
* @skaapgif improvements
* update docs
* Allow interception of http requests from browser http service
* Update documentation and browser http types
* Remove async marker from fetch function
* Fix failing tests
* Attempting to fix kuery_autocomplete test
* Allow halting of http fetches from interception
* Re-use HttpInterceptHaltError
* Expose HttpInterceptor types and update docs
* Only mock calls to capabilities during browser testing
* introduce pre-,post-auth stages
* cleanup integration_tests. now contracts available in tests
* auth per route is configurable
* Unify lifecycle results structure
* expose api to store auth state and status via http service
* update tests
* update docs
* use full name, auth should not mutate request
* move basePath functionality under namespace
* regenerate docs
* Revert "move basePath functionality under namespace"
This reverts commit 9599d32801.
* Revert "regenerate docs"
This reverts commit 1799d3b088.
* regenerate docs
* updated yarn.lock no idea why
* extract AuthStateStorage to a separate entity
* get rid of nested ifs
* describe what is the difference between hooks
* re-wording
* Remove browser basePath service, move functionality into browser http service
* Update generated documentation for removal of browser basePath
* Fix type interface for removal of basePath
* Split IHttpService into separate setup and start interfaces
* Rename appendToBasePath to prependBasePath, rename removeFromBasePath to removeBasePath