diff --git a/dev_docs/troubleshooting.mdx b/dev_docs/troubleshooting.mdx new file mode 100644 index 0000000000000..f624a8cd77507 --- /dev/null +++ b/dev_docs/troubleshooting.mdx @@ -0,0 +1,28 @@ +--- +id: kibTroubleshooting +slug: /kibana-dev-docs/troubleshooting +title: Troubleshooting +summary: A collection of tips for working around strange issues. +date: 2021-09-08 +tags: ['kibana', 'onboarding', 'dev', 'troubleshooting'] +--- + +### Typescript issues + +When switching branches, sometimes the TypeScript cache can get mixed up and show some invalid errors. If you run into TypeScript issues (invalid errors, or if it's taking too long to build types), here a few things to try. + +1. Build TypeScript references with the clean command. + +``` +node scripts/build_ts_refs --clean +``` + +2. Restore your repository to a totally fresh state by running `git clean` + +``` +# dry-run the clean to see what will be deleted +git clean -fdxn -e /config -e /.vscode + +# review the files which will be deleted, consider adding some more excludes (-e) +# re-run without the dry-run (-n) flag to actually delete the files +``` diff --git a/docs/apm/correlations.asciidoc b/docs/apm/correlations.asciidoc index c0c18433c9021..2165994b8372f 100644 --- a/docs/apm/correlations.asciidoc +++ b/docs/apm/correlations.asciidoc @@ -58,68 +58,34 @@ out, you can begin viewing sample traces to continue your investigation. [[correlations-error-rate]] ==== Find failed transaction correlations -The correlations on the *Error rate* tab help you discover which fields are -contributing to failed transactions. - -By default, a number of attributes commonly known to cause performance issues, -like version, infrastructure, and location, are included, but all are completely -customizable to your APM data. Find something interesting? A quick click of a -button will auto-query your data as you work to resolve the underlying issue. - -The error rate over time chart visualizes the change in error rate over the selected time frame. -Correlated attributes are sorted by _Impact_–a visual representation of the -{ref}/search-aggregations-bucket-significantterms-aggregation.html[significant terms aggregation] -score that powers correlations. -Attributes with a high impact, or attributes present in a large percentage of failed transactions, -may contribute to increased error rates. - -To find error rate correlations, hover over each potentially correlated attribute to -compare the error rate distribution of transactions with and without the selected attribute. - -For example, in the screenshot below, the field `url.original` and value `http://localhost:3100...` -existed in 100% of failed transactions between 6:00 and 10:30. +beta::[] + +The correlations on the *Failed transaction correlations* tab help you discover +which attributes are most influential in distinguishing between transaction +failures and successes. In this context, the success or failure of a transaction +is determined by its {ecs-ref}/ecs-event.html#field-event-outcome[event.outcome] +value. For example, APM agents set the `event.outcome` to `failure` when an HTTP +transaction returns a `5xx` status code. + +// The chart highlights the failed transactions in the overall latency distribution for the transaction group. +If there are attributes that have a statistically significant correlation with +failed transactions, they are listed in a table. The table is sorted by scores, +which are mapped to high, medium, or low impact levels. Attributes with high +impact levels are more likely to contribute to failed transactions. +// By default, the attribute with the highest score is added to the chart. To see a different attribute in the chart, hover over its row in the table. + +For example, in the screenshot below, the field +`kubernetes.pod.name` and value `frontend-node-59dff47885-fl5lb` has a medium +impact level and existed in 19% of the failed transactions. [role="screenshot"] -image::apm/images/error-rate-hover.png[Correlations errors hover effect] - -Select the `+` filter to create a new query in the {apm-app} for transactions with -`url.original: http://localhost:3100...`. With the "noise" now filtered out, -you can begin viewing sample traces to continue your investigation. - -As you sift through erroneous transactions, you'll likely notice other interesting attributes. -Return to the correlations fly-out and select *Customize fields* to search on these new attributes. -You may need to do this a few times–each time filtering out more and more noise and bringing you -closer to a diagnosis. - -[discrete] -[[correlations-customize-fields]] -===== Customize fields - -By default, a handful of attributes commonly known to cause performance issues -are included in the analysis on the *Error rate* tab. You can add and remove -fields under the **Customize fields** dropdown. - -The following fields are selected by default. To keep the default list -manageable, only the first six matching fields with wildcards are used. - -**Frontend (RUM) agent:** - -* `labels.*` -* `user.*` -* `user_agent.name` -* `user_agent.os.name` -* `url.original` - -**Backend agents:** +image::apm/images/correlations-failed-transactions.png[Failed transaction correlations] -* `labels.*` -* `host.ip` -* `service.node.name` -* `service.version` +TIP: Some details, such as the failure and success percentages, are available +only when the +<> +advanced setting is enabled. -[TIP] -==== -* Want to start over? Select **reset** to clear your customizations. -* The *Latency* tab does not have a **Customize fields** dropdown, since it -automatically considers all relevant fields in the transactions. -==== +Select the `+` filter to create a new query in the {apm-app} for transactions +with this attribute. You might do his for multiple attributes--each time +filtering out more and more noise and bringing you closer to a diagnosis. \ No newline at end of file diff --git a/docs/apm/images/correlations-failed-transactions.png b/docs/apm/images/correlations-failed-transactions.png new file mode 100644 index 0000000000000..3258b44f7097b Binary files /dev/null and b/docs/apm/images/correlations-failed-transactions.png differ diff --git a/docs/apm/images/error-rate-hover.png b/docs/apm/images/error-rate-hover.png deleted file mode 100644 index 69f0009309318..0000000000000 Binary files a/docs/apm/images/error-rate-hover.png and /dev/null differ diff --git a/package.json b/package.json index 9ca4a629c68be..bd096246c1e6e 100644 --- a/package.json +++ b/package.json @@ -184,12 +184,9 @@ "JSONStream": "1.3.5", "abort-controller": "^3.0.0", "abortcontroller-polyfill": "^1.4.0", - "ajv": "^6.12.4", "angular": "^1.8.0", "angular-aria": "^1.8.0", - "angular-elastic": "^2.5.1", "angular-recursion": "^1.0.5", - "angular-resource": "1.8.0", "angular-route": "^1.8.0", "angular-sanitize": "^1.8.0", "angular-sortable-view": "^0.0.17", @@ -201,7 +198,6 @@ "brace": "0.11.1", "broadcast-channel": "^3.0.3", "chalk": "^4.1.0", - "check-disk-space": "^2.1.0", "cheerio": "^1.0.0-rc.9", "chokidar": "^3.4.3", "chroma-js": "^1.4.1", @@ -237,15 +233,12 @@ "fflate": "^0.6.9", "file-saver": "^1.3.8", "file-type": "^10.9.0", - "focus-trap-react": "^3.1.1", "font-awesome": "4.7.0", - "formsy-react": "^1.1.5", "fp-ts": "^2.3.1", "geojson-vt": "^3.2.1", "get-port": "^5.0.0", "getopts": "^2.2.5", "getos": "^3.1.0", - "github-markdown-css": "^2.10.0", "glob": "^7.1.2", "glob-all": "^3.2.1", "globby": "^11.0.3", @@ -323,9 +316,7 @@ "pngjs": "^3.4.0", "polished": "^3.7.2", "prop-types": "^15.7.2", - "proper-lockfile": "^3.2.0", "proxy-from-env": "1.0.0", - "proxyquire": "1.8.0", "puid": "1.0.7", "puppeteer": "^8.0.0", "query-string": "^6.13.2", @@ -341,7 +332,6 @@ "react-dropzone": "^4.2.9", "react-fast-compare": "^2.0.4", "react-grid-layout": "^0.16.2", - "react-input-range": "^1.3.0", "react-intl": "^2.8.0", "react-is": "^16.8.0", "react-markdown": "^4.3.1", @@ -406,9 +396,7 @@ "type-detect": "^4.0.8", "typescript-fsa": "^3.0.0", "typescript-fsa-reducers": "^1.2.2", - "ui-select": "0.19.8", "unified": "^9.2.1", - "unstated": "^2.1.1", "use-resize-observer": "^6.0.0", "utility-types": "^3.10.0", "uuid": "3.3.2", @@ -601,7 +589,6 @@ "@types/prettier": "^2.1.5", "@types/pretty-ms": "^5.0.0", "@types/prop-types": "^15.7.3", - "@types/proper-lockfile": "^3.0.1", "@types/rbush": "^3.0.0", "@types/reach__router": "^1.2.6", "@types/react": "^16.9.36", @@ -696,7 +683,6 @@ "cypress-promise": "^1.1.0", "cypress-real-events": "^1.4.0", "debug": "^2.6.9", - "del-cli": "^3.0.1", "delete-empty": "^2.0.0", "dependency-check": "^4.1.0", "diff": "^4.0.1", @@ -830,7 +816,6 @@ "tape": "^5.0.1", "tar-fs": "^2.1.0", "tempy": "^0.3.0", - "terminal-link": "^2.1.1", "terser": "^5.7.1", "terser-webpack-plugin": "^2.1.2", "tough-cookie": "^4.0.0", diff --git a/src/core/public/doc_links/doc_links_service.ts b/src/core/public/doc_links/doc_links_service.ts index 6b03581a7765b..ca174fc12109d 100644 --- a/src/core/public/doc_links/doc_links_service.ts +++ b/src/core/public/doc_links/doc_links_service.ts @@ -35,9 +35,9 @@ export class DocLinksService { kibanaSettings: `${KIBANA_DOCS}apm-settings-in-kibana.html`, supportedServiceMaps: `${KIBANA_DOCS}service-maps.html#service-maps-supported`, customLinks: `${KIBANA_DOCS}custom-links.html`, - droppedTransactionSpans: `${APM_DOCS}get-started/${DOC_LINK_VERSION}/transaction-spans.html#dropped-spans`, - upgrading: `${APM_DOCS}server/${DOC_LINK_VERSION}/upgrading.html`, - metaData: `${APM_DOCS}get-started/${DOC_LINK_VERSION}/metadata.html`, + droppedTransactionSpans: `${APM_DOCS}get-started/master/transaction-spans.html#dropped-spans`, + upgrading: `${APM_DOCS}server/master/upgrading.html`, + metaData: `${APM_DOCS}get-started/master/metadata.html`, }, canvas: { guide: `${KIBANA_DOCS}canvas.html`, diff --git a/x-pack/plugins/alerting/server/rules_client/rules_client.ts b/x-pack/plugins/alerting/server/rules_client/rules_client.ts index c3e21e02cdb7d..51f27916e015a 100644 --- a/x-pack/plugins/alerting/server/rules_client/rules_client.ts +++ b/x-pack/plugins/alerting/server/rules_client/rules_client.ts @@ -672,6 +672,14 @@ export class RulesClient { } public async delete({ id }: { id: string }) { + return await retryIfConflicts( + this.logger, + `rulesClient.delete('${id}')`, + async () => await this.deleteWithOCC({ id }) + ); + } + + private async deleteWithOCC({ id }: { id: string }) { let taskIdToRemove: string | undefined | null; let apiKeyToInvalidate: string | null = null; let attributes: RawAlert; diff --git a/x-pack/plugins/enterprise_search/public/applications/app_search/components/role_mappings/role_mappings_logic.test.ts b/x-pack/plugins/enterprise_search/public/applications/app_search/components/role_mappings/role_mappings_logic.test.ts index e63469f985d7d..14d97c7dd3f4d 100644 --- a/x-pack/plugins/enterprise_search/public/applications/app_search/components/role_mappings/role_mappings_logic.test.ts +++ b/x-pack/plugins/enterprise_search/public/applications/app_search/components/role_mappings/role_mappings_logic.test.ts @@ -418,6 +418,16 @@ describe('RoleMappingsLogic', () => { expect(flashAPIErrors).toHaveBeenCalledWith('this is an error'); }); + + it('resets roleMapping state', () => { + mount({ + ...mappingsServerProps, + roleMapping: asRoleMapping, + }); + RoleMappingsLogic.actions.initializeRoleMappings(); + + expect(RoleMappingsLogic.values.roleMapping).toEqual(null); + }); }); describe('initializeRoleMapping', () => { diff --git a/x-pack/plugins/enterprise_search/public/applications/app_search/components/role_mappings/role_mappings_logic.ts b/x-pack/plugins/enterprise_search/public/applications/app_search/components/role_mappings/role_mappings_logic.ts index 6dac9e481f7ef..7b7bcd864ebd0 100644 --- a/x-pack/plugins/enterprise_search/public/applications/app_search/components/role_mappings/role_mappings_logic.ts +++ b/x-pack/plugins/enterprise_search/public/applications/app_search/components/role_mappings/role_mappings_logic.ts @@ -178,6 +178,7 @@ export const RoleMappingsLogic = kea roleMapping, + initializeRoleMappings: () => null, resetState: () => null, closeUsersAndRolesFlyout: () => null, }, diff --git a/x-pack/plugins/enterprise_search/public/applications/shared/role_mapping/users_table.tsx b/x-pack/plugins/enterprise_search/public/applications/shared/role_mapping/users_table.tsx index 3b6e2dc440a76..3dc5560a9eaba 100644 --- a/x-pack/plugins/enterprise_search/public/applications/shared/role_mapping/users_table.tsx +++ b/x-pack/plugins/enterprise_search/public/applications/shared/role_mapping/users_table.tsx @@ -5,7 +5,7 @@ * 2.0. */ -import React, { useState } from 'react'; +import React, { useState, useEffect } from 'react'; import { EuiBadge, EuiBasicTableColumn, EuiInMemoryTable, EuiTextColor } from '@elastic/eui'; import type { EuiSearchBarOnChangeArgs } from '@elastic/eui'; @@ -57,6 +57,8 @@ const noItemsPlaceholder = ; const invitationBadge = {INVITATION_PENDING_LABEL}; const deactivatedBadge = {DEACTIVATED_LABEL}; +type Users = Array>; + export const UsersTable: React.FC = ({ accessItemKey, singleUserRoleMappings, @@ -72,9 +74,13 @@ export const UsersTable: React.FC = ({ id: user.roleMapping.id, accessItems: (user.roleMapping as SharedRoleMapping)[accessItemKey], invitation: user.invitation, - })) as unknown) as Array>; + })) as unknown) as Users; + + const [items, setItems] = useState([] as Users); - const [items, setItems] = useState(users); + useEffect(() => { + setItems(users); + }, [singleUserRoleMappings]); const columns: Array> = [ { diff --git a/x-pack/plugins/enterprise_search/public/applications/workplace_search/views/role_mappings/role_mappings_logic.test.ts b/x-pack/plugins/enterprise_search/public/applications/workplace_search/views/role_mappings/role_mappings_logic.test.ts index 1cf1adfd00200..3f5a63275f05d 100644 --- a/x-pack/plugins/enterprise_search/public/applications/workplace_search/views/role_mappings/role_mappings_logic.test.ts +++ b/x-pack/plugins/enterprise_search/public/applications/workplace_search/views/role_mappings/role_mappings_logic.test.ts @@ -376,6 +376,16 @@ describe('RoleMappingsLogic', () => { expect(flashAPIErrors).toHaveBeenCalledWith('this is an error'); }); + + it('resets roleMapping state', () => { + mount({ + ...mappingsServerProps, + roleMapping: wsRoleMapping, + }); + RoleMappingsLogic.actions.initializeRoleMappings(); + + expect(RoleMappingsLogic.values.roleMapping).toEqual(null); + }); }); describe('initializeRoleMapping', () => { diff --git a/x-pack/plugins/enterprise_search/public/applications/workplace_search/views/role_mappings/role_mappings_logic.ts b/x-pack/plugins/enterprise_search/public/applications/workplace_search/views/role_mappings/role_mappings_logic.ts index 64cec51001647..55f82a07bf405 100644 --- a/x-pack/plugins/enterprise_search/public/applications/workplace_search/views/role_mappings/role_mappings_logic.ts +++ b/x-pack/plugins/enterprise_search/public/applications/workplace_search/views/role_mappings/role_mappings_logic.ts @@ -168,6 +168,7 @@ export const RoleMappingsLogic = kea roleMapping, + initializeRoleMappings: () => null, resetState: () => null, closeUsersAndRolesFlyout: () => null, }, diff --git a/x-pack/plugins/infra/server/lib/alerting/metric_threshold/lib/create_timerange.test.ts b/x-pack/plugins/infra/server/lib/alerting/metric_threshold/lib/create_timerange.test.ts new file mode 100644 index 0000000000000..5640a1d928436 --- /dev/null +++ b/x-pack/plugins/infra/server/lib/alerting/metric_threshold/lib/create_timerange.test.ts @@ -0,0 +1,132 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License + * 2.0; you may not use this file except in compliance with the Elastic License + * 2.0. + */ + +import { createTimerange } from './create_timerange'; +import { Aggregators } from '../types'; +import moment from 'moment'; + +describe('createTimerange(interval, aggType, timeframe)', () => { + describe('without timeframe', () => { + describe('Basic Metric Aggs', () => { + it('should return a second range for last 1 second', () => { + const subject = createTimerange(1000, Aggregators.COUNT); + expect(subject.end - subject.start).toEqual(1000); + }); + it('should return a minute range for last 1 minute', () => { + const subject = createTimerange(60000, Aggregators.COUNT); + expect(subject.end - subject.start).toEqual(60000); + }); + it('should return 5 minute range for last 5 minutes', () => { + const subject = createTimerange(300000, Aggregators.COUNT); + expect(subject.end - subject.start).toEqual(300000); + }); + it('should return a hour range for last 1 hour', () => { + const subject = createTimerange(3600000, Aggregators.COUNT); + expect(subject.end - subject.start).toEqual(3600000); + }); + it('should return a day range for last 1 day', () => { + const subject = createTimerange(86400000, Aggregators.COUNT); + expect(subject.end - subject.start).toEqual(86400000); + }); + }); + describe('Rate Aggs', () => { + it('should return a 20 second range for last 1 second', () => { + const subject = createTimerange(1000, Aggregators.RATE); + expect(subject.end - subject.start).toEqual(1000 * 5); + }); + it('should return a 5 minute range for last 1 minute', () => { + const subject = createTimerange(60000, Aggregators.RATE); + expect(subject.end - subject.start).toEqual(60000 * 5); + }); + it('should return 25 minute range for last 5 minutes', () => { + const subject = createTimerange(300000, Aggregators.RATE); + expect(subject.end - subject.start).toEqual(300000 * 5); + }); + it('should return 5 hour range for last hour', () => { + const subject = createTimerange(3600000, Aggregators.RATE); + expect(subject.end - subject.start).toEqual(3600000 * 5); + }); + it('should return a 5 day range for last day', () => { + const subject = createTimerange(86400000, Aggregators.RATE); + expect(subject.end - subject.start).toEqual(86400000 * 5); + }); + }); + }); + describe('with full timeframe', () => { + describe('Basic Metric Aggs', () => { + it('should return 5 minute range when given 4 minute timeframe', () => { + const end = moment(); + const timeframe = { + start: end.clone().subtract(4, 'minutes').valueOf(), + end: end.valueOf(), + }; + const subject = createTimerange(300000, Aggregators.COUNT, timeframe); + expect(subject.end - subject.start).toEqual(300000); + }); + it('should return 6 minute range when given 6 minute timeframe', () => { + const end = moment(); + const timeframe = { + start: end.clone().subtract(6, 'minutes').valueOf(), + end: end.valueOf(), + }; + const subject = createTimerange(300000, Aggregators.COUNT, timeframe); + expect(subject.end - subject.start).toEqual(360000); + }); + }); + describe('Rate Aggs', () => { + it('should return 25 minute range when given 4 minute timeframe', () => { + const end = moment(); + const timeframe = { + start: end.clone().subtract(4, 'minutes').valueOf(), + end: end.valueOf(), + }; + const subject = createTimerange(300000, Aggregators.RATE, timeframe); + expect(subject.end - subject.start).toEqual(300000 * 5); + }); + it('should return 25 minute range when given 6 minute timeframe', () => { + const end = moment(); + const timeframe = { + start: end.clone().subtract(6, 'minutes').valueOf(), + end: end.valueOf(), + }; + const subject = createTimerange(300000, Aggregators.RATE, timeframe); + expect(subject.end - subject.start).toEqual(300000 * 5); + }); + }); + }); + describe('with partial timeframe', () => { + describe('Basic Metric Aggs', () => { + it('should return 5 minute range for last 5 minutes', () => { + const end = moment(); + const timeframe = { + end: end.valueOf(), + }; + const subject = createTimerange(300000, Aggregators.AVERAGE, timeframe); + expect(subject).toEqual({ + start: end.clone().subtract(5, 'minutes').valueOf(), + end: end.valueOf(), + }); + }); + }); + describe('Rate Aggs', () => { + it('should return 25 minute range for last 5 minutes', () => { + const end = moment(); + const timeframe = { + end: end.valueOf(), + }; + const subject = createTimerange(300000, Aggregators.RATE, timeframe); + expect(subject).toEqual({ + start: end + .clone() + .subtract(300 * 5, 'seconds') + .valueOf(), + end: end.valueOf(), + }); + }); + }); + }); +}); diff --git a/x-pack/plugins/infra/server/lib/alerting/metric_threshold/lib/create_timerange.ts b/x-pack/plugins/infra/server/lib/alerting/metric_threshold/lib/create_timerange.ts new file mode 100644 index 0000000000000..cca63aca14d09 --- /dev/null +++ b/x-pack/plugins/infra/server/lib/alerting/metric_threshold/lib/create_timerange.ts @@ -0,0 +1,31 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License + * 2.0; you may not use this file except in compliance with the Elastic License + * 2.0. + */ + +import moment from 'moment'; +import { Aggregators } from '../types'; + +export const createTimerange = ( + interval: number, + aggType: Aggregators, + timeframe?: { end: number; start?: number } +) => { + const to = moment(timeframe ? timeframe.end : Date.now()).valueOf(); + + // Rate aggregations need 5 buckets worth of data + const minimumBuckets = aggType === Aggregators.RATE ? 5 : 1; + + const calculatedFrom = to - interval * minimumBuckets; + + // Use either the timeframe.start when the start is less then calculatedFrom + // OR use the calculatedFrom + const from = + timeframe && timeframe.start && timeframe.start <= calculatedFrom + ? timeframe.start + : calculatedFrom; + + return { start: from, end: to }; +}; diff --git a/x-pack/plugins/infra/server/lib/alerting/metric_threshold/lib/evaluate_alert.ts b/x-pack/plugins/infra/server/lib/alerting/metric_threshold/lib/evaluate_alert.ts index 9a8f2267e7efe..a099b83fdb423 100644 --- a/x-pack/plugins/infra/server/lib/alerting/metric_threshold/lib/evaluate_alert.ts +++ b/x-pack/plugins/infra/server/lib/alerting/metric_threshold/lib/evaluate_alert.ts @@ -13,7 +13,6 @@ import { TOO_MANY_BUCKETS_PREVIEW_EXCEPTION, } from '../../../../../common/alerting/metrics'; import { getIntervalInSeconds } from '../../../../utils/get_interval_in_seconds'; -import { roundTimestamp } from '../../../../utils/round_timestamp'; import { InfraSource } from '../../../../../common/source_configuration/source_configuration'; import { InfraDatabaseSearchResponse } from '../../../adapters/framework/adapter_types'; import { createAfterKeyHandler } from '../../../../utils/create_afterkey_handler'; @@ -22,6 +21,7 @@ import { DOCUMENT_COUNT_I18N } from '../../common/messages'; import { UNGROUPED_FACTORY_KEY } from '../../common/utils'; import { MetricExpressionParams, Comparator, Aggregators } from '../types'; import { getElasticsearchMetricQuery } from './metric_query'; +import { createTimerange } from './create_timerange'; interface AggregationWithoutIntervals { aggregatedValue: { value: number; values?: Array<{ key: number; value: number }> }; @@ -135,23 +135,12 @@ const getMetric: ( const interval = `${timeSize}${timeUnit}`; const intervalAsSeconds = getIntervalInSeconds(interval); const intervalAsMS = intervalAsSeconds * 1000; - - const to = moment(timeframe ? timeframe.end : Date.now()).valueOf(); - - // Rate aggregations need 5 buckets worth of data - const minimumBuckets = aggType === Aggregators.RATE ? 5 : 1; - - const minimumFrom = to - intervalAsMS * minimumBuckets; - - const from = roundTimestamp( - timeframe && timeframe.start && timeframe.start <= minimumFrom ? timeframe.start : minimumFrom, - timeUnit - ); + const calculatedTimerange = createTimerange(intervalAsMS, aggType, timeframe); const searchBody = getElasticsearchMetricQuery( params, timefield, - { start: from, end: to }, + calculatedTimerange, hasGroupBy ? groupBy : undefined, filterQuery ); @@ -160,8 +149,8 @@ const getMetric: ( // Rate aggs always drop partial buckets; guard against this boolean being passed as false shouldDropPartialBuckets || aggType === Aggregators.RATE ? { - from, - to, + from: calculatedTimerange.start, + to: calculatedTimerange.end, bucketSizeInMillis: intervalAsMS, } : null; @@ -191,10 +180,7 @@ const getMetric: ( bucket, aggType, dropPartialBucketsOptions, - { - start: from, - end: to, - }, + calculatedTimerange, bucket.doc_count ), }), @@ -212,7 +198,7 @@ const getMetric: ( (result.aggregations! as unknown) as Aggregation, aggType, dropPartialBucketsOptions, - { start: from, end: to }, + calculatedTimerange, isNumber(result.hits.total) ? result.hits.total : result.hits.total.value ), }; diff --git a/x-pack/plugins/lens/public/state_management/index.ts b/x-pack/plugins/lens/public/state_management/index.ts index a23a040de2361..1d8f4fdffa730 100644 --- a/x-pack/plugins/lens/public/state_management/index.ts +++ b/x-pack/plugins/lens/public/state_management/index.ts @@ -6,7 +6,7 @@ */ import { configureStore, getDefaultMiddleware, DeepPartial } from '@reduxjs/toolkit'; -import logger from 'redux-logger'; +import { createLogger } from 'redux-logger'; import { useDispatch, useSelector, TypedUseSelectorHook } from 'react-redux'; import { lensSlice } from './lens_slice'; import { timeRangeMiddleware } from './time_range_middleware'; @@ -50,7 +50,14 @@ export const makeConfigureStore = ( optimizingMiddleware(), timeRangeMiddleware(storeDeps.lensServices.data), ]; - if (process.env.NODE_ENV === 'development') middleware.push(logger); + if (process.env.NODE_ENV === 'development') { + middleware.push( + createLogger({ + // @ts-ignore + predicate: () => window.ELASTIC_LENS_LOGGER, + }) + ); + } return configureStore({ reducer, diff --git a/x-pack/plugins/security_solution/public/app/home/template_wrapper/index.tsx b/x-pack/plugins/security_solution/public/app/home/template_wrapper/index.tsx index 67d9943fabe83..99f67ba26e8f1 100644 --- a/x-pack/plugins/security_solution/public/app/home/template_wrapper/index.tsx +++ b/x-pack/plugins/security_solution/public/app/home/template_wrapper/index.tsx @@ -42,7 +42,6 @@ const StyledKibanaPageTemplate = styled(KibanaPageTemplate)<{ transform: ${( { $isShowingTimelineOverlay } // Since the bottom bar wraps the whole overlay now, need to override any transforms when it is open ) => ($isShowingTimelineOverlay ? 'none' : 'translateY(calc(100% - 50px))')}; - z-index: ${({ theme }) => theme.eui.euiZLevel8}; .${IS_DRAGGING_CLASS_NAME} & { // When a drag is in process the bottom flyout should slide up to allow a drop diff --git a/x-pack/test/alerting_api_integration/security_and_spaces/tests/alerting/alerts.ts b/x-pack/test/alerting_api_integration/security_and_spaces/tests/alerting/alerts.ts index 93535826d14e7..3131649e7c742 100644 --- a/x-pack/test/alerting_api_integration/security_and_spaces/tests/alerting/alerts.ts +++ b/x-pack/test/alerting_api_integration/security_and_spaces/tests/alerting/alerts.ts @@ -39,8 +39,7 @@ export default function alertTests({ getService }: FtrProviderContext) { const esTestIndexTool = new ESTestIndexTool(es, retry); const taskManagerUtils = new TaskManagerUtils(es, retry); - // FLAKY: https://github.com/elastic/kibana/issues/106492 - describe.skip('alerts', () => { + describe('alerts', () => { const authorizationIndex = '.kibana-test-authorization'; const objectRemover = new ObjectRemover(supertest); @@ -502,19 +501,6 @@ instanceStateValue: true }) ); - // Enqueue non ephemerically so we the latter code can query properly - const enqueueResponse = await supertest - .post(`${getUrlPrefix(space.id)}/api/alerts_fixture/${createdAction.id}/enqueue_action`) - .set('kbn-xsrf', 'foo') - .send({ - params: { - reference, - index: ES_TEST_INDEX_NAME, - retryAt: retryDate.getTime(), - }, - }); - expect(enqueueResponse.status).to.eql(204); - switch (scenario.id) { case 'no_kibana_privileges at space1': case 'global_read at space1': diff --git a/x-pack/test/alerting_api_integration/security_and_spaces/tests/alerting/delete.ts b/x-pack/test/alerting_api_integration/security_and_spaces/tests/alerting/delete.ts index fe67decd7d191..d43fb2e7d835f 100644 --- a/x-pack/test/alerting_api_integration/security_and_spaces/tests/alerting/delete.ts +++ b/x-pack/test/alerting_api_integration/security_and_spaces/tests/alerting/delete.ts @@ -23,8 +23,7 @@ export default function createDeleteTests({ getService }: FtrProviderContext) { const retry = getService('retry'); const supertestWithoutAuth = getService('supertestWithoutAuth'); - // FLAKY https://github.com/elastic/kibana/issues/111001 - describe.skip('delete', () => { + describe('delete', () => { const objectRemover = new ObjectRemover(supertest); after(() => objectRemover.removeAll()); diff --git a/x-pack/test/alerting_api_integration/security_and_spaces/tests/alerting/find.ts b/x-pack/test/alerting_api_integration/security_and_spaces/tests/alerting/find.ts index 2126e7383e321..3454ef5c94d9f 100644 --- a/x-pack/test/alerting_api_integration/security_and_spaces/tests/alerting/find.ts +++ b/x-pack/test/alerting_api_integration/security_and_spaces/tests/alerting/find.ts @@ -17,8 +17,7 @@ export default function createFindTests({ getService }: FtrProviderContext) { const supertest = getService('supertest'); const supertestWithoutAuth = getService('supertestWithoutAuth'); - // FLAKY https://github.com/elastic/kibana/issues/111022 - describe.skip('find', () => { + describe('find', () => { const objectRemover = new ObjectRemover(supertest); afterEach(() => objectRemover.removeAll()); diff --git a/x-pack/test/alerting_api_integration/security_and_spaces/tests/alerting/get.ts b/x-pack/test/alerting_api_integration/security_and_spaces/tests/alerting/get.ts index 5925f2bcc812f..0400557209348 100644 --- a/x-pack/test/alerting_api_integration/security_and_spaces/tests/alerting/get.ts +++ b/x-pack/test/alerting_api_integration/security_and_spaces/tests/alerting/get.ts @@ -21,8 +21,7 @@ export default function createGetTests({ getService }: FtrProviderContext) { const supertest = getService('supertest'); const supertestWithoutAuth = getService('supertestWithoutAuth'); - // FLAKY https://github.com/elastic/kibana/issues/111496 - describe.skip('get', () => { + describe('get', () => { const objectRemover = new ObjectRemover(supertest); afterEach(() => objectRemover.removeAll()); diff --git a/x-pack/test/alerting_api_integration/security_and_spaces/tests/alerting/update.ts b/x-pack/test/alerting_api_integration/security_and_spaces/tests/alerting/update.ts index d0ab2e0189a44..e628f0b3d950e 100644 --- a/x-pack/test/alerting_api_integration/security_and_spaces/tests/alerting/update.ts +++ b/x-pack/test/alerting_api_integration/security_and_spaces/tests/alerting/update.ts @@ -32,8 +32,7 @@ export default function createUpdateTests({ getService }: FtrProviderContext) { .then((response: SupertestResponse) => response.body); } - // FLAKY: https://github.com/elastic/kibana/issues/110801 - describe.skip('update', () => { + describe('update', () => { const objectRemover = new ObjectRemover(supertest); after(() => objectRemover.removeAll()); diff --git a/x-pack/test/functional/apps/graph/feature_controls/graph_security.ts b/x-pack/test/functional/apps/graph/feature_controls/graph_security.ts index cc121dccfb13e..913a5034bacc5 100644 --- a/x-pack/test/functional/apps/graph/feature_controls/graph_security.ts +++ b/x-pack/test/functional/apps/graph/feature_controls/graph_security.ts @@ -16,7 +16,8 @@ export default function ({ getPageObjects, getService }: FtrProviderContext) { const appsMenu = getService('appsMenu'); const globalNav = getService('globalNav'); - describe('security', () => { + // FLAKY https://github.com/elastic/kibana/issues/109564 + describe.skip('security', () => { before(async () => { await esArchiver.load('x-pack/test/functional/es_archives/empty_kibana'); // ensure we're logged out so we can login as the appropriate users diff --git a/x-pack/test/functional/services/ml/common_ui.ts b/x-pack/test/functional/services/ml/common_ui.ts index 9af9aaa45be5c..65621c4959d37 100644 --- a/x-pack/test/functional/services/ml/common_ui.ts +++ b/x-pack/test/functional/services/ml/common_ui.ts @@ -241,6 +241,11 @@ export function MachineLearningCommonUIProvider({ channelTolerance = 10, valueTolerance = 10 ) { + if (process.env.TEST_CLOUD) { + log.warning('Not running color assertions in cloud'); + return; + } + await retry.tryForTime(30 * 1000, async () => { await testSubjects.existOrFail(dataTestSubj); diff --git a/x-pack/test/functional/services/transform/wizard.ts b/x-pack/test/functional/services/transform/wizard.ts index 5685cad8fe238..39809d4805064 100644 --- a/x-pack/test/functional/services/transform/wizard.ts +++ b/x-pack/test/functional/services/transform/wizard.ts @@ -22,6 +22,7 @@ export type HistogramCharts = Array<{ export function TransformWizardProvider({ getService, getPageObjects }: FtrProviderContext) { const aceEditor = getService('aceEditor'); const canvasElement = getService('canvasElement'); + const log = getService('log'); const testSubjects = getService('testSubjects'); const comboBox = getService('comboBox'); const retry = getService('retry'); @@ -240,6 +241,11 @@ export function TransformWizardProvider({ getService, getPageObjects }: FtrProvi }, async assertIndexPreviewHistogramCharts(expectedHistogramCharts: HistogramCharts) { + if (process.env.TEST_CLOUD) { + log.warning('Not running color assertions in cloud'); + return; + } + // For each chart, get the content of each header cell and assert // the legend text and column id and if the chart should be present or not. await retry.tryForTime(5000, async () => { diff --git a/yarn.lock b/yarn.lock index 245556cfff7f8..4990a8e47a431 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5827,11 +5827,6 @@ resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.3.tgz#2ab0d5da2e5815f94b0b9d4b95d1e5f243ab2ca7" integrity sha512-KfRL3PuHmqQLOG+2tGpRO26Ctg+Cq1E01D2DMriKEATHgWLfeNDmq9e29Q9WIky0dQ3NPkd1mzYH8Lm936Z9qw== -"@types/proper-lockfile@^3.0.1": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@types/proper-lockfile/-/proper-lockfile-3.0.1.tgz#dd770a2abce3adbcce3bd1ed892ce2f5f17fbc86" - integrity sha512-ODOjqxmaNs0Zkij+BJovsNJRSX7BJrr681o8ZnNTNIcTermvVFzLpz/XFtfg3vNrlPVTJY1l4e9h2LvHoxC1lg== - "@types/q@^1.5.1": version "1.5.4" resolved "https://registry.yarnpkg.com/@types/q/-/q-1.5.4.tgz#15925414e0ad2cd765bfef58842f7e26a7accb24" @@ -6975,13 +6970,6 @@ angular-aria@^1.8.0: resolved "https://registry.yarnpkg.com/angular-aria/-/angular-aria-1.8.0.tgz#97aec9b1e8bafd07d5fab30f98d8ec832e18e25d" integrity sha512-eCQI6EwgY6bYHdzIUfDABHnZjoZ3bNYpCsnceQF4bLfbq1QtZ7raRPNca45sj6C9Pfjde6PNcEDvuLozFPYnrQ== -angular-elastic@^2.5.1: - version "2.5.1" - resolved "https://registry.yarnpkg.com/angular-elastic/-/angular-elastic-2.5.1.tgz#e938ab1bd8c76415b8ca6514b15fe3593a5df535" - integrity sha1-6TirG9jHZBW4ymUUsV/jWTpd9TU= - dependencies: - angular ">=1.0.6" - angular-mocks@^1.7.9: version "1.7.9" resolved "https://registry.yarnpkg.com/angular-mocks/-/angular-mocks-1.7.9.tgz#0a3b7e28b9a493b4e3010ed2b0f69a68e9b4f79b" @@ -6992,11 +6980,6 @@ angular-recursion@^1.0.5: resolved "https://registry.yarnpkg.com/angular-recursion/-/angular-recursion-1.0.5.tgz#cd405428a0bf55faf52eaa7988c1fe69cd930543" integrity sha1-zUBUKKC/Vfr1Lqp5iMH+ac2TBUM= -angular-resource@1.8.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/angular-resource/-/angular-resource-1.8.0.tgz#578ef122e7cb7bcc6c0ad6c2451dc3d27fd570ba" - integrity sha512-9woUq3kDwoT7R6SjKX8vaJMhOplYBm9sqRAxKgDhDIdPyA8iBowqQIusf9+8Q+z/HlXb8ZXvKspJyKXrxmKdvg== - angular-route@^1.8.0: version "1.8.0" resolved "https://registry.yarnpkg.com/angular-route/-/angular-route-1.8.0.tgz#cb8066c5d34284ffd6a15ac7be1b3d51c5ad7bb2" @@ -7012,7 +6995,7 @@ angular-sortable-view@^0.0.17: resolved "https://registry.yarnpkg.com/angular-sortable-view/-/angular-sortable-view-0.0.17.tgz#99e2679951a86b6ee6ff27b099022943c683fb4f" integrity sha512-2WkhM0Lt/wyMyrX/+7ve9ejSegBd7A4eRBNHEIJz8XMBIOjt+3oM1WpcAm+qNThkmNmmQaDeaYv0TQZw/WDMBw== -angular@>=1.0.6, angular@^1.8.0: +angular@^1.8.0: version "1.8.0" resolved "https://registry.yarnpkg.com/angular/-/angular-1.8.0.tgz#b1ec179887869215cab6dfd0df2e42caa65b1b51" integrity sha512-VdaMx+Qk0Skla7B5gw77a8hzlcOakwF8mjlW13DpIWIDlfqwAbSSLfd8N/qZnzEmQF4jC4iofInd3gE7vL8ZZg== @@ -7724,11 +7707,6 @@ attr-accept@^2.0.0: resolved "https://registry.yarnpkg.com/attr-accept/-/attr-accept-2.2.1.tgz#89b48de019ed4342f1865626b4389c666b3ed231" integrity sha512-GpefLMsbH5ojNgfTW+OBin2xKzuHfyeNA+qCktzZojBhbA/lPZdCFMWdwk5ajb989Ok7ZT+EADqvW3TAFNMjhA== -autobind-decorator@^1.3.4: - version "1.4.3" - resolved "https://registry.yarnpkg.com/autobind-decorator/-/autobind-decorator-1.4.3.tgz#4c96ffa77b10622ede24f110f5dbbf56691417d1" - integrity sha1-TJb/p3sQYi7eJPEQ9du/VmkUF9E= - autoprefixer@^9.7.2, autoprefixer@^9.7.4: version "9.8.5" resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.8.5.tgz#2c225de229ddafe1d1424c02791d0c3e10ccccaa" @@ -9395,11 +9373,6 @@ charenc@~0.0.1: resolved "https://registry.yarnpkg.com/charenc/-/charenc-0.0.2.tgz#c0a1d2f3a7092e03774bfa83f14c0fc5790a8667" integrity sha1-wKHS86cJLgN3S/qD8UwPxXkKhmc= -check-disk-space@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/check-disk-space/-/check-disk-space-2.1.0.tgz#2e77fe62f30d9676dc37a524ea2008f40c780295" - integrity sha512-f0nx9oJF/AVF8nhSYlF1EBvMNnO+CXyLwKhPvN1943iOMI9TWhQigLZm80jAf0wzQhwKkzA8XXjyvuVUeGGcVQ== - check-error@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.2.tgz#574d312edd88bb5dd8912e9286dd6c0aed4aac82" @@ -10469,11 +10442,6 @@ create-react-context@0.3.0, create-react-context@^0.3.0: gud "^1.0.0" warning "^4.0.3" -create-react-context@^0.1.5: - version "0.1.6" - resolved "https://registry.yarnpkg.com/create-react-context/-/create-react-context-0.1.6.tgz#0f425931d907741127acc6e31acb4f9015dd9fdc" - integrity sha512-eCnYYEUEc5i32LHwpE/W7NlddOB9oHwsPaWtWzYtflNkkwa3IfindIcoXdVWs12zCbwaMCavKNu84EXogVIWHw== - cronstrue@^1.51.0: version "1.51.0" resolved "https://registry.yarnpkg.com/cronstrue/-/cronstrue-1.51.0.tgz#7a63153d61d940344049037628da38a60784c8e2" @@ -11653,14 +11621,6 @@ defined@^1.0.0, defined@~1.0.0: resolved "https://registry.yarnpkg.com/defined/-/defined-1.0.0.tgz#c98d9bcef75674188e110969151199e39b1fa693" integrity sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM= -del-cli@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/del-cli/-/del-cli-3.0.1.tgz#2d27ff260204b5104cadeda86f78f180a4ebe89a" - integrity sha512-BLHItGr82rUbHhjMu41d+vw9Md49i81jmZSV00HdTq4t+RTHywmEht/23mNFpUl2YeLYJZJyGz4rdlMAyOxNeg== - dependencies: - del "^5.1.0" - meow "^6.1.1" - del@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/del/-/del-4.1.1.tgz#9e8f117222ea44a31ff3a156c049b99052a9f0b4" @@ -13831,14 +13791,6 @@ filesize@6.1.0: resolved "https://registry.yarnpkg.com/filesize/-/filesize-6.1.0.tgz#e81bdaa780e2451d714d71c0d7a4f3238d37ad00" integrity sha512-LpCHtPQ3sFx67z+uh2HnSyWSLLu5Jxo21795uRDuar/EOuYWXib5EmPaGIBuSnRqH2IODiKA2k5re/K9OnN/Yg== -fill-keys@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/fill-keys/-/fill-keys-1.0.2.tgz#9a8fa36f4e8ad634e3bf6b4f3c8882551452eb20" - integrity sha1-mo+jb06K1jTjv2tPPIiCVRRS6yA= - dependencies: - is-object "~1.0.1" - merge-descriptors "~1.0.0" - fill-range@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" @@ -14044,20 +13996,6 @@ focus-lock@^0.7.0: resolved "https://registry.yarnpkg.com/focus-lock/-/focus-lock-0.7.0.tgz#b2bfb0ca7beacc8710a1ff74275fe0dc60a1d88a" integrity sha512-LI7v2mH02R55SekHYdv9pRHR9RajVNyIJ2N5IEkWbg7FT5ZmJ9Hw4mWxHeEUcd+dJo0QmzztHvDvWcc7prVFsw== -focus-trap-react@^3.1.1: - version "3.1.2" - resolved "https://registry.yarnpkg.com/focus-trap-react/-/focus-trap-react-3.1.2.tgz#4dd021ccd028bbd3321147d132cdf7585d6d1394" - integrity sha512-MoQmONoy9gRPyrC5DGezkcOMGgx7MtIOAQDHe098UtL2sA2vmucJwEmQisb+8LRXNYFHxuw5zJ1oLFeKu4Mteg== - dependencies: - focus-trap "^2.0.1" - -focus-trap@^2.0.1: - version "2.4.5" - resolved "https://registry.yarnpkg.com/focus-trap/-/focus-trap-2.4.5.tgz#91c9c9ffb907f8f4446d80202dda9c12c2853ddb" - integrity sha512-jkz7Dh6Pb4ox+z24GhVABDE7lFT19z7KVrpYGH5qqI6KK3Y2IcXhBx844W6ZXYahD+jOEUcGz49dLakXg2sjOQ== - dependencies: - tabbable "^1.0.3" - folktale@2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/folktale/-/folktale-2.0.1.tgz#6dc26a65565aefdef9520223e022dddf5b8d8462" @@ -14155,11 +14093,6 @@ fork-ts-checker-webpack-plugin@4.1.6, fork-ts-checker-webpack-plugin@^4.1.4: tapable "^1.0.0" worker-rpc "^0.1.0" -form-data-to-object@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/form-data-to-object/-/form-data-to-object-0.2.0.tgz#f7a8e68ddd910a1100a65e25ac6a484143ff8168" - integrity sha1-96jmjd2RChEApl4lrGpIQUP/gWg= - form-data@^2.3.1, form-data@^2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.5.0.tgz#094ec359dc4b55e7d62e0db4acd76e89fe874d37" @@ -14211,14 +14144,6 @@ formidable@^1.2.0: resolved "https://registry.yarnpkg.com/formidable/-/formidable-1.2.2.tgz#bf69aea2972982675f00865342b982986f6b8dd9" integrity sha512-V8gLm+41I/8kguQ4/o1D3RIHRmhYFG4pnNyonvua+40rqcEmT4+V71yaZ3B457xbbgCsCfjSPi65u/W6vK1U5Q== -formsy-react@^1.1.5: - version "1.1.5" - resolved "https://registry.yarnpkg.com/formsy-react/-/formsy-react-1.1.5.tgz#ee0911bb70712eb6fb9924d56fdb974a19006955" - integrity sha512-nNWe4Vbp6aDQ/zSxJ7gVQgD5+avFRVbydcjA2Om42flxpQFrKE54AAbuyEj3Jvv+2b9LVl+WLMAPalyvLjwNcQ== - dependencies: - form-data-to-object "^0.2.0" - prop-types "^15.5.10" - forwarded-parse@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/forwarded-parse/-/forwarded-parse-2.1.0.tgz#1ae9d7a4be3af884f74d936d856f7d8c6abd0439" @@ -14589,11 +14514,6 @@ gifwrap@^0.9.2: image-q "^1.1.1" omggif "^1.0.10" -github-markdown-css@^2.10.0: - version "2.10.0" - resolved "https://registry.yarnpkg.com/github-markdown-css/-/github-markdown-css-2.10.0.tgz#0612fed22816b33b282f37ef8def7a4ecabfe993" - integrity sha512-RX5VUC54uX6Lvrm226M9kMzsNeOa81MnKyxb3J0G5KLjyoOySOZgwyKFkUpv6iUhooiUZdogk+OTwQPJ4WttYg== - github-slugger@^1.0.0: version "1.3.0" resolved "https://registry.yarnpkg.com/github-slugger/-/github-slugger-1.3.0.tgz#9bd0a95c5efdfc46005e82a906ef8e2a059124c9" @@ -16675,7 +16595,7 @@ is-obj@^2.0.0: resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-2.0.0.tgz#473fb05d973705e3fd9620545018ca8e22ef4982" integrity sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w== -is-object@^1.0.1, is-object@~1.0.1: +is-object@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-object/-/is-object-1.0.1.tgz#8952688c5ec2ffd6b03ecc85e769e02903083470" integrity sha1-iVJojF7C/9awPsyF52ngKQMINHA= @@ -17696,7 +17616,7 @@ jju@~1.4.0: resolved "https://registry.yarnpkg.com/jju/-/jju-1.4.0.tgz#a3abe2718af241a2b2904f84a625970f389ae32a" integrity sha1-o6vicYryQaKykE+EpiWXDzia4yo= -joi@*, joi@^17.4.0: +joi@*, joi@^17.3.0, joi@^17.4.0: version "17.4.0" resolved "https://registry.yarnpkg.com/joi/-/joi-17.4.0.tgz#b5c2277c8519e016316e49ababd41a1908d9ef20" integrity sha512-F4WiW2xaV6wc1jxete70Rw4V/VuMd6IN+a5ilZsxG4uYtUXWu2kq9W5P2dz30e7Gmw8RCbY/u/uk+dMPma9tAg== @@ -17707,17 +17627,6 @@ joi@*, joi@^17.4.0: "@sideway/formula" "^3.0.0" "@sideway/pinpoint" "^2.0.0" -joi@^17.3.0: - version "17.3.0" - resolved "https://registry.yarnpkg.com/joi/-/joi-17.3.0.tgz#f1be4a6ce29bc1716665819ac361dfa139fff5d2" - integrity sha512-Qh5gdU6niuYbUIUV5ejbsMiiFmBdw8Kcp8Buj2JntszCkCfxJ9Cz76OtHxOZMPXrt5810iDIXs+n1nNVoquHgg== - dependencies: - "@hapi/hoek" "^9.0.0" - "@hapi/topo" "^5.0.0" - "@sideway/address" "^4.1.0" - "@sideway/formula" "^3.0.0" - "@sideway/pinpoint" "^2.0.0" - jpeg-js@0.0.4: version "0.0.4" resolved "https://registry.yarnpkg.com/jpeg-js/-/jpeg-js-0.0.4.tgz#06aaf47efec7af0b1924a59cd695a6d2b5ed870e" @@ -19321,23 +19230,6 @@ memory-fs@^0.5.0: errno "^0.1.3" readable-stream "^2.0.1" -meow@^6.1.1: - version "6.1.1" - resolved "https://registry.yarnpkg.com/meow/-/meow-6.1.1.tgz#1ad64c4b76b2a24dfb2f635fddcadf320d251467" - integrity sha512-3YffViIt2QWgTy6Pale5QpopX/IvU3LPL03jOTqp6pGj3VjesdO/U8CuHMKpnQr4shCNCM5fd5XFFvIIl6JBHg== - dependencies: - "@types/minimist" "^1.2.0" - camelcase-keys "^6.2.2" - decamelize-keys "^1.1.0" - hard-rejection "^2.1.0" - minimist-options "^4.0.2" - normalize-package-data "^2.5.0" - read-pkg-up "^7.0.1" - redent "^3.0.0" - trim-newlines "^3.0.0" - type-fest "^0.13.1" - yargs-parser "^18.1.3" - meow@^7.0.1: version "7.0.1" resolved "https://registry.yarnpkg.com/meow/-/meow-7.0.1.tgz#1ed4a0a50b3844b451369c48362eb0515f04c1dc" @@ -19392,7 +19284,7 @@ meow@^9.0.0: type-fest "^0.18.0" yargs-parser "^20.2.3" -merge-descriptors@1.0.1, merge-descriptors@~1.0.0: +merge-descriptors@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" integrity sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E= @@ -19850,11 +19742,6 @@ module-details-from-path@^1.0.3: resolved "https://registry.yarnpkg.com/module-details-from-path/-/module-details-from-path-1.0.3.tgz#114c949673e2a8a35e9d35788527aa37b679da2b" integrity sha1-EUyUlnPiqKNenTV4hSeqN7Z52is= -module-not-found-error@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/module-not-found-error/-/module-not-found-error-1.0.1.tgz#cf8b4ff4f29640674d6cdd02b0e3bc523c2bbdc0" - integrity sha1-z4tP9PKWQGdNbN0CsOO8UjwrvcA= - moment-duration-format@^2.3.2: version "2.3.2" resolved "https://registry.yarnpkg.com/moment-duration-format/-/moment-duration-format-2.3.2.tgz#5fa2b19b941b8d277122ff3f87a12895ec0d6212" @@ -22471,15 +22358,6 @@ propagate@^2.0.0: resolved "https://registry.yarnpkg.com/propagate/-/propagate-2.0.1.tgz#40cdedab18085c792334e64f0ac17256d38f9a45" integrity sha512-vGrhOavPSTz4QVNuBNdcNXePNdNMaO1xj9yBeH1ScQPjk/rhg9sSlCXPhMkFuaNNW/syTvYqsnbIJxMBfRbbag== -proper-lockfile@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/proper-lockfile/-/proper-lockfile-3.2.0.tgz#89ca420eea1d55d38ca552578851460067bcda66" - integrity sha512-iMghHHXv2bsxl6NchhEaFck8tvX3F9cknEEh1SUpguUOBjN7PAAW9BLzmbc1g/mCD1gY3EE2EABBHPJfFdHFmA== - dependencies: - graceful-fs "^4.1.11" - retry "^0.12.0" - signal-exit "^3.0.2" - property-information@^5.0.0, property-information@^5.0.1, property-information@^5.3.0: version "5.5.0" resolved "https://registry.yarnpkg.com/property-information/-/property-information-5.5.0.tgz#4dc075d493061a82e2b7d096f406e076ed859943" @@ -22534,15 +22412,6 @@ proxy-from-env@^1.0.0, proxy-from-env@^1.1.0: resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2" integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg== -proxyquire@1.8.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/proxyquire/-/proxyquire-1.8.0.tgz#02d514a5bed986f04cbb2093af16741535f79edc" - integrity sha1-AtUUpb7ZhvBMuyCTrxZ0FTX3ntw= - dependencies: - fill-keys "^1.0.2" - module-not-found-error "^1.0.0" - resolve "~1.1.7" - prr@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" @@ -23141,14 +23010,6 @@ react-input-autosize@^2.2.1, react-input-autosize@^2.2.2: dependencies: prop-types "^15.5.8" -react-input-range@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/react-input-range/-/react-input-range-1.3.0.tgz#f96d001631ab817417f1e26d8f9f9684b4827f59" - integrity sha1-+W0AFjGrgXQX8eJtj5+WhLSCf1k= - dependencies: - autobind-decorator "^1.3.4" - prop-types "^15.5.8" - react-inspector@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/react-inspector/-/react-inspector-5.0.1.tgz#8a30f3d488c4f40203624bbe24800f508ae05d3a" @@ -24518,7 +24379,7 @@ resolve-url@^0.2.1: resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= -resolve@1.1.7, resolve@~1.1.7: +resolve@1.1.7: version "1.1.7" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" integrity sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs= @@ -26601,7 +26462,7 @@ syntax-error@^1.1.1: dependencies: acorn-node "^1.2.0" -tabbable@1.1.3, tabbable@^1.0.3: +tabbable@1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/tabbable/-/tabbable-1.1.3.tgz#0e4ee376f3631e42d7977a074dbd2b3827843081" integrity sha512-nOWwx35/JuDI4ONuF0ZTo6lYvI0fY0tZCH1ErzY2EXfu4az50ZyiUX8X073FLiZtmWUVlkRnuXsehjJgCw9tYg== @@ -26841,7 +26702,7 @@ term-size@^2.1.0: resolved "https://registry.yarnpkg.com/term-size/-/term-size-2.2.0.tgz#1f16adedfe9bdc18800e1776821734086fcc6753" integrity sha512-a6sumDlzyHVJWb8+YofY4TW112G6p2FCPEAFk+59gIYHv3XHRhm9ltVQ9kli4hNWeQBwSpe8cRN25x0ROunMOw== -terminal-link@^2.0.0, terminal-link@^2.1.1: +terminal-link@^2.0.0: version "2.1.1" resolved "https://registry.yarnpkg.com/terminal-link/-/terminal-link-2.1.1.tgz#14a64a27ab3c0df933ea546fba55f2d078edc994" integrity sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ== @@ -27640,11 +27501,6 @@ uglify-to-browserify@~1.0.0: resolved "https://registry.yarnpkg.com/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz#6e0924d6bda6b5afe349e39a6d632850a0f882b7" integrity sha1-bgkk1r2mta/jSeOabWMoUKD4grc= -ui-select@0.19.8: - version "0.19.8" - resolved "https://registry.yarnpkg.com/ui-select/-/ui-select-0.19.8.tgz#74860848a7fd8bc494d9856d2f62776ea98637c1" - integrity sha1-dIYISKf9i8SU2YVtL2J3bqmGN8E= - uid-safe@2.1.5: version "2.1.5" resolved "https://registry.yarnpkg.com/uid-safe/-/uid-safe-2.1.5.tgz#2b3d5c7240e8fc2e58f8aa269e5ee49c0857bd3a" @@ -28068,13 +27924,6 @@ unset-value@^1.0.0: has-value "^0.3.1" isobject "^3.0.0" -unstated@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/unstated/-/unstated-2.1.1.tgz#36b124dfb2e7a12d39d0bb9c46dfb6e51276e3a2" - integrity sha512-fORlTWMZxq7NuMJDxyIrrYIZKN7wEWYQ9SiaJfIRcSpsowr6Ph/JIfK2tgtXLW614JfPG/t5q9eEIhXRCf55xg== - dependencies: - create-react-context "^0.1.5" - untildify@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/untildify/-/untildify-4.0.0.tgz#2bc947b953652487e4600949fb091e3ae8cd919b"