diff --git a/.betterer.results b/.betterer.results index 02b49d31a6e..6e40be30205 100644 --- a/.betterer.results +++ b/.betterer.results @@ -4669,9 +4669,6 @@ exports[`better eslint`] = { "public/app/features/plugins/sandbox/distortion_map.ts:5381": [ [0, 0, 0, "Do not use any type assertions.", "0"] ], - "public/app/features/plugins/sandbox/sandbox_components.tsx:5381": [ - [0, 0, 0, "Unexpected any. Specify a different type.", "0"] - ], "public/app/features/plugins/sandbox/sandbox_plugin_loader.ts:5381": [ [0, 0, 0, "Do not use any type assertions.", "0"], [0, 0, 0, "Do not use any type assertions.", "1"], @@ -5542,12 +5539,11 @@ exports[`better eslint`] = { ], "public/app/plugins/datasource/cloud-monitoring/datasource.ts:5381": [ [0, 0, 0, "Unexpected any. Specify a different type.", "0"], - [0, 0, 0, "Unexpected any. Specify a different type.", "1"], - [0, 0, 0, "Do not use any type assertions.", "2"], + [0, 0, 0, "Do not use any type assertions.", "1"], + [0, 0, 0, "Unexpected any. Specify a different type.", "2"], [0, 0, 0, "Unexpected any. Specify a different type.", "3"], - [0, 0, 0, "Unexpected any. Specify a different type.", "4"], - [0, 0, 0, "Do not use any type assertions.", "5"], - [0, 0, 0, "Do not use any type assertions.", "6"] + [0, 0, 0, "Do not use any type assertions.", "4"], + [0, 0, 0, "Do not use any type assertions.", "5"] ], "public/app/plugins/datasource/cloud-monitoring/functions.ts:5381": [ [0, 0, 0, "Do not use any type assertions.", "0"], diff --git a/.yarn/sdks/typescript/package.json b/.yarn/sdks/typescript/package.json index 417fa1369db..d32f3913d79 100644 --- a/.yarn/sdks/typescript/package.json +++ b/.yarn/sdks/typescript/package.json @@ -1,6 +1,6 @@ { "name": "typescript", - "version": "4.8.4-sdk", + "version": "5.2.2-sdk", "main": "./lib/typescript.js", "type": "commonjs", "bin": { diff --git a/.yarnrc.yml b/.yarnrc.yml index 1b0a2c9768a..affb1c6d2fe 100644 --- a/.yarnrc.yml +++ b/.yarnrc.yml @@ -7,7 +7,7 @@ enableTelemetry: false nodeLinker: pnp packageExtensions: - '@storybook/core-common@7.4.5': + "@storybook/core-common@7.4.5": dependencies: '@storybook/react-webpack5': 7.4.5 doctrine@3.0.0: @@ -26,14 +26,14 @@ packageExtensions: react-simple-compat: 1.2.2 react-icons@2.2.7: peerDependencies: - prop-types: '*' + prop-types: "*" react-resizable@3.0.4: peerDependencies: react-dom: 17.0.1 plugins: - path: .yarn/plugins/@yarnpkg/plugin-outdated.cjs - spec: 'https://mskelton.dev/yarn-outdated/v2' + spec: "https://mskelton.dev/yarn-outdated/v2" yarnPath: .yarn/releases/yarn-4.0.0.cjs # Uncomment the following lines if you want to use Verdaccio local npm registry. Read more at packages/README.md diff --git a/package.json b/package.json index dc42f9dcadf..ee51f05d3f4 100644 --- a/package.json +++ b/package.json @@ -226,7 +226,7 @@ "tracelib": "1.0.1", "ts-jest": "29.1.1", "ts-node": "10.9.1", - "typescript": "4.8.4", + "typescript": "5.2.2", "webpack": "5.89.0", "webpack-bundle-analyzer": "4.9.0", "webpack-cli": "5.1.4", diff --git a/packages/grafana-data/package.json b/packages/grafana-data/package.json index 10820169eb1..9f966f93258 100644 --- a/packages/grafana-data/package.json +++ b/packages/grafana-data/package.json @@ -91,7 +91,7 @@ "rollup-plugin-dts": "^5.0.0", "rollup-plugin-esbuild": "5.0.0", "rollup-plugin-node-externals": "^5.0.0", - "typescript": "4.8.4" + "typescript": "5.2.2" }, "peerDependencies": { "react": "^17.0.0 || ^18.0.0", diff --git a/packages/grafana-data/src/themes/colorManipulator.ts b/packages/grafana-data/src/themes/colorManipulator.ts index 0ab6eb2cca1..dcd0ce481e2 100644 --- a/packages/grafana-data/src/themes/colorManipulator.ts +++ b/packages/grafana-data/src/themes/colorManipulator.ts @@ -32,9 +32,15 @@ export function hexToRgb(color: string) { color = color.slice(1); const re = new RegExp(`.{1,${color.length >= 6 ? 2 : 1}}`, 'g'); - let colors = color.match(re); + let result = color.match(re); - if (colors && colors[0].length === 1) { + if (!result) { + return ''; + } + + let colors = Array.from(result); + + if (colors[0].length === 1) { colors = colors.map((n) => n + n); } diff --git a/packages/grafana-data/src/types/logs.ts b/packages/grafana-data/src/types/logs.ts index ad9ef4a5931..fe8dd249022 100644 --- a/packages/grafana-data/src/types/logs.ts +++ b/packages/grafana-data/src/types/logs.ts @@ -153,7 +153,7 @@ export interface DataSourceWithLogsContextSupport { - if (!datasource) { + if (!datasource || typeof datasource !== 'object') { return false; } @@ -253,7 +253,7 @@ export const hasSupplementaryQuerySupport = ( }; export const hasLogsContextUiSupport = (datasource: unknown): datasource is DataSourceWithLogsContextSupport => { - if (!datasource) { + if (!datasource || typeof datasource !== 'object') { return false; } diff --git a/packages/grafana-data/src/types/query.ts b/packages/grafana-data/src/types/query.ts index f335755a8cd..1ec157c0a57 100644 --- a/packages/grafana-data/src/types/query.ts +++ b/packages/grafana-data/src/types/query.ts @@ -66,9 +66,10 @@ export interface DataSourceWithQueryExportSupport( datasource: unknown ): datasource is DataSourceWithQueryImportSupport => { - if (!datasource) { + if (!datasource || typeof datasource !== 'object') { return false; } + return 'importFromAbstractQueries' in datasource; }; @@ -78,7 +79,7 @@ export const hasQueryImportSupport = ( export const hasQueryExportSupport = ( datasource: unknown ): datasource is DataSourceWithQueryExportSupport => { - if (!datasource) { + if (!datasource || typeof datasource !== 'object') { return false; } return 'exportToAbstractQueries' in datasource; diff --git a/packages/grafana-data/src/vector/FunctionalVector.ts b/packages/grafana-data/src/vector/FunctionalVector.ts index 62782fe718f..fa6a0420a67 100644 --- a/packages/grafana-data/src/vector/FunctionalVector.ts +++ b/packages/grafana-data/src/vector/FunctionalVector.ts @@ -101,18 +101,8 @@ export abstract class FunctionalVector implements Vector { copyWithin(target: number, start: number, end?: number | undefined): this { throw new Error('Method not implemented.'); } - - [Symbol.unscopables](): { - copyWithin: boolean; - entries: boolean; - fill: boolean; - find: boolean; - findIndex: boolean; - keys: boolean; - values: boolean; - } { - throw new Error('Method not implemented.'); - } + // Object not implemented + [Symbol.unscopables] = {}; //-------------------------------------------------------------------------------- // Delegated Array function -- these will not be efficient :grimmice: diff --git a/packages/grafana-e2e-selectors/package.json b/packages/grafana-e2e-selectors/package.json index b7d8ed93e7f..97046a3d053 100644 --- a/packages/grafana-e2e-selectors/package.json +++ b/packages/grafana-e2e-selectors/package.json @@ -52,6 +52,6 @@ "dependencies": { "@grafana/tsconfig": "^1.2.0-rc1", "tslib": "2.6.0", - "typescript": "4.8.4" + "typescript": "5.2.2" } } diff --git a/packages/grafana-e2e/package.json b/packages/grafana-e2e/package.json index 95aa26c950e..97e65cf3581 100644 --- a/packages/grafana-e2e/package.json +++ b/packages/grafana-e2e/package.json @@ -82,7 +82,7 @@ "tracelib": "1.0.1", "ts-loader": "8.4.0", "tslib": "2.6.0", - "typescript": "4.8.4", + "typescript": "5.2.2", "uuid": "9.0.0", "yaml": "^2.0.0" } diff --git a/packages/grafana-flamegraph/package.json b/packages/grafana-flamegraph/package.json index 146f201e655..0d9c21b9b1a 100644 --- a/packages/grafana-flamegraph/package.json +++ b/packages/grafana-flamegraph/package.json @@ -79,7 +79,7 @@ "rollup-plugin-node-externals": "^5.0.0", "ts-jest": "29.1.1", "ts-node": "10.9.1", - "typescript": "4.8.4" + "typescript": "5.2.2" }, "peerDependencies": { "react": "^17.0.0 || ^18.0.0", diff --git a/packages/grafana-runtime/package.json b/packages/grafana-runtime/package.json index a0ca950c78a..2a1c2492a78 100644 --- a/packages/grafana-runtime/package.json +++ b/packages/grafana-runtime/package.json @@ -73,7 +73,7 @@ "rollup-plugin-node-externals": "^5.0.0", "rollup-plugin-sourcemaps": "0.6.3", "rollup-plugin-terser": "7.0.2", - "typescript": "4.8.4" + "typescript": "5.2.2" }, "peerDependencies": { "react": "^17.0.0 || ^18.0.0", diff --git a/packages/grafana-schema/package.json b/packages/grafana-schema/package.json index 6ec2b9cf88d..0cac85c065b 100644 --- a/packages/grafana-schema/package.json +++ b/packages/grafana-schema/package.json @@ -47,7 +47,7 @@ "rollup-plugin-dts": "^5.0.0", "rollup-plugin-esbuild": "5.0.0", "rollup-plugin-node-externals": "^5.0.0", - "typescript": "4.8.4" + "typescript": "5.2.2" }, "dependencies": { "tslib": "2.6.0" diff --git a/packages/grafana-ui/package.json b/packages/grafana-ui/package.json index 3803d3c6330..b285abded57 100644 --- a/packages/grafana-ui/package.json +++ b/packages/grafana-ui/package.json @@ -185,7 +185,7 @@ "storybook-addon-turbo-build": "2.0.1", "storybook-dark-mode": "3.0.1", "style-loader": "3.3.3", - "typescript": "4.8.4", + "typescript": "5.2.2", "webpack": "5.89.0" }, "peerDependencies": { diff --git a/packages/grafana-ui/src/components/PanelChrome/PanelChrome.story.tsx b/packages/grafana-ui/src/components/PanelChrome/PanelChrome.story.tsx index b0ef4858be1..16ed96da300 100644 --- a/packages/grafana-ui/src/components/PanelChrome/PanelChrome.story.tsx +++ b/packages/grafana-ui/src/components/PanelChrome/PanelChrome.story.tsx @@ -51,7 +51,7 @@ function renderPanel(name: string, overrides?: Partial) { return ( - {(innerWidth, innerHeight) => { + {(innerWidth: number, innerHeight: number) => { return
{name}
; }}
@@ -75,7 +75,7 @@ function renderCollapsiblePanel(name: string, overrides?: Partial - {(innerWidth, innerHeight) => { + {(innerWidth: number, innerHeight: number) => { return
{name}
; }} diff --git a/packages/grafana-ui/src/components/uPlot/utils.ts b/packages/grafana-ui/src/components/uPlot/utils.ts index d5d1dd7356b..1a3253013ca 100644 --- a/packages/grafana-ui/src/components/uPlot/utils.ts +++ b/packages/grafana-ui/src/components/uPlot/utils.ts @@ -381,7 +381,7 @@ function hasNegSample(data: unknown[], samples = 100) { for (let i = firstIdx; i <= lastIdx; i += stride) { const v = data[i]; - if (v != null) { + if (v != null && typeof v === 'number') { if (v < 0 || Object.is(v, -0)) { negCount++; } else if (v > 0) { diff --git a/public/app/features/alerting/unified/CloneRuleEditor.test.tsx b/public/app/features/alerting/unified/CloneRuleEditor.test.tsx index ded8fa455c1..2c8ba1f1190 100644 --- a/public/app/features/alerting/unified/CloneRuleEditor.test.tsx +++ b/public/app/features/alerting/unified/CloneRuleEditor.test.tsx @@ -215,7 +215,6 @@ describe('CloneRuleEditor', function () { render( { type: 'query', name: 'variable_with_unknown_refresh_with_options', options: [{ text: 'A', value: 'A' }], + // @ts-expect-error refresh: 2001, }, { type: 'query', name: 'variable_with_unknown_refresh_without_options', options: [], + // @ts-expect-error refresh: 2001, }, { @@ -1904,13 +1906,13 @@ describe('DashboardModel', () => { }, ], }, + // @ts-expect-error { type: 'row', id: 5, panels: [ { id: 6, - // @ts-expect-error datasource: 'prom', }, ], diff --git a/public/app/features/dashboard/state/DashboardModel.test.ts b/public/app/features/dashboard/state/DashboardModel.test.ts index 45294c5df9e..2a846fa2239 100644 --- a/public/app/features/dashboard/state/DashboardModel.test.ts +++ b/public/app/features/dashboard/state/DashboardModel.test.ts @@ -1,7 +1,7 @@ import { keys as _keys } from 'lodash'; import { dateTime, TimeRange, VariableHide } from '@grafana/data'; -import { Dashboard, defaultVariableModel } from '@grafana/schema'; +import { Dashboard, defaultVariableModel, RowPanel } from '@grafana/schema'; import { getDashboardModel } from '../../../../test/helpers/getDashboardModel'; import { variableAdapters } from '../../variables/adapters'; @@ -538,6 +538,14 @@ describe('DashboardModel', () => { let dashboard: DashboardModel; beforeEach(() => { + const panels: RowPanel['panels'] = [ + // this whole test is about dealing with out-of-spec (or at least ambigious) data... + // @ts-expect-error + { id: 3, type: 'graph', gridPos: { w: 12, h: 2 } }, + // @ts-expect-error + { id: 4, type: 'graph', gridPos: { w: 12, h: 2 } }, + ]; + dashboard = createDashboardModelFixture({ panels: [ { id: 1, type: 'graph', gridPos: { x: 0, y: 0, w: 24, h: 6 } }, @@ -546,13 +554,7 @@ describe('DashboardModel', () => { type: 'row', gridPos: { x: 0, y: 6, w: 24, h: 1 }, collapsed: true, - panels: [ - // this whole test is about dealing with out-of-spec (or at least ambigious) data... - //@ts-expect-error - { id: 3, type: 'graph', gridPos: { w: 12, h: 2 } }, - //@ts-expect-error - { id: 4, type: 'graph', gridPos: { w: 12, h: 2 } }, - ], + panels: panels, }, { id: 5, type: 'row', collapsed: false, panels: [], gridPos: { x: 0, y: 7, w: 1, h: 1 } }, ], diff --git a/public/app/features/explore/RawPrometheus/RawPrometheusContainer.tsx b/public/app/features/explore/RawPrometheus/RawPrometheusContainer.tsx index c67485995b3..9bcfacab161 100644 --- a/public/app/features/explore/RawPrometheus/RawPrometheusContainer.tsx +++ b/public/app/features/explore/RawPrometheus/RawPrometheusContainer.tsx @@ -35,7 +35,7 @@ function mapStateToProps(state: StoreState, { exploreId }: RawPrometheusContaine const { tableResult, rawPrometheusResult, range } = item; const loadingInState = selectIsWaitingForData(exploreId)(state); const rawPrometheusFrame: DataFrame[] = rawPrometheusResult ? [rawPrometheusResult] : []; - const result = (tableResult?.length ?? false) > 0 && rawPrometheusResult ? tableResult : rawPrometheusFrame; + const result = (tableResult?.length ?? 0) > 0 && rawPrometheusResult ? tableResult : rawPrometheusFrame; const loading = result && result.length > 0 ? false : loadingInState; return { loading, tableResult: result, range }; diff --git a/public/app/features/explore/utils/decorators.test.ts b/public/app/features/explore/utils/decorators.test.ts index 2060d9d3ae3..67adfacbb73 100644 --- a/public/app/features/explore/utils/decorators.test.ts +++ b/public/app/features/explore/utils/decorators.test.ts @@ -1,4 +1,3 @@ -import { flattenDeep } from 'lodash'; import { lastValueFrom } from 'rxjs'; import { @@ -409,9 +408,11 @@ describe('decorateWithCorrelations', () => { correlations: [], defaultTargetDatasource: undefined, })(panelData); - expect( - flattenDeep(postDecoratedPanel.series.map((frame) => frame.fields.map((field) => field.config.links))) - ).toEqual([]); + + const flattenedLinks = postDecoratedPanel.series + .flatMap((frame) => frame.fields) + .flatMap((field) => field.config.links); + expect(flattenedLinks).toEqual([]); }); it('returns one field link per field if there are no correlations, but there are editor links', () => { @@ -430,9 +431,11 @@ describe('decorateWithCorrelations', () => { correlations: [], defaultTargetDatasource: datasource, })(panelData); - const flattenedLinks = flattenDeep( - postDecoratedPanel.series.map((frame) => frame.fields.map((field) => field.config.links)) - ); + + const flattenedLinks = postDecoratedPanel.series + .flatMap((frame) => frame.fields) + .flatMap((field) => field.config.links); + expect(flattenedLinks.length).toEqual(table.fields.length); expect(flattenedLinks[0]).not.toBeUndefined(); }); @@ -454,9 +457,11 @@ describe('decorateWithCorrelations', () => { correlations: correlations, defaultTargetDatasource: datasource, })(panelData); - const flattenedLinks = flattenDeep( - postDecoratedPanel.series.map((frame) => frame.fields.map((field) => field.config.links)) - ); + + const flattenedLinks = postDecoratedPanel.series + .flatMap((frame) => frame.fields) + .flatMap((field) => field.config.links); + expect(flattenedLinks.length).toEqual(table.fields.length); expect(flattenedLinks[0]).not.toBeUndefined(); }); @@ -487,8 +492,11 @@ describe('decorateWithCorrelations', () => { correlations: correlations, defaultTargetDatasource: undefined, })(panelData); - expect( - flattenDeep(postDecoratedPanel.series.map((frame) => frame.fields.map((field) => field.config.links))).length - ).toEqual(correlations.length); + + const flattenedLinks = postDecoratedPanel.series + .flatMap((frame) => frame.fields) + .flatMap((field) => field.config.links); + + expect(flattenedLinks.length).toEqual(correlations.length); }); }); diff --git a/public/app/features/inspector/InspectJSONTab.tsx b/public/app/features/inspector/InspectJSONTab.tsx index ff86bf653b5..ed58db146eb 100644 --- a/public/app/features/inspector/InspectJSONTab.tsx +++ b/public/app/features/inspector/InspectJSONTab.tsx @@ -146,7 +146,7 @@ export function InspectJSONTab({ panel, dashboard, data, onClose }: Props) { height={height} language="json" showLineNumbers={true} - showMiniMap={(text && text.length) > 100} + showMiniMap={text.length > 100} value={text || ''} readOnly={!isPanelJSON} onBlur={setText} diff --git a/public/app/features/logs/logsModel.ts b/public/app/features/logs/logsModel.ts index 2fe9bcf93bd..2eb8d3025f3 100644 --- a/public/app/features/logs/logsModel.ts +++ b/public/app/features/logs/logsModel.ts @@ -535,7 +535,7 @@ function adjustMetaInfo(logsModel: LogsModel, visibleRangeMs?: number, requested const limitIndex = logsModelMeta.findIndex((meta) => meta.label === LIMIT_LABEL); const limit = limitIndex >= 0 && logsModelMeta[limitIndex]?.value; - if (limit && limit > 0) { + if (limit && typeof limit === 'number' && limit > 0) { let metaLimitValue; if (limit === logsModel.rows.length && visibleRangeMs && requestedRangeMs) { diff --git a/public/app/features/plugins/sandbox/sandbox_components.tsx b/public/app/features/plugins/sandbox/sandbox_components.tsx index c7264bd7c94..9ff02f2da2f 100644 --- a/public/app/features/plugins/sandbox/sandbox_components.tsx +++ b/public/app/features/plugins/sandbox/sandbox_components.tsx @@ -1,7 +1,7 @@ import { isFunction } from 'lodash'; import React, { ComponentType, FC } from 'react'; -import { PluginConfigPage, PluginExtensionConfig, PluginMeta, PluginType } from '@grafana/data'; +import { GrafanaPlugin, PluginExtensionConfig, PluginMeta, PluginType } from '@grafana/data'; import { SandboxedPluginObject } from './types'; import { isSandboxedPluginObject } from './utils'; @@ -70,7 +70,8 @@ export async function sandboxPluginComponents( // config pages if (Reflect.has(pluginObject, 'configPages')) { - const configPages: Record> = Reflect.get(pluginObject, 'configPages'); + const configPages: NonNullable = Reflect.get(pluginObject, 'configPages') ?? []; + for (const [key, value] of Object.entries(configPages)) { if (!value.body || !isFunction(value.body)) { continue; diff --git a/public/app/features/query/state/DashboardQueryRunner/AnnotationsWorker.ts b/public/app/features/query/state/DashboardQueryRunner/AnnotationsWorker.ts index 55ce5a23a04..cc1854f7208 100644 --- a/public/app/features/query/state/DashboardQueryRunner/AnnotationsWorker.ts +++ b/public/app/features/query/state/DashboardQueryRunner/AnnotationsWorker.ts @@ -59,7 +59,7 @@ export class AnnotationsWorker implements DashboardQueryRunnerWorker { } return datasourceObservable.pipe( - mergeMap((datasource?: DataSourceApi) => { + mergeMap((datasource: DataSourceApi | undefined) => { const runner = this.runners.find((r) => r.canRun(datasource)); if (!runner) { return of([]); diff --git a/public/app/features/variables/adhoc/AdHocVariableEditor.test.tsx b/public/app/features/variables/adhoc/AdHocVariableEditor.test.tsx index cc4ae6e0bfb..3d5607e92ed 100644 --- a/public/app/features/variables/adhoc/AdHocVariableEditor.test.tsx +++ b/public/app/features/variables/adhoc/AdHocVariableEditor.test.tsx @@ -1,5 +1,5 @@ import { render, screen } from '@testing-library/react'; -import React from 'react'; +import React, { ComponentProps } from 'react'; import { selectOptionInTest } from 'test/helpers/selectOptionInTest'; import { selectors } from '@grafana/e2e-selectors'; @@ -43,7 +43,7 @@ const props = { { text: 'Prometheus', value: null }, // default datasource { text: 'Loki', value: { type: 'loki-ds', uid: 'abc' } }, ], - }, + } as ComponentProps['extended'], variable: adHocBuilder().withId('adhoc').withRootStateKey('key').withName('adhoc').build(), onPropChange: jest.fn(), diff --git a/public/app/plugins/datasource/cloud-monitoring/datasource.ts b/public/app/plugins/datasource/cloud-monitoring/datasource.ts index f3973a04626..b0ebe939538 100644 --- a/public/app/plugins/datasource/cloud-monitoring/datasource.ts +++ b/public/app/plugins/datasource/cloud-monitoring/datasource.ts @@ -89,7 +89,7 @@ export default class CloudMonitoringDatasource extends DataSourceWithBackend< projectName: string, aggregation?: Aggregation, timeRange?: TimeRange - ) { + ): Promise<{ [k: string]: string[] }> { const options = { targets: [ { @@ -130,11 +130,13 @@ export default class CloudMonitoringDatasource extends DataSourceWithBackend< }, }); }), + map(({ data }) => { const dataQueryResponse = toDataQueryResponse({ data: data, }); - const labels = dataQueryResponse?.data + + const labels: Record> = dataQueryResponse?.data .map((f) => f.meta?.custom?.labels) .filter((p) => !!p) .reduce((acc, labels) => { @@ -148,10 +150,11 @@ export default class CloudMonitoringDatasource extends DataSourceWithBackend< } return acc; }, {}); + return Object.fromEntries( - Object.entries(labels).map((l: any) => { - l[1] = Array.from(l[1]); - return l; + Object.entries(labels).map(([key, value]) => { + const fromArr = Array.from(value); + return [key, fromArr]; }) ); }) diff --git a/public/app/plugins/datasource/elasticsearch/modifyQuery.ts b/public/app/plugins/datasource/elasticsearch/modifyQuery.ts index f4206041f98..529ffac457e 100644 --- a/public/app/plugins/datasource/elasticsearch/modifyQuery.ts +++ b/public/app/plugins/datasource/elasticsearch/modifyQuery.ts @@ -198,19 +198,22 @@ function normalizeQuery(query: string) { } function isLeftOnlyAST(ast: unknown): ast is LeftOnlyAST { - if (!ast) { + if (!ast || typeof ast !== 'object') { return false; } + if ('left' in ast && !('right' in ast)) { return true; } + return false; } function isBinaryAST(ast: unknown): ast is BinaryAST { - if (!ast) { + if (!ast || typeof ast !== 'object') { return false; } + if ('left' in ast && 'right' in ast) { return true; } @@ -222,12 +225,10 @@ function isAST(ast: unknown): ast is AST { } function isNodeTerm(ast: unknown): ast is NodeTerm { - if (!ast) { - return false; - } - if ('term' in ast) { + if (ast && typeof ast === 'object' && 'term' in ast) { return true; } + return false; } diff --git a/public/app/plugins/datasource/grafana-testdata-datasource/runStreams.ts b/public/app/plugins/datasource/grafana-testdata-datasource/runStreams.ts index e5f12328398..ed773320c95 100644 --- a/public/app/plugins/datasource/grafana-testdata-datasource/runStreams.ts +++ b/public/app/plugins/datasource/grafana-testdata-datasource/runStreams.ts @@ -182,7 +182,7 @@ export function runFetchStream( data.refId = target.refId; data.name = target.alias || 'Fetch ' + target.refId; - let reader: ReadableStreamReader; + let reader: ReadableStreamDefaultReader; const csv = new CSVReader({ callback: { onHeader: (fields: Field[]) => { diff --git a/public/test/core/redux/reducerTester.ts b/public/test/core/redux/reducerTester.ts index 55d5378cff1..38c466afa2b 100644 --- a/public/test/core/redux/reducerTester.ts +++ b/public/test/core/redux/reducerTester.ts @@ -25,32 +25,29 @@ export interface Then { whenActionIsDispatched: (action: AnyAction) => Then; } +const isNotException = (object: unknown, propertyName: string) => + typeof object === 'function' + ? propertyName !== 'caller' && propertyName !== 'callee' && propertyName !== 'arguments' + : true; + export const deepFreeze = (obj: T): T => { - Object.freeze(obj); + if (typeof obj === 'object') { + for (const key in obj) { + const prop = obj[key]; - const isNotException = (object: unknown, propertyName: string) => - typeof object === 'function' - ? propertyName !== 'caller' && propertyName !== 'callee' && propertyName !== 'arguments' - : true; - const hasOwnProp = Object.prototype.hasOwnProperty; - - if (obj && obj instanceof Object) { - const object: Record = obj; - Object.getOwnPropertyNames(object).forEach((propertyName) => { - const objectProperty = object[propertyName]; if ( - hasOwnProp.call(object, propertyName) && - isNotException(object, propertyName) && - objectProperty && - (typeof objectProperty === 'object' || typeof objectProperty === 'function') && - Object.isFrozen(objectProperty) === false + prop && + Object.hasOwn(obj, key) && + isNotException(obj, key) && + (typeof prop === 'object' || typeof prop === 'function') && + !Object.isFrozen(prop) ) { - deepFreeze(objectProperty); + deepFreeze(prop); } - }); + } } - return obj; + return Object.freeze(obj); }; interface ReducerTester extends Given, When, Then {} diff --git a/yarn.lock b/yarn.lock index b31c05338ae..3b727acab8e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -12,7 +12,7 @@ __metadata: languageName: node linkType: hard -"@adobe/css-tools@npm:^4.3.1": +"@adobe/css-tools@npm:^4.3.0, @adobe/css-tools@npm:^4.3.1": version: 4.3.1 resolution: "@adobe/css-tools@npm:4.3.1" checksum: 039a42ffdd41ecf3abcaf09c9fef0ffd634ccbe81c04002fc989e74564eba99bb19169a8f48dadf6442aa2c5c9f0925a7b27ec5c36a1ed1a3515fe77d6930996 @@ -2979,7 +2979,7 @@ __metadata: string-hash: "npm:^1.1.3" tinycolor2: "npm:1.6.0" tslib: "npm:2.6.0" - typescript: "npm:4.8.4" + typescript: "npm:5.2.2" uplot: "npm:1.6.27" xss: "npm:^1.0.14" peerDependencies: @@ -3014,7 +3014,7 @@ __metadata: rollup-plugin-esbuild: "npm:5.0.0" rollup-plugin-node-externals: "npm:^5.0.0" tslib: "npm:2.6.0" - typescript: "npm:4.8.4" + typescript: "npm:5.2.2" languageName: unknown linkType: soft @@ -3054,7 +3054,7 @@ __metadata: tracelib: "npm:1.0.1" ts-loader: "npm:8.4.0" tslib: "npm:2.6.0" - typescript: "npm:4.8.4" + typescript: "npm:5.2.2" uuid: "npm:9.0.0" webpack: "npm:5.89.0" yaml: "npm:^2.0.0" @@ -3214,7 +3214,7 @@ __metadata: ts-jest: "npm:29.1.1" ts-node: "npm:10.9.1" tslib: "npm:2.6.0" - typescript: "npm:4.8.4" + typescript: "npm:5.2.2" peerDependencies: react: ^17.0.0 || ^18.0.0 react-dom: ^17.0.0 || ^18.0.0 @@ -3313,7 +3313,7 @@ __metadata: systemjs: "npm:6.14.2" systemjs-cjs-extra: "npm:0.2.0" tslib: "npm:2.6.0" - typescript: "npm:4.8.4" + typescript: "npm:5.2.2" peerDependencies: react: ^17.0.0 || ^18.0.0 react-dom: ^17.0.0 || ^18.0.0 @@ -3354,7 +3354,7 @@ __metadata: rollup-plugin-esbuild: "npm:5.0.0" rollup-plugin-node-externals: "npm:^5.0.0" tslib: "npm:2.6.0" - typescript: "npm:4.8.4" + typescript: "npm:5.2.2" languageName: unknown linkType: soft @@ -3510,7 +3510,7 @@ __metadata: style-loader: "npm:3.3.3" tinycolor2: "npm:1.6.0" tslib: "npm:2.6.0" - typescript: "npm:4.8.4" + typescript: "npm:5.2.2" uplot: "npm:1.6.27" uuid: "npm:9.0.0" webpack: "npm:5.89.0" @@ -3635,6 +3635,20 @@ __metadata: languageName: node linkType: hard +"@jest/console@npm:^29.6.4": + version: 29.6.4 + resolution: "@jest/console@npm:29.6.4" + dependencies: + "@jest/types": "npm:^29.6.3" + "@types/node": "npm:*" + chalk: "npm:^4.0.0" + jest-message-util: "npm:^29.6.3" + jest-util: "npm:^29.6.3" + slash: "npm:^3.0.0" + checksum: c482f87a43bb2c48da79c53ad4157542a67c6c90972a8615b852f889da73fd4bcd2a2b85d41b1c867e3df7e7f55e83b4ac91f226511d5645bc20f6498f114c0d + languageName: node + linkType: hard + "@jest/console@npm:^29.7.0": version: 29.7.0 resolution: "@jest/console@npm:29.7.0" @@ -3690,6 +3704,47 @@ __metadata: languageName: node linkType: hard +"@jest/core@npm:^29.6.4": + version: 29.6.4 + resolution: "@jest/core@npm:29.6.4" + dependencies: + "@jest/console": "npm:^29.6.4" + "@jest/reporters": "npm:^29.6.4" + "@jest/test-result": "npm:^29.6.4" + "@jest/transform": "npm:^29.6.4" + "@jest/types": "npm:^29.6.3" + "@types/node": "npm:*" + ansi-escapes: "npm:^4.2.1" + chalk: "npm:^4.0.0" + ci-info: "npm:^3.2.0" + exit: "npm:^0.1.2" + graceful-fs: "npm:^4.2.9" + jest-changed-files: "npm:^29.6.3" + jest-config: "npm:^29.6.4" + jest-haste-map: "npm:^29.6.4" + jest-message-util: "npm:^29.6.3" + jest-regex-util: "npm:^29.6.3" + jest-resolve: "npm:^29.6.4" + jest-resolve-dependencies: "npm:^29.6.4" + jest-runner: "npm:^29.6.4" + jest-runtime: "npm:^29.6.4" + jest-snapshot: "npm:^29.6.4" + jest-util: "npm:^29.6.3" + jest-validate: "npm:^29.6.3" + jest-watcher: "npm:^29.6.4" + micromatch: "npm:^4.0.4" + pretty-format: "npm:^29.6.3" + slash: "npm:^3.0.0" + strip-ansi: "npm:^6.0.0" + peerDependencies: + node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 + peerDependenciesMeta: + node-notifier: + optional: true + checksum: a1e47946d715a1735f89fdf9fcf6e99278cef691ac893db4c13e283f753a5c62cec47d68d4f3d7fe823aac0fc603257740f630591e8029846e83f451456a4716 + languageName: node + linkType: hard + "@jest/environment@npm:^29.3.1, @jest/environment@npm:^29.7.0": version: 29.7.0 resolution: "@jest/environment@npm:29.7.0" @@ -3702,6 +3757,27 @@ __metadata: languageName: node linkType: hard +"@jest/environment@npm:^29.6.4": + version: 29.6.4 + resolution: "@jest/environment@npm:29.6.4" + dependencies: + "@jest/fake-timers": "npm:^29.6.4" + "@jest/types": "npm:^29.6.3" + "@types/node": "npm:*" + jest-mock: "npm:^29.6.3" + checksum: 8c31ed7f3992f450b994684a2a92d2a023e5e182773e13ea7c627edd25598279d5d1a958bea970e3868bc4d45e20881ddcf9bf9af9425f87d38959141f42693d + languageName: node + linkType: hard + +"@jest/expect-utils@npm:^29.6.4": + version: 29.6.4 + resolution: "@jest/expect-utils@npm:29.6.4" + dependencies: + jest-get-type: "npm:^29.6.3" + checksum: 47f17bb3262175600130c698fdaaa680ec7f4612bfdb3f4f9f03e0252c341f31135ae854246f5548453634deef949533aa35b3638cfa776ce5596fd4bd8f1c6e + languageName: node + linkType: hard + "@jest/expect-utils@npm:^29.7.0": version: 29.7.0 resolution: "@jest/expect-utils@npm:29.7.0" @@ -3711,6 +3787,16 @@ __metadata: languageName: node linkType: hard +"@jest/expect@npm:^29.6.4": + version: 29.6.4 + resolution: "@jest/expect@npm:29.6.4" + dependencies: + expect: "npm:^29.6.4" + jest-snapshot: "npm:^29.6.4" + checksum: e6564697562885e2b96294740a507e82e76b9f0af83f6101e2979a8650ec14055452e0ea68c154f92ef93ef83b258f1a45aa39df4e0f472e5ff5c4468de4170f + languageName: node + linkType: hard + "@jest/expect@npm:^29.7.0": version: 29.7.0 resolution: "@jest/expect@npm:29.7.0" @@ -3735,6 +3821,32 @@ __metadata: languageName: node linkType: hard +"@jest/fake-timers@npm:^29.6.4": + version: 29.6.4 + resolution: "@jest/fake-timers@npm:29.6.4" + dependencies: + "@jest/types": "npm:^29.6.3" + "@sinonjs/fake-timers": "npm:^10.0.2" + "@types/node": "npm:*" + jest-message-util: "npm:^29.6.3" + jest-mock: "npm:^29.6.3" + jest-util: "npm:^29.6.3" + checksum: 87df3df08111adb51a425edcbd6a454ec5bf1fec582946d04e68616d669fadad64fefee3ddb05b3c91984e47e718917fac907015095c55c2acd58e4f863b0523 + languageName: node + linkType: hard + +"@jest/globals@npm:^29.6.4": + version: 29.6.4 + resolution: "@jest/globals@npm:29.6.4" + dependencies: + "@jest/environment": "npm:^29.6.4" + "@jest/expect": "npm:^29.6.4" + "@jest/types": "npm:^29.6.3" + jest-mock: "npm:^29.6.3" + checksum: a41b18871a248151264668a38b13cb305f03db112bfd89ec44e858af0e79066e0b03d6b68c8baf1ec6c578be6fdb87519389c83438608b91471d17a5724858e0 + languageName: node + linkType: hard + "@jest/globals@npm:^29.7.0": version: 29.7.0 resolution: "@jest/globals@npm:29.7.0" @@ -3747,6 +3859,43 @@ __metadata: languageName: node linkType: hard +"@jest/reporters@npm:^29.6.4": + version: 29.6.4 + resolution: "@jest/reporters@npm:29.6.4" + dependencies: + "@bcoe/v8-coverage": "npm:^0.2.3" + "@jest/console": "npm:^29.6.4" + "@jest/test-result": "npm:^29.6.4" + "@jest/transform": "npm:^29.6.4" + "@jest/types": "npm:^29.6.3" + "@jridgewell/trace-mapping": "npm:^0.3.18" + "@types/node": "npm:*" + chalk: "npm:^4.0.0" + collect-v8-coverage: "npm:^1.0.0" + exit: "npm:^0.1.2" + glob: "npm:^7.1.3" + graceful-fs: "npm:^4.2.9" + istanbul-lib-coverage: "npm:^3.0.0" + istanbul-lib-instrument: "npm:^6.0.0" + istanbul-lib-report: "npm:^3.0.0" + istanbul-lib-source-maps: "npm:^4.0.0" + istanbul-reports: "npm:^3.1.3" + jest-message-util: "npm:^29.6.3" + jest-util: "npm:^29.6.3" + jest-worker: "npm:^29.6.4" + slash: "npm:^3.0.0" + string-length: "npm:^4.0.1" + strip-ansi: "npm:^6.0.0" + v8-to-istanbul: "npm:^9.0.1" + peerDependencies: + node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 + peerDependenciesMeta: + node-notifier: + optional: true + checksum: ba6f6d9f621ef80cc8f2fae001f2c9b9e9186f2b570d386b2cfaf298a391332cf65121f72b700e037c9fb7813af4230f821f5f2e0c71c2bd3d301bfa2aa9b935 + languageName: node + linkType: hard + "@jest/reporters@npm:^29.7.0": version: 29.7.0 resolution: "@jest/reporters@npm:29.7.0" @@ -3804,6 +3953,18 @@ __metadata: languageName: node linkType: hard +"@jest/test-result@npm:^29.6.4": + version: 29.6.4 + resolution: "@jest/test-result@npm:29.6.4" + dependencies: + "@jest/console": "npm:^29.6.4" + "@jest/types": "npm:^29.6.3" + "@types/istanbul-lib-coverage": "npm:^2.0.0" + collect-v8-coverage: "npm:^1.0.0" + checksum: d0dd2beaa4e9f3e7cebec44de1ab09a1020e77e4742c018f91bf281d49b824875a6d8f86408fdde195f53dd1ba8b7943b2843a9f002c5b0286f8933c21e65527 + languageName: node + linkType: hard + "@jest/test-result@npm:^29.7.0": version: 29.7.0 resolution: "@jest/test-result@npm:29.7.0" @@ -3816,6 +3977,18 @@ __metadata: languageName: node linkType: hard +"@jest/test-sequencer@npm:^29.6.4": + version: 29.6.4 + resolution: "@jest/test-sequencer@npm:29.6.4" + dependencies: + "@jest/test-result": "npm:^29.6.4" + graceful-fs: "npm:^4.2.9" + jest-haste-map: "npm:^29.6.4" + slash: "npm:^3.0.0" + checksum: f0f09dc5c1cc190ae8944531072b598746c725c81d2810f47d4459a2d3113b3658469ff4e59cd028b221e4f2d015e0b968940e9ae08d800b2e8911590fbc184e + languageName: node + linkType: hard + "@jest/test-sequencer@npm:^29.7.0": version: 29.7.0 resolution: "@jest/test-sequencer@npm:29.7.0" @@ -3851,6 +4024,29 @@ __metadata: languageName: node linkType: hard +"@jest/transform@npm:^29.6.4": + version: 29.6.4 + resolution: "@jest/transform@npm:29.6.4" + dependencies: + "@babel/core": "npm:^7.11.6" + "@jest/types": "npm:^29.6.3" + "@jridgewell/trace-mapping": "npm:^0.3.18" + babel-plugin-istanbul: "npm:^6.1.1" + chalk: "npm:^4.0.0" + convert-source-map: "npm:^2.0.0" + fast-json-stable-stringify: "npm:^2.1.0" + graceful-fs: "npm:^4.2.9" + jest-haste-map: "npm:^29.6.4" + jest-regex-util: "npm:^29.6.3" + jest-util: "npm:^29.6.3" + micromatch: "npm:^4.0.4" + pirates: "npm:^4.0.4" + slash: "npm:^3.0.0" + write-file-atomic: "npm:^4.0.2" + checksum: cba6b5a59de89b4446c0c0dc6ca08ea52fb1308caeaa72c70a232a1b81d178cad1a2fcce4e25db95d7623c03c34a244bdfe6769cc6ac71b8c3fcd2838bab583e + languageName: node + linkType: hard + "@jest/types@npm:^26.6.2": version: 26.6.2 resolution: "@jest/types@npm:26.6.2" @@ -7677,7 +7873,7 @@ __metadata: languageName: node linkType: hard -"@testing-library/jest-dom@npm:6.1.4, @testing-library/jest-dom@npm:^6.1.2": +"@testing-library/jest-dom@npm:6.1.4": version: 6.1.4 resolution: "@testing-library/jest-dom@npm:6.1.4" dependencies: @@ -7707,6 +7903,36 @@ __metadata: languageName: node linkType: hard +"@testing-library/jest-dom@npm:^6.1.2": + version: 6.1.2 + resolution: "@testing-library/jest-dom@npm:6.1.2" + dependencies: + "@adobe/css-tools": "npm:^4.3.0" + "@babel/runtime": "npm:^7.9.2" + aria-query: "npm:^5.0.0" + chalk: "npm:^3.0.0" + css.escape: "npm:^1.5.1" + dom-accessibility-api: "npm:^0.5.6" + lodash: "npm:^4.17.15" + redent: "npm:^3.0.0" + peerDependencies: + "@jest/globals": ">= 28" + "@types/jest": ">= 28" + jest: ">= 28" + vitest: ">= 0.32" + peerDependenciesMeta: + "@jest/globals": + optional: true + "@types/jest": + optional: true + jest: + optional: true + vitest: + optional: true + checksum: 36e27f9011dd60de8936d3edb2a81753ef7a370480019e571c6e85b935b5fa2aba47244104badf6d6b636fd170fdee5c0fdd92fb3630957d4a6f11d302b57398 + languageName: node + linkType: hard + "@testing-library/react-hooks@npm:^8.0.1": version: 8.0.1 resolution: "@testing-library/react-hooks@npm:8.0.1" @@ -10647,7 +10873,7 @@ __metadata: languageName: node linkType: hard -"array-includes@npm:^3.1.5, array-includes@npm:^3.1.6, array-includes@npm:^3.1.7": +"array-includes@npm:^3.1.5, array-includes@npm:^3.1.6": version: 3.1.7 resolution: "array-includes@npm:3.1.7" dependencies: @@ -10674,32 +10900,19 @@ __metadata: languageName: node linkType: hard -"array.prototype.findlastindex@npm:^1.2.3": - version: 1.2.3 - resolution: "array.prototype.findlastindex@npm:1.2.3" +"array.prototype.flat@npm:^1.3.1": + version: 1.3.1 + resolution: "array.prototype.flat@npm:1.3.1" dependencies: call-bind: "npm:^1.0.2" - define-properties: "npm:^1.2.0" - es-abstract: "npm:^1.22.1" + define-properties: "npm:^1.1.4" + es-abstract: "npm:^1.20.4" es-shim-unscopables: "npm:^1.0.0" - get-intrinsic: "npm:^1.2.1" - checksum: 063cbab8eeac3aa01f3e980eecb9a8c5d87723032b49f7f814ecc6d75c33c03c17e3f43a458127a62e16303cab412f95d6ad9dc7e0ae6d9dc27a9bb76c24df7a + checksum: 787bd3e93887b1c12cfed018864cb819a4fe361728d4aadc7b401b0811cf923121881cca369557432529ffa803a463f01e37eaa4b52e4c13bc574c438cd615cb languageName: node linkType: hard -"array.prototype.flat@npm:^1.3.2": - version: 1.3.2 - resolution: "array.prototype.flat@npm:1.3.2" - dependencies: - call-bind: "npm:^1.0.2" - define-properties: "npm:^1.2.0" - es-abstract: "npm:^1.22.1" - es-shim-unscopables: "npm:^1.0.0" - checksum: d9d2f6f27584de92ec7995bc931103e6de722cd2498bdbfc4cba814fc3e52f056050a93be883018811f7c0a35875f5056584a0e940603a5e5934f0279896aebe - languageName: node - linkType: hard - -"array.prototype.flatmap@npm:^1.3.1, array.prototype.flatmap@npm:^1.3.2": +"array.prototype.flatmap@npm:^1.3.1": version: 1.3.2 resolution: "array.prototype.flatmap@npm:1.3.2" dependencies: @@ -10983,6 +11196,23 @@ __metadata: languageName: node linkType: hard +"babel-jest@npm:^29.6.4": + version: 29.6.4 + resolution: "babel-jest@npm:29.6.4" + dependencies: + "@jest/transform": "npm:^29.6.4" + "@types/babel__core": "npm:^7.1.14" + babel-plugin-istanbul: "npm:^6.1.1" + babel-preset-jest: "npm:^29.6.3" + chalk: "npm:^4.0.0" + graceful-fs: "npm:^4.2.9" + slash: "npm:^3.0.0" + peerDependencies: + "@babel/core": ^7.8.0 + checksum: 1e26438368719336d3cb6144b68155f4837154b38d917180b9d0a2344e17dacb59b1213e593005fa7f63041052ad0e38cd1fb1de1c6b54f7d353f617a2ad20cf + languageName: node + linkType: hard + "babel-loader@npm:9.1.3, babel-loader@npm:^9.0.0": version: 9.1.3 resolution: "babel-loader@npm:9.1.3" @@ -15092,18 +15322,18 @@ __metadata: languageName: node linkType: hard -"eslint-import-resolver-node@npm:^0.3.9": - version: 0.3.9 - resolution: "eslint-import-resolver-node@npm:0.3.9" +"eslint-import-resolver-node@npm:^0.3.7": + version: 0.3.7 + resolution: "eslint-import-resolver-node@npm:0.3.7" dependencies: debug: "npm:^3.2.7" - is-core-module: "npm:^2.13.0" - resolve: "npm:^1.22.4" - checksum: d52e08e1d96cf630957272e4f2644dcfb531e49dcfd1edd2e07e43369eb2ec7a7d4423d417beee613201206ff2efa4eb9a582b5825ee28802fc7c71fcd53ca83 + is-core-module: "npm:^2.11.0" + resolve: "npm:^1.22.1" + checksum: 31c6dfbd3457d1e6170ac2326b7ba9c323ff1ea68e3fcc5309f234bd1cefed050ee9b35e458b5eaed91323ab0d29bb2eddb41a1720ba7ca09bbacb00a0339d64 languageName: node linkType: hard -"eslint-module-utils@npm:^2.8.0": +"eslint-module-utils@npm:^2.7.4": version: 2.8.0 resolution: "eslint-module-utils@npm:2.8.0" dependencies: @@ -15116,29 +15346,27 @@ __metadata: linkType: hard "eslint-plugin-import@npm:^2.26.0": - version: 2.29.0 - resolution: "eslint-plugin-import@npm:2.29.0" + version: 2.27.5 + resolution: "eslint-plugin-import@npm:2.27.5" dependencies: - array-includes: "npm:^3.1.7" - array.prototype.findlastindex: "npm:^1.2.3" - array.prototype.flat: "npm:^1.3.2" - array.prototype.flatmap: "npm:^1.3.2" + array-includes: "npm:^3.1.6" + array.prototype.flat: "npm:^1.3.1" + array.prototype.flatmap: "npm:^1.3.1" debug: "npm:^3.2.7" doctrine: "npm:^2.1.0" - eslint-import-resolver-node: "npm:^0.3.9" - eslint-module-utils: "npm:^2.8.0" - hasown: "npm:^2.0.0" - is-core-module: "npm:^2.13.1" + eslint-import-resolver-node: "npm:^0.3.7" + eslint-module-utils: "npm:^2.7.4" + has: "npm:^1.0.3" + is-core-module: "npm:^2.11.0" is-glob: "npm:^4.0.3" minimatch: "npm:^3.1.2" - object.fromentries: "npm:^2.0.7" - object.groupby: "npm:^1.0.1" - object.values: "npm:^1.1.7" - semver: "npm:^6.3.1" - tsconfig-paths: "npm:^3.14.2" + object.values: "npm:^1.1.6" + resolve: "npm:^1.22.1" + semver: "npm:^6.3.0" + tsconfig-paths: "npm:^3.14.1" peerDependencies: eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 - checksum: d6e8d016f38369892c85b866f762c03dee2b337d4f12031756e30d7490879261d1192a3c2f682fd7c4d2b923465f7a1e3d22cfdad5da1b1391c3bd39ea87af1a + checksum: b8ab9521bd47acdad959309cbb5635069cebd0f1dfd14b5f6ad24f609dfda82c604b029c7366cafce1d359845300957ec246587cd5e4b237a0378118a9d3dfa7 languageName: node linkType: hard @@ -15692,6 +15920,19 @@ __metadata: languageName: node linkType: hard +"expect@npm:^29.6.4": + version: 29.6.4 + resolution: "expect@npm:29.6.4" + dependencies: + "@jest/expect-utils": "npm:^29.6.4" + jest-get-type: "npm:^29.6.3" + jest-matcher-utils: "npm:^29.6.4" + jest-message-util: "npm:^29.6.3" + jest-util: "npm:^29.6.3" + checksum: 1e9224ce01de2bcd861b5a2b9409cc316c4f298beaa2c4ffb8a907a593e15ddff905506676f2b1f20d31fb1c0919a4527310b37b6d93f2ba4c4f77bf9881a90e + languageName: node + linkType: hard + "expose-loader@npm:4.1.0": version: 4.1.0 resolution: "expose-loader@npm:4.1.0" @@ -15830,7 +16071,7 @@ __metadata: languageName: node linkType: hard -"fast-glob@npm:^3.0.3, fast-glob@npm:^3.2.11, fast-glob@npm:^3.2.9, fast-glob@npm:^3.3.1": +"fast-glob@npm:^3.0.3, fast-glob@npm:^3.3.1": version: 3.3.1 resolution: "fast-glob@npm:3.3.1" dependencies: @@ -15843,6 +16084,19 @@ __metadata: languageName: node linkType: hard +"fast-glob@npm:^3.2.11, fast-glob@npm:^3.2.9": + version: 3.3.0 + resolution: "fast-glob@npm:3.3.0" + dependencies: + "@nodelib/fs.stat": "npm:^2.0.2" + "@nodelib/fs.walk": "npm:^1.2.3" + glob-parent: "npm:^5.1.2" + merge2: "npm:^1.3.0" + micromatch: "npm:^4.0.4" + checksum: 4cd74914f13eab48dd1a0d16051aa102c13d30ea8a79c991563ea3111a37ff6d888518964291d52d723e7ad2a946149ce9f13d27ad9a07a1e4e1aefb4717ed29 + languageName: node + linkType: hard + "fast-json-parse@npm:^1.0.3": version: 1.0.3 resolution: "fast-json-parse@npm:1.0.3" @@ -17052,13 +17306,20 @@ __metadata: languageName: node linkType: hard -"graceful-fs@npm:4.2.11, graceful-fs@npm:^4.0.0, graceful-fs@npm:^4.1.11, graceful-fs@npm:^4.1.15, graceful-fs@npm:^4.1.2, graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.0, graceful-fs@npm:^4.2.4, graceful-fs@npm:^4.2.6, graceful-fs@npm:^4.2.9": +"graceful-fs@npm:4.2.11": version: 4.2.11 resolution: "graceful-fs@npm:4.2.11" checksum: bf152d0ed1dc159239db1ba1f74fdbc40cb02f626770dcd5815c427ce0688c2635a06ed69af364396da4636d0408fcf7d4afdf7881724c3307e46aff30ca49e2 languageName: node linkType: hard +"graceful-fs@npm:^4.0.0, graceful-fs@npm:^4.1.11, graceful-fs@npm:^4.1.15, graceful-fs@npm:^4.1.2, graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.0, graceful-fs@npm:^4.2.4, graceful-fs@npm:^4.2.6, graceful-fs@npm:^4.2.9": + version: 4.2.10 + resolution: "graceful-fs@npm:4.2.10" + checksum: 0c83c52b62c68a944dcfb9d66b0f9f10f7d6e3d081e8067b9bfdc9e5f3a8896584d576036f82915773189eec1eba599397fc620e75c03c0610fb3d67c6713c1a + languageName: node + linkType: hard + "grafana@workspace:.": version: 0.0.0-use.local resolution: "grafana@workspace:." @@ -17399,7 +17660,7 @@ __metadata: ts-node: "npm:10.9.1" tslib: "npm:2.6.0" tween-functions: "npm:^1.2.0" - typescript: "npm:4.8.4" + typescript: "npm:5.2.2" uplot: "npm:1.6.27" uuid: "npm:9.0.0" vendor: "link:./public/vendor" @@ -18104,11 +18365,11 @@ __metadata: linkType: hard "i18next-browser-languagedetector@npm:^7.0.2": - version: 7.1.0 - resolution: "i18next-browser-languagedetector@npm:7.1.0" + version: 7.0.2 + resolution: "i18next-browser-languagedetector@npm:7.0.2" dependencies: "@babel/runtime": "npm:^7.19.4" - checksum: 3b06c8a5df09092cffc0b6637b542bb572e8a25dcba97d0d8a5e5dd7539b90bf00000f3a279654693f4b5908c5fc4d1d4f3766dfb461dacab46be3d071266384 + checksum: 9f07be9d94e4df342f0eb2aab1437534db0832edb9b20b0504ae6afda0db0294cacb0d11d723fd39f522c47a3c9ba91b8e834a8c0d7f4ec2261a1e37dcd63b61 languageName: node linkType: hard @@ -18269,7 +18530,7 @@ __metadata: languageName: node linkType: hard -"import-local@npm:3.1.0, import-local@npm:^3.0.2": +"import-local@npm:3.1.0": version: 3.1.0 resolution: "import-local@npm:3.1.0" dependencies: @@ -18281,6 +18542,18 @@ __metadata: languageName: node linkType: hard +"import-local@npm:^3.0.2": + version: 3.0.3 + resolution: "import-local@npm:3.0.3" + dependencies: + pkg-dir: "npm:^4.2.0" + resolve-cwd: "npm:^3.0.0" + bin: + import-local-fixture: fixtures/cli.js + checksum: 38ae57d35e7fd5f63b55895050c798d4dd590e4e2337e9ffa882fb3ea7a7716f3162c7300e382e0a733ca5d07b389fadff652c00fa7b072d5cb6ea34ca06b179 + languageName: node + linkType: hard + "imurmurhash@npm:^0.1.4": version: 0.1.4 resolution: "imurmurhash@npm:0.1.4" @@ -18601,7 +18874,16 @@ __metadata: languageName: node linkType: hard -"is-core-module@npm:^2.13.0, is-core-module@npm:^2.13.1, is-core-module@npm:^2.5.0, is-core-module@npm:^2.8.1, is-core-module@npm:^2.9.0": +"is-core-module@npm:^2.11.0": + version: 2.12.1 + resolution: "is-core-module@npm:2.12.1" + dependencies: + has: "npm:^1.0.3" + checksum: 35d5f90c95f7c737d287121e924bdfcad0a47b33efd7f89c58e9ab3810b43b1f1d377b641797326bde500e47edf5a7bf74a464e0c336a5c7e827b13fa41b57af + languageName: node + linkType: hard + +"is-core-module@npm:^2.13.0, is-core-module@npm:^2.5.0, is-core-module@npm:^2.8.1, is-core-module@npm:^2.9.0": version: 2.13.1 resolution: "is-core-module@npm:2.13.1" dependencies: @@ -19008,7 +19290,20 @@ __metadata: languageName: node linkType: hard -"is-typed-array@npm:^1.1.10, is-typed-array@npm:^1.1.12, is-typed-array@npm:^1.1.3, is-typed-array@npm:^1.1.9": +"is-typed-array@npm:^1.1.10, is-typed-array@npm:^1.1.3, is-typed-array@npm:^1.1.9": + version: 1.1.10 + resolution: "is-typed-array@npm:1.1.10" + dependencies: + available-typed-arrays: "npm:^1.0.5" + call-bind: "npm:^1.0.2" + for-each: "npm:^0.3.3" + gopd: "npm:^1.0.1" + has-tostringtag: "npm:^1.0.0" + checksum: 2392b2473bbc994f5c30d6848e32bab3cab6c80b795aaec3020baf5419ff7df38fc11b3a043eb56d50f842394c578dbb204a7a29398099f895cf111c5b27f327 + languageName: node + linkType: hard + +"is-typed-array@npm:^1.1.12": version: 1.1.12 resolution: "is-typed-array@npm:1.1.12" dependencies: @@ -19267,6 +19562,17 @@ __metadata: languageName: node linkType: hard +"jest-changed-files@npm:^29.6.3": + version: 29.6.3 + resolution: "jest-changed-files@npm:29.6.3" + dependencies: + execa: "npm:^5.0.0" + jest-util: "npm:^29.6.3" + p-limit: "npm:^3.1.0" + checksum: ffcd0add3351c54ee0eb3ed88e2352ecf46d9118daed99ab0b73cb25502848a19db3ff3027f8b6ac1a168e158bc87d2d30adbd6c88119fad19f5f87357896f82 + languageName: node + linkType: hard + "jest-changed-files@npm:^29.7.0": version: 29.7.0 resolution: "jest-changed-files@npm:29.7.0" @@ -19278,6 +19584,34 @@ __metadata: languageName: node linkType: hard +"jest-circus@npm:^29.6.4": + version: 29.6.4 + resolution: "jest-circus@npm:29.6.4" + dependencies: + "@jest/environment": "npm:^29.6.4" + "@jest/expect": "npm:^29.6.4" + "@jest/test-result": "npm:^29.6.4" + "@jest/types": "npm:^29.6.3" + "@types/node": "npm:*" + chalk: "npm:^4.0.0" + co: "npm:^4.6.0" + dedent: "npm:^1.0.0" + is-generator-fn: "npm:^2.0.0" + jest-each: "npm:^29.6.3" + jest-matcher-utils: "npm:^29.6.4" + jest-message-util: "npm:^29.6.3" + jest-runtime: "npm:^29.6.4" + jest-snapshot: "npm:^29.6.4" + jest-util: "npm:^29.6.3" + p-limit: "npm:^3.1.0" + pretty-format: "npm:^29.6.3" + pure-rand: "npm:^6.0.0" + slash: "npm:^3.0.0" + stack-utils: "npm:^2.0.3" + checksum: 70dd56c1dec25a7499df85d942f27549ce257430b36597e984dbb3dac630a6707133e50a67285cbcf5564aace700e54748c6b7290136b188363678d0af8db17a + languageName: node + linkType: hard + "jest-circus@npm:^29.7.0": version: 29.7.0 resolution: "jest-circus@npm:29.7.0" @@ -19332,6 +19666,71 @@ __metadata: languageName: node linkType: hard +"jest-cli@npm:^29.6.4": + version: 29.6.4 + resolution: "jest-cli@npm:29.6.4" + dependencies: + "@jest/core": "npm:^29.6.4" + "@jest/test-result": "npm:^29.6.4" + "@jest/types": "npm:^29.6.3" + chalk: "npm:^4.0.0" + exit: "npm:^0.1.2" + graceful-fs: "npm:^4.2.9" + import-local: "npm:^3.0.2" + jest-config: "npm:^29.6.4" + jest-util: "npm:^29.6.3" + jest-validate: "npm:^29.6.3" + prompts: "npm:^2.0.1" + yargs: "npm:^17.3.1" + peerDependencies: + node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 + peerDependenciesMeta: + node-notifier: + optional: true + bin: + jest: bin/jest.js + checksum: 24b6ca6c8409433a8da621d91a7637ff67e606c0d6c18b606bbbc1a0c7f7e819b935ec1bc6c45c8e6892faf9f073c409f058cdf0ac454f9379ddb826175d40cf + languageName: node + linkType: hard + +"jest-config@npm:^29.6.4": + version: 29.6.4 + resolution: "jest-config@npm:29.6.4" + dependencies: + "@babel/core": "npm:^7.11.6" + "@jest/test-sequencer": "npm:^29.6.4" + "@jest/types": "npm:^29.6.3" + babel-jest: "npm:^29.6.4" + chalk: "npm:^4.0.0" + ci-info: "npm:^3.2.0" + deepmerge: "npm:^4.2.2" + glob: "npm:^7.1.3" + graceful-fs: "npm:^4.2.9" + jest-circus: "npm:^29.6.4" + jest-environment-node: "npm:^29.6.4" + jest-get-type: "npm:^29.6.3" + jest-regex-util: "npm:^29.6.3" + jest-resolve: "npm:^29.6.4" + jest-runner: "npm:^29.6.4" + jest-util: "npm:^29.6.3" + jest-validate: "npm:^29.6.3" + micromatch: "npm:^4.0.4" + parse-json: "npm:^5.2.0" + pretty-format: "npm:^29.6.3" + slash: "npm:^3.0.0" + strip-json-comments: "npm:^3.1.1" + peerDependencies: + "@types/node": "*" + ts-node: ">=9.0.0" + peerDependenciesMeta: + "@types/node": + optional: true + ts-node: + optional: true + checksum: 5d9019f046684bf45e87c01996197ccfb96936bca67242f59fdf40d9bd76622c97b5b57bbb257591e12edb941285662dac106f8f327910b26c822adda7057c6d + languageName: node + linkType: hard + "jest-config@npm:^29.7.0": version: 29.7.0 resolution: "jest-config@npm:29.7.0" @@ -19413,6 +19812,27 @@ __metadata: languageName: node linkType: hard +"jest-diff@npm:^29.6.4": + version: 29.6.4 + resolution: "jest-diff@npm:29.6.4" + dependencies: + chalk: "npm:^4.0.0" + diff-sequences: "npm:^29.6.3" + jest-get-type: "npm:^29.6.3" + pretty-format: "npm:^29.6.3" + checksum: b1720b78d1de8e6efaf74425df57e749008049b7c2f8a60af73667fd886653bbc7ee69a452076073ad4b2e3d9d1cd6599bb9dc00a8fb69f02b9075423aafee3c + languageName: node + linkType: hard + +"jest-docblock@npm:^29.6.3": + version: 29.6.3 + resolution: "jest-docblock@npm:29.6.3" + dependencies: + detect-newline: "npm:^3.0.0" + checksum: fa9d8d344f093659beb741e2efa22db663ef8c441200b74707da7749a8799a0022824166d7fdd972e773f7c4fab01227f1847e3315fa63584f539b7b78b285eb + languageName: node + linkType: hard + "jest-docblock@npm:^29.7.0": version: 29.7.0 resolution: "jest-docblock@npm:29.7.0" @@ -19422,6 +19842,19 @@ __metadata: languageName: node linkType: hard +"jest-each@npm:^29.6.3": + version: 29.6.3 + resolution: "jest-each@npm:29.6.3" + dependencies: + "@jest/types": "npm:^29.6.3" + chalk: "npm:^4.0.0" + jest-get-type: "npm:^29.6.3" + jest-util: "npm:^29.6.3" + pretty-format: "npm:^29.6.3" + checksum: e08c01ffba3c6254b6555b749eb7b2e55ca4f153d4e1d8ac15b7dcec4d5c06b150b9f9a272cf3cd622b3b2c495c2d5ee656165b9a93c1c06dcb1a82f13fa95e0 + languageName: node + linkType: hard + "jest-each@npm:^29.7.0": version: 29.7.0 resolution: "jest-each@npm:29.7.0" @@ -19477,6 +19910,20 @@ __metadata: languageName: node linkType: hard +"jest-environment-node@npm:^29.6.4": + version: 29.6.4 + resolution: "jest-environment-node@npm:29.6.4" + dependencies: + "@jest/environment": "npm:^29.6.4" + "@jest/fake-timers": "npm:^29.6.4" + "@jest/types": "npm:^29.6.3" + "@types/node": "npm:*" + jest-mock: "npm:^29.6.3" + jest-util: "npm:^29.6.3" + checksum: 7c7bb39a35eaff23eb553c5b7cae776c0622737e64bcd6b558b745012da1366d5f7e2de0a6f659c39f3869783c0b92a5a3dc64649638dbf8f3208c82832b6321 + languageName: node + linkType: hard + "jest-environment-node@npm:^29.7.0": version: 29.7.0 resolution: "jest-environment-node@npm:29.7.0" @@ -19521,6 +19968,29 @@ __metadata: languageName: node linkType: hard +"jest-haste-map@npm:^29.6.4": + version: 29.6.4 + resolution: "jest-haste-map@npm:29.6.4" + dependencies: + "@jest/types": "npm:^29.6.3" + "@types/graceful-fs": "npm:^4.1.3" + "@types/node": "npm:*" + anymatch: "npm:^3.0.3" + fb-watchman: "npm:^2.0.0" + fsevents: "npm:^2.3.2" + graceful-fs: "npm:^4.2.9" + jest-regex-util: "npm:^29.6.3" + jest-util: "npm:^29.6.3" + jest-worker: "npm:^29.6.4" + micromatch: "npm:^4.0.4" + walker: "npm:^1.0.8" + dependenciesMeta: + fsevents: + optional: true + checksum: 5fb2dc9cd028b6d02a8d4dcaf81b790b60f9034a20b6a1deca9a4ad529741362cd1035020f3d94f6c160103b1ea3d46771f40a3330ab4d8d3c073d515e11b810 + languageName: node + linkType: hard + "jest-haste-map@npm:^29.7.0": version: 29.7.0 resolution: "jest-haste-map@npm:29.7.0" @@ -19556,6 +20026,16 @@ __metadata: languageName: node linkType: hard +"jest-leak-detector@npm:^29.6.3": + version: 29.6.3 + resolution: "jest-leak-detector@npm:29.6.3" + dependencies: + jest-get-type: "npm:^29.6.3" + pretty-format: "npm:^29.6.3" + checksum: 27548fcfc7602fe1b88f8600185e35ffff71751f3631e52bbfdfc72776f5a13a430185cf02fc632b41320a74f99ae90e40ce101c8887509f0f919608a7175129 + languageName: node + linkType: hard + "jest-leak-detector@npm:^29.7.0": version: 29.7.0 resolution: "jest-leak-detector@npm:29.7.0" @@ -19578,6 +20058,35 @@ __metadata: languageName: node linkType: hard +"jest-matcher-utils@npm:^29.6.4": + version: 29.6.4 + resolution: "jest-matcher-utils@npm:29.6.4" + dependencies: + chalk: "npm:^4.0.0" + jest-diff: "npm:^29.6.4" + jest-get-type: "npm:^29.6.3" + pretty-format: "npm:^29.6.3" + checksum: de306e3592d316ff9725b8e2595c6a4bb9c05b1f296b3e73aef5cf945a4b4799dbfc3fc080e74f4e6259b65123a70b2dc3595db5cfcbaaa30ed3d37ec59551a0 + languageName: node + linkType: hard + +"jest-message-util@npm:^29.6.3": + version: 29.6.3 + resolution: "jest-message-util@npm:29.6.3" + dependencies: + "@babel/code-frame": "npm:^7.12.13" + "@jest/types": "npm:^29.6.3" + "@types/stack-utils": "npm:^2.0.0" + chalk: "npm:^4.0.0" + graceful-fs: "npm:^4.2.9" + micromatch: "npm:^4.0.4" + pretty-format: "npm:^29.6.3" + slash: "npm:^3.0.0" + stack-utils: "npm:^2.0.3" + checksum: fe659a92a32e6f9c3fdb9b07792a2a362b3d091334eb230b12524ffb5023457ea39d7fc412187e4f245dbe394fd012591878a2b5932eaedd7e82d5c9b416035c + languageName: node + linkType: hard + "jest-message-util@npm:^29.7.0": version: 29.7.0 resolution: "jest-message-util@npm:29.7.0" @@ -19606,6 +20115,17 @@ __metadata: languageName: node linkType: hard +"jest-mock@npm:^29.6.3": + version: 29.6.3 + resolution: "jest-mock@npm:29.6.3" + dependencies: + "@jest/types": "npm:^29.6.3" + "@types/node": "npm:*" + jest-util: "npm:^29.6.3" + checksum: 9da22e0edfb77b2ed2d4204f305b41a17c2133c0cb638ee81e875115ae6e01adf57681a0ab8f7c2b7e0cde7dcd916d62c7b5d28176c342bb80bbfcea8a168729 + languageName: node + linkType: hard + "jest-pnp-resolver@npm:^1.2.2": version: 1.2.2 resolution: "jest-pnp-resolver@npm:1.2.2" @@ -19625,6 +20145,16 @@ __metadata: languageName: node linkType: hard +"jest-resolve-dependencies@npm:^29.6.4": + version: 29.6.4 + resolution: "jest-resolve-dependencies@npm:29.6.4" + dependencies: + jest-regex-util: "npm:^29.6.3" + jest-snapshot: "npm:^29.6.4" + checksum: 8a1616558e78213bc4c7c445e7188776f7d4940e3858684e0404c485bbc23e1e10093bf59640fbc4b88141f361f0c01e760eb2c79bf088ad1896971941869158 + languageName: node + linkType: hard + "jest-resolve-dependencies@npm:^29.7.0": version: 29.7.0 resolution: "jest-resolve-dependencies@npm:29.7.0" @@ -19635,6 +20165,23 @@ __metadata: languageName: node linkType: hard +"jest-resolve@npm:^29.6.4": + version: 29.6.4 + resolution: "jest-resolve@npm:29.6.4" + dependencies: + chalk: "npm:^4.0.0" + graceful-fs: "npm:^4.2.9" + jest-haste-map: "npm:^29.6.4" + jest-pnp-resolver: "npm:^1.2.2" + jest-util: "npm:^29.6.3" + jest-validate: "npm:^29.6.3" + resolve: "npm:^1.20.0" + resolve.exports: "npm:^2.0.0" + slash: "npm:^3.0.0" + checksum: 63fcd739106363a8928a96131fd0fd7dfa8b052b70d0c3a3f1099f33666b2d9086880f01e714e46b1044f7d107caaae81fd1547bd2c149d6b7a06453d5cc14b3 + languageName: node + linkType: hard + "jest-resolve@npm:^29.7.0": version: 29.7.0 resolution: "jest-resolve@npm:29.7.0" @@ -19652,6 +20199,35 @@ __metadata: languageName: node linkType: hard +"jest-runner@npm:^29.6.4": + version: 29.6.4 + resolution: "jest-runner@npm:29.6.4" + dependencies: + "@jest/console": "npm:^29.6.4" + "@jest/environment": "npm:^29.6.4" + "@jest/test-result": "npm:^29.6.4" + "@jest/transform": "npm:^29.6.4" + "@jest/types": "npm:^29.6.3" + "@types/node": "npm:*" + chalk: "npm:^4.0.0" + emittery: "npm:^0.13.1" + graceful-fs: "npm:^4.2.9" + jest-docblock: "npm:^29.6.3" + jest-environment-node: "npm:^29.6.4" + jest-haste-map: "npm:^29.6.4" + jest-leak-detector: "npm:^29.6.3" + jest-message-util: "npm:^29.6.3" + jest-resolve: "npm:^29.6.4" + jest-runtime: "npm:^29.6.4" + jest-util: "npm:^29.6.3" + jest-watcher: "npm:^29.6.4" + jest-worker: "npm:^29.6.4" + p-limit: "npm:^3.1.0" + source-map-support: "npm:0.5.13" + checksum: b51345e07b78b546dd192f734d1e5324f41fe5aceafba6a8238b3f38f3bcafa433ee9a5bdf41f853bed4279b044ce0621be75b33b840f4a9745b6c958220a21e + languageName: node + linkType: hard + "jest-runner@npm:^29.7.0": version: 29.7.0 resolution: "jest-runner@npm:29.7.0" @@ -19681,6 +20257,36 @@ __metadata: languageName: node linkType: hard +"jest-runtime@npm:^29.6.4": + version: 29.6.4 + resolution: "jest-runtime@npm:29.6.4" + dependencies: + "@jest/environment": "npm:^29.6.4" + "@jest/fake-timers": "npm:^29.6.4" + "@jest/globals": "npm:^29.6.4" + "@jest/source-map": "npm:^29.6.3" + "@jest/test-result": "npm:^29.6.4" + "@jest/transform": "npm:^29.6.4" + "@jest/types": "npm:^29.6.3" + "@types/node": "npm:*" + chalk: "npm:^4.0.0" + cjs-module-lexer: "npm:^1.0.0" + collect-v8-coverage: "npm:^1.0.0" + glob: "npm:^7.1.3" + graceful-fs: "npm:^4.2.9" + jest-haste-map: "npm:^29.6.4" + jest-message-util: "npm:^29.6.3" + jest-mock: "npm:^29.6.3" + jest-regex-util: "npm:^29.6.3" + jest-resolve: "npm:^29.6.4" + jest-snapshot: "npm:^29.6.4" + jest-util: "npm:^29.6.3" + slash: "npm:^3.0.0" + strip-bom: "npm:^4.0.0" + checksum: e70669b5a439f5a26156b972462471fbac997e6779fe7421df000f5fe8f1f11abe0c7cb664edd1cf3849c3f2d8329dc7e8495ce89251352a6cabff9153dcf99a + languageName: node + linkType: hard + "jest-runtime@npm:^29.7.0": version: 29.7.0 resolution: "jest-runtime@npm:29.7.0" @@ -19711,6 +20317,34 @@ __metadata: languageName: node linkType: hard +"jest-snapshot@npm:^29.6.4": + version: 29.6.4 + resolution: "jest-snapshot@npm:29.6.4" + dependencies: + "@babel/core": "npm:^7.11.6" + "@babel/generator": "npm:^7.7.2" + "@babel/plugin-syntax-jsx": "npm:^7.7.2" + "@babel/plugin-syntax-typescript": "npm:^7.7.2" + "@babel/types": "npm:^7.3.3" + "@jest/expect-utils": "npm:^29.6.4" + "@jest/transform": "npm:^29.6.4" + "@jest/types": "npm:^29.6.3" + babel-preset-current-node-syntax: "npm:^1.0.0" + chalk: "npm:^4.0.0" + expect: "npm:^29.6.4" + graceful-fs: "npm:^4.2.9" + jest-diff: "npm:^29.6.4" + jest-get-type: "npm:^29.6.3" + jest-matcher-utils: "npm:^29.6.4" + jest-message-util: "npm:^29.6.3" + jest-util: "npm:^29.6.3" + natural-compare: "npm:^1.4.0" + pretty-format: "npm:^29.6.3" + semver: "npm:^7.5.3" + checksum: 998476c7ffef43cfe97ef9b786c6c6489440b0042537b0c1ad8b4366de73fc6b1ec16d148ef294b24b835d045c186b2543217e6906dd495b4d20112e85007168 + languageName: node + linkType: hard + "jest-snapshot@npm:^29.7.0": version: 29.7.0 resolution: "jest-snapshot@npm:29.7.0" @@ -19753,6 +20387,34 @@ __metadata: languageName: node linkType: hard +"jest-util@npm:^29.6.3": + version: 29.6.3 + resolution: "jest-util@npm:29.6.3" + dependencies: + "@jest/types": "npm:^29.6.3" + "@types/node": "npm:*" + chalk: "npm:^4.0.0" + ci-info: "npm:^3.2.0" + graceful-fs: "npm:^4.2.9" + picomatch: "npm:^2.2.3" + checksum: 455af2b5e064213b33b837a18ddd3d31878aee31ad40bbd599de2a4977f860a797e491cb94894e38bbd352cb7b31d41448b7ec3b346408613015411cd88ed57f + languageName: node + linkType: hard + +"jest-validate@npm:^29.6.3": + version: 29.6.3 + resolution: "jest-validate@npm:29.6.3" + dependencies: + "@jest/types": "npm:^29.6.3" + camelcase: "npm:^6.2.0" + chalk: "npm:^4.0.0" + jest-get-type: "npm:^29.6.3" + leven: "npm:^3.1.0" + pretty-format: "npm:^29.6.3" + checksum: 4e0a3ef5a2c181f10dcd979ae62188166effd52d7aec7916deaa29b75b29bdf4e01b77375246c7c16032d95cb7364ceae69c5d146e4348ccdf8a3a43d1c6862c + languageName: node + linkType: hard + "jest-validate@npm:^29.7.0": version: 29.7.0 resolution: "jest-validate@npm:29.7.0" @@ -19767,6 +20429,22 @@ __metadata: languageName: node linkType: hard +"jest-watcher@npm:^29.6.4": + version: 29.6.4 + resolution: "jest-watcher@npm:29.6.4" + dependencies: + "@jest/test-result": "npm:^29.6.4" + "@jest/types": "npm:^29.6.3" + "@types/node": "npm:*" + ansi-escapes: "npm:^4.2.1" + chalk: "npm:^4.0.0" + emittery: "npm:^0.13.1" + jest-util: "npm:^29.6.3" + string-length: "npm:^4.0.1" + checksum: 01c008b2f3e76b024f9e9dd242ba5b172634a6b9bc201d7f27cb82563071f06ae87e3ae8db50336034264a98d20a45459068f089597c956a96959109527498c4 + languageName: node + linkType: hard + "jest-watcher@npm:^29.7.0": version: 29.7.0 resolution: "jest-watcher@npm:29.7.0" @@ -19817,6 +20495,18 @@ __metadata: languageName: node linkType: hard +"jest-worker@npm:^29.6.4": + version: 29.6.4 + resolution: "jest-worker@npm:29.6.4" + dependencies: + "@types/node": "npm:*" + jest-util: "npm:^29.6.3" + merge-stream: "npm:^2.0.0" + supports-color: "npm:^8.0.0" + checksum: 52b2f238f21ff20dd4cb74ab85c1b32ba8ce5709355ae2f6d3e908a06ac0828658ab9d94562d752833d0e469f35517ceba9b68ca6b0d27fa1057115f065864ce + languageName: node + linkType: hard + "jest@npm:29.3.1": version: 29.3.1 resolution: "jest@npm:29.3.1" @@ -19836,7 +20526,7 @@ __metadata: languageName: node linkType: hard -"jest@npm:29.7.0, jest@npm:^29.6.4": +"jest@npm:29.7.0": version: 29.7.0 resolution: "jest@npm:29.7.0" dependencies: @@ -19855,6 +20545,25 @@ __metadata: languageName: node linkType: hard +"jest@npm:^29.6.4": + version: 29.6.4 + resolution: "jest@npm:29.6.4" + dependencies: + "@jest/core": "npm:^29.6.4" + "@jest/types": "npm:^29.6.3" + import-local: "npm:^3.0.2" + jest-cli: "npm:^29.6.4" + peerDependencies: + node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 + peerDependenciesMeta: + node-notifier: + optional: true + bin: + jest: bin/jest.js + checksum: d747e293bd63f583e7978ac0693ab7a019812fa44b9bf3b3fe20e75e8a343bcd8251d292326d73151dc0b8a2b5a974d878b3aa9ffb146dfa7980553f64a35b43 + languageName: node + linkType: hard + "jiti@npm:^1.18.2": version: 1.19.1 resolution: "jiti@npm:1.19.1" @@ -20115,7 +20824,7 @@ __metadata: languageName: node linkType: hard -"json5@npm:^1.0.2": +"json5@npm:^1.0.1": version: 1.0.2 resolution: "json5@npm:1.0.2" dependencies: @@ -21371,7 +22080,7 @@ __metadata: languageName: node linkType: hard -"minimatch@npm:^9.0.0, minimatch@npm:^9.0.1": +"minimatch@npm:^9.0.0": version: 9.0.3 resolution: "minimatch@npm:9.0.3" dependencies: @@ -21380,6 +22089,15 @@ __metadata: languageName: node linkType: hard +"minimatch@npm:^9.0.1": + version: 9.0.1 + resolution: "minimatch@npm:9.0.1" + dependencies: + brace-expansion: "npm:^2.0.1" + checksum: b4e98f4dc740dcf33999a99af23ae6e5e1c47632f296dc95cb649a282150f92378d41434bf64af4ea2e5975255a757d031c3bf014bad9214544ac57d97f3ba63 + languageName: node + linkType: hard + "minimist-options@npm:4.1.0": version: 4.1.0 resolution: "minimist-options@npm:4.1.0" @@ -22440,7 +23158,7 @@ __metadata: languageName: node linkType: hard -"object.fromentries@npm:^2.0.6, object.fromentries@npm:^2.0.7": +"object.fromentries@npm:^2.0.6": version: 2.0.7 resolution: "object.fromentries@npm:2.0.7" dependencies: @@ -22451,18 +23169,6 @@ __metadata: languageName: node linkType: hard -"object.groupby@npm:^1.0.1": - version: 1.0.1 - resolution: "object.groupby@npm:1.0.1" - dependencies: - call-bind: "npm:^1.0.2" - define-properties: "npm:^1.2.0" - es-abstract: "npm:^1.22.1" - get-intrinsic: "npm:^1.2.1" - checksum: b7123d91403f95d63978513b23a6079c30f503311f64035fafc863c291c787f287b58df3b21ef002ce1d0b820958c9009dd5a8ab696e0eca325639d345e41524 - languageName: node - linkType: hard - "object.hasown@npm:^1.1.2": version: 1.1.2 resolution: "object.hasown@npm:1.1.2" @@ -22473,7 +23179,7 @@ __metadata: languageName: node linkType: hard -"object.values@npm:^1.1.6, object.values@npm:^1.1.7": +"object.values@npm:^1.1.6": version: 1.1.7 resolution: "object.values@npm:1.1.7" dependencies: @@ -23806,6 +24512,17 @@ __metadata: languageName: node linkType: hard +"pretty-format@npm:^29.6.3": + version: 29.6.3 + resolution: "pretty-format@npm:29.6.3" + dependencies: + "@jest/schemas": "npm:^29.6.3" + ansi-styles: "npm:^5.0.0" + react-is: "npm:^18.0.0" + checksum: 4a17a0953b3e2d334e628dc9ff11cfad988e6adb00c074bf9d10f3eb1919ad56b30d987148ac0ce1d0317ad392cd78b39a74b6cbac4e66af609f6127ad3aaaf0 + languageName: node + linkType: hard + "pretty-hrtime@npm:^1.0.3": version: 1.0.3 resolution: "pretty-hrtime@npm:1.0.3" @@ -26015,7 +26732,7 @@ __metadata: languageName: node linkType: hard -"resolve@npm:^1.10.0, resolve@npm:^1.12.0, resolve@npm:^1.14.2, resolve@npm:^1.19.0, resolve@npm:^1.20.0, resolve@npm:^1.22.1, resolve@npm:^1.22.4": +"resolve@npm:^1.10.0, resolve@npm:^1.12.0, resolve@npm:^1.14.2, resolve@npm:^1.19.0, resolve@npm:^1.20.0, resolve@npm:^1.22.1": version: 1.22.8 resolution: "resolve@npm:1.22.8" dependencies: @@ -26041,7 +26758,7 @@ __metadata: languageName: node linkType: hard -"resolve@patch:resolve@npm%3A^1.10.0#optional!builtin, resolve@patch:resolve@npm%3A^1.12.0#optional!builtin, resolve@patch:resolve@npm%3A^1.14.2#optional!builtin, resolve@patch:resolve@npm%3A^1.19.0#optional!builtin, resolve@patch:resolve@npm%3A^1.20.0#optional!builtin, resolve@patch:resolve@npm%3A^1.22.1#optional!builtin, resolve@patch:resolve@npm%3A^1.22.4#optional!builtin": +"resolve@patch:resolve@npm%3A^1.10.0#optional!builtin, resolve@patch:resolve@npm%3A^1.12.0#optional!builtin, resolve@patch:resolve@npm%3A^1.14.2#optional!builtin, resolve@patch:resolve@npm%3A^1.19.0#optional!builtin, resolve@patch:resolve@npm%3A^1.20.0#optional!builtin, resolve@patch:resolve@npm%3A^1.22.1#optional!builtin": version: 1.22.8 resolution: "resolve@patch:resolve@npm%3A1.22.8#optional!builtin::version=1.22.8&hash=c3c19d" dependencies: @@ -28617,15 +29334,15 @@ __metadata: languageName: node linkType: hard -"tsconfig-paths@npm:^3.14.2": - version: 3.14.2 - resolution: "tsconfig-paths@npm:3.14.2" +"tsconfig-paths@npm:^3.14.1": + version: 3.14.1 + resolution: "tsconfig-paths@npm:3.14.1" dependencies: "@types/json5": "npm:^0.0.29" - json5: "npm:^1.0.2" + json5: "npm:^1.0.1" minimist: "npm:^1.2.6" strip-bom: "npm:^3.0.0" - checksum: 17f23e98612a60cf23b80dc1d3b7b840879e41fcf603868fc3618a30f061ac7b463ef98cad8c28b68733b9bfe0cc40ffa2bcf29e94cf0d26e4f6addf7ac8527d + checksum: 51be8bd8f90e49d2f8b3f61f544557e631dd5cee35e247dd316be27d723c9e99de9ce59eb39395ca20f1e43aedfc1fef0272ba25acb0a0e0e9a38cffd692256d languageName: node linkType: hard @@ -28873,7 +29590,7 @@ __metadata: languageName: node linkType: hard -"typescript@npm:>=2.7, typescript@npm:>=3 < 6": +"typescript@npm:5.2.2, typescript@npm:>=2.7, typescript@npm:>=3 < 6": version: 5.2.2 resolution: "typescript@npm:5.2.2" bin: @@ -28893,7 +29610,7 @@ __metadata: languageName: node linkType: hard -"typescript@patch:typescript@npm%3A>=2.7#optional!builtin, typescript@patch:typescript@npm%3A>=3 < 6#optional!builtin": +"typescript@patch:typescript@npm%3A5.2.2#optional!builtin, typescript@patch:typescript@npm%3A>=2.7#optional!builtin, typescript@patch:typescript@npm%3A>=3 < 6#optional!builtin": version: 5.2.2 resolution: "typescript@patch:typescript@npm%3A5.2.2#optional!builtin::version=5.2.2&hash=f3b441" bin: @@ -29805,7 +30522,7 @@ __metadata: languageName: node linkType: hard -"webpack-merge@npm:5.10.0, webpack-merge@npm:^5.7.3": +"webpack-merge@npm:5.10.0": version: 5.10.0 resolution: "webpack-merge@npm:5.10.0" dependencies: @@ -29816,6 +30533,16 @@ __metadata: languageName: node linkType: hard +"webpack-merge@npm:^5.7.3": + version: 5.9.0 + resolution: "webpack-merge@npm:5.9.0" + dependencies: + clone-deep: "npm:^4.0.1" + wildcard: "npm:^2.0.0" + checksum: d23dd1f0bad0b9821bf58443d2d29097d65cd9353046c2d8a6d7b57877ec19cf64be57cc7ef2a371a15cf9264fe6eaf8dea4015dc87487e664ffab2a28329d56 + languageName: node + linkType: hard + "webpack-sources@npm:^1.4.3": version: 1.4.3 resolution: "webpack-sources@npm:1.4.3" @@ -30030,7 +30757,7 @@ __metadata: languageName: node linkType: hard -"which-typed-array@npm:^1.1.11, which-typed-array@npm:^1.1.2, which-typed-array@npm:^1.1.9": +"which-typed-array@npm:^1.1.11": version: 1.1.11 resolution: "which-typed-array@npm:1.1.11" dependencies: @@ -30043,6 +30770,20 @@ __metadata: languageName: node linkType: hard +"which-typed-array@npm:^1.1.2, which-typed-array@npm:^1.1.9": + version: 1.1.9 + resolution: "which-typed-array@npm:1.1.9" + dependencies: + available-typed-arrays: "npm:^1.0.5" + call-bind: "npm:^1.0.2" + for-each: "npm:^0.3.3" + gopd: "npm:^1.0.1" + has-tostringtag: "npm:^1.0.0" + is-typed-array: "npm:^1.1.10" + checksum: 90ef760a09dcffc479138a6bc77fd2933a81a41d531f4886ae212f6edb54a0645a43a6c24de2c096aea910430035ac56b3d22a06f3d64e5163fa178d0f24e08e + languageName: node + linkType: hard + "which@npm:^1.3.1": version: 1.3.1 resolution: "which@npm:1.3.1"