diff --git a/package.json b/package.json index bb49dde03d4..78218f9eced 100644 --- a/package.json +++ b/package.json @@ -94,6 +94,7 @@ "@testing-library/jest-dom": "6.4.2", "@testing-library/react": "15.0.2", "@testing-library/user-event": "14.5.2", + "@types/add": "^2", "@types/angular": "1.8.9", "@types/angular-route": "1.7.6", "@types/babel__core": "^7", @@ -258,7 +259,7 @@ "@grafana/prometheus": "workspace:*", "@grafana/runtime": "workspace:*", "@grafana/saga-icons": "workspace:*", - "@grafana/scenes": "4.29.0", + "@grafana/scenes": "^5.0.2", "@grafana/schema": "workspace:*", "@grafana/sql": "workspace:*", "@grafana/ui": "workspace:*", @@ -398,7 +399,8 @@ "uuid": "9.0.1", "visjs-network": "4.25.0", "whatwg-fetch": "3.6.20", - "xlsx": "https://cdn.sheetjs.com/xlsx-0.20.2/xlsx-0.20.2.tgz" + "xlsx": "https://cdn.sheetjs.com/xlsx-0.20.2/xlsx-0.20.2.tgz", + "yarn": "^1.22.22" }, "resolutions": { "underscore": "1.13.6", diff --git a/public/app/features/dashboard-scene/pages/DashboardScenePage.tsx b/public/app/features/dashboard-scene/pages/DashboardScenePage.tsx index 84ca43a33e3..a1b4f0f46f3 100644 --- a/public/app/features/dashboard-scene/pages/DashboardScenePage.tsx +++ b/public/app/features/dashboard-scene/pages/DashboardScenePage.tsx @@ -2,6 +2,7 @@ import React, { useEffect, useMemo } from 'react'; import { PageLayoutType } from '@grafana/data'; +import { UrlSyncContextProvider } from '@grafana/scenes'; import { Page } from 'app/core/components/Page/Page'; import PageLoader from 'app/core/components/PageLoader/PageLoader'; import { GrafanaRouteComponentProps } from 'app/core/navigation/types'; @@ -78,10 +79,10 @@ export function DashboardScenePage({ match, route, queryParams, history }: Props } return ( - <> + - + ); } diff --git a/public/app/features/dashboard-scene/pages/DashboardScenePageStateManager.test.ts b/public/app/features/dashboard-scene/pages/DashboardScenePageStateManager.test.ts index 2d67ff875e9..8f87474a151 100644 --- a/public/app/features/dashboard-scene/pages/DashboardScenePageStateManager.test.ts +++ b/public/app/features/dashboard-scene/pages/DashboardScenePageStateManager.test.ts @@ -1,7 +1,6 @@ import { advanceBy } from 'jest-date-mock'; -import { BackendSrv, locationService, setBackendSrv } from '@grafana/runtime'; -import { getUrlSyncManager } from '@grafana/scenes'; +import { BackendSrv, setBackendSrv } from '@grafana/runtime'; import store from 'app/core/store'; import { DASHBOARD_FROM_LS_KEY } from 'app/features/dashboard/state/initDashboard'; import { DashboardRoutes } from 'app/types'; @@ -95,40 +94,6 @@ describe('DashboardScenePageStateManager', () => { expect(loader.state.isLoading).toBe(false); }); - it('should initialize url sync', async () => { - setupLoadDashboardMock({ dashboard: { uid: 'fake-dash' }, meta: {} }); - - locationService.partial({ from: 'now-5m', to: 'now' }); - - const loader = new DashboardScenePageStateManager({}); - await loader.loadDashboard({ uid: 'fake-dash', route: DashboardRoutes.Normal }); - const dash = loader.state.dashboard; - - expect(dash!.state.$timeRange?.state.from).toEqual('now-5m'); - - getUrlSyncManager().cleanUp(dash!); - - // try loading again (and hitting cache) - locationService.partial({ from: 'now-10m', to: 'now' }); - - await loader.loadDashboard({ uid: 'fake-dash', route: DashboardRoutes.Normal }); - const dash2 = loader.state.dashboard; - - expect(dash2!.state.$timeRange?.state.from).toEqual('now-10m'); - }); - - it('should not initialize url sync for embedded dashboards', async () => { - setupLoadDashboardMock({ dashboard: { uid: 'fake-dash' }, meta: {} }); - - locationService.partial({ from: 'now-5m', to: 'now' }); - - const loader = new DashboardScenePageStateManager({}); - await loader.loadDashboard({ uid: 'fake-dash', route: DashboardRoutes.Embedded }); - const dash = loader.state.dashboard; - - expect(dash!.state.$timeRange?.state.from).toEqual('now-6h'); - }); - describe('New dashboards', () => { it('Should have new empty model with meta.isNew and should not be cached', async () => { const loader = new DashboardScenePageStateManager({}); diff --git a/public/app/features/dashboard-scene/pages/DashboardScenePageStateManager.ts b/public/app/features/dashboard-scene/pages/DashboardScenePageStateManager.ts index a39c5ff1c1c..f0235de5a61 100644 --- a/public/app/features/dashboard-scene/pages/DashboardScenePageStateManager.ts +++ b/public/app/features/dashboard-scene/pages/DashboardScenePageStateManager.ts @@ -182,10 +182,6 @@ export class DashboardScenePageStateManager extends StateManagerBase; } - return ; + // if no time picker render without url sync + if (dashboard.state.controls?.state.hideTimeControls) { + return ; + } + + return ( + + + + ); } function PublicDashboardSceneRenderer({ model }: SceneComponentProps) { diff --git a/public/app/features/dashboard-scene/saving/useSaveDashboard.ts b/public/app/features/dashboard-scene/saving/useSaveDashboard.ts index c961e4a44db..ebd71b6ca63 100644 --- a/public/app/features/dashboard-scene/saving/useSaveDashboard.ts +++ b/public/app/features/dashboard-scene/saving/useSaveDashboard.ts @@ -61,10 +61,7 @@ export function useSaveDashboard(isCopy = false) { if (newUrl !== currentLocation.pathname) { setTimeout(() => { - // Because the path changes we need to stop and restart url sync - scene.stopUrlSync(); locationService.push({ pathname: newUrl, search: currentLocation.search }); - scene.startUrlSync(); }); } diff --git a/public/app/features/dashboard-scene/scene/DashboardScene.tsx b/public/app/features/dashboard-scene/scene/DashboardScene.tsx index c050e66ec37..13e6ec7dff7 100644 --- a/public/app/features/dashboard-scene/scene/DashboardScene.tsx +++ b/public/app/features/dashboard-scene/scene/DashboardScene.tsx @@ -12,7 +12,6 @@ import { } from '@grafana/data'; import { config, locationService } from '@grafana/runtime'; import { - getUrlSyncManager, SceneFlexLayout, sceneGraph, SceneGridLayout, @@ -212,27 +211,15 @@ export class DashboardScene extends SceneObjectBase { window.__grafanaSceneContext = prevSceneContext; clearKeyBindings(); this._changeTracker.terminate(); - this.stopUrlSync(); oldDashboardWrapper.destroy(); dashboardWatcher.leave(); }; } - public startUrlSync() { - if (!this.state.meta.isEmbedded) { - getUrlSyncManager().initSync(this); - } - } - - public stopUrlSync() { - getUrlSyncManager().cleanUp(this); - } - public onEnterEditMode = (fromExplore = false) => { this._fromExplore = fromExplore; // Save this state this._initialState = sceneUtils.cloneSceneObjectState(this.state); - this._initialUrlState = locationService.getLocation(); // Switch to edit mode @@ -303,10 +290,7 @@ export class DashboardScene extends SceneObjectBase { private exitEditModeConfirmed(restoreInitialState = true) { // No need to listen to changes anymore this._changeTracker.stopTrackingChanges(); - // Stop url sync before updating url - this.stopUrlSync(); - // Now we can update urls // We are updating url and removing editview and editPanel. // The initial url may be including edit view, edit panel or inspect query params if the user pasted the url, // hence we need to cleanup those query params to get back to the dashboard view. Otherwise url sync can trigger overlays. @@ -330,8 +314,7 @@ export class DashboardScene extends SceneObjectBase { // Do not restore this.setState({ isEditing: false }); } - // and start url sync again - this.startUrlSync(); + // Disable grid dragging this.propagateEditModeChange(); } diff --git a/public/app/features/dashboard-scene/scene/NavToolbarActions.test.tsx b/public/app/features/dashboard-scene/scene/NavToolbarActions.test.tsx index d081dbae492..797a80fe51d 100644 --- a/public/app/features/dashboard-scene/scene/NavToolbarActions.test.tsx +++ b/public/app/features/dashboard-scene/scene/NavToolbarActions.test.tsx @@ -5,8 +5,8 @@ import { TestProvider } from 'test/helpers/TestProvider'; import { getGrafanaContextMock } from 'test/mocks/getGrafanaContextMock'; import { selectors } from '@grafana/e2e-selectors'; -import { config } from '@grafana/runtime'; -import { SceneGridLayout, SceneQueryRunner, SceneTimeRange, VizPanel } from '@grafana/scenes'; +import { config, locationService } from '@grafana/runtime'; +import { SceneGridLayout, SceneQueryRunner, SceneTimeRange, UrlSyncContextProvider, VizPanel } from '@grafana/scenes'; import { playlistSrv } from 'app/features/playlist/PlaylistSrv'; import { buildPanelEditScene } from '../panel-edit/PanelEditor'; @@ -103,9 +103,8 @@ describe('NavToolbarActions', () => { }); it('Should show correct buttons when in settings menu', async () => { - const { dashboard } = setup(); + setup(); - dashboard.startUrlSync(); await userEvent.click(await screen.findByText('Edit')); await userEvent.click(await screen.findByText('Settings')); @@ -118,6 +117,7 @@ describe('NavToolbarActions', () => { it('Should show correct buttons when editing a new panel', async () => { const { dashboard } = setup(); + await act(() => { dashboard.onEnterEditMode(); const editingPanel = ((dashboard.state.body as SceneGridLayout).state.children[0] as DashboardGridItem).state @@ -205,9 +205,13 @@ function setup() { const context = getGrafanaContextMock(); + locationService.push('/'); + render( - + + + ); diff --git a/public/app/features/dashboard-scene/utils/dashboardSessionState.test.ts b/public/app/features/dashboard-scene/utils/dashboardSessionState.test.ts index f7052f2203a..2d1ec2cccbe 100644 --- a/public/app/features/dashboard-scene/utils/dashboardSessionState.test.ts +++ b/public/app/features/dashboard-scene/utils/dashboardSessionState.test.ts @@ -1,5 +1,5 @@ import { config, locationService } from '@grafana/runtime'; -import { CustomVariable } from '@grafana/scenes'; +import { CustomVariable, getUrlSyncManager } from '@grafana/scenes'; import { DashboardDataDTO } from 'app/types'; import { transformSaveModelToScene } from '../serialization/transformSaveModelToScene'; @@ -50,7 +50,8 @@ describe('dashboardSessionState', () => { restoreDashboardStateFromLocalStorage(scene); const variable = scene.state.$variables!.getByName('customVar') as CustomVariable; const timeRange = scene.state.$timeRange; - scene.startUrlSync(); + + getUrlSyncManager().initSync(scene); expect(variable!.state!.value).toEqual(['b']); expect(variable!.state!.text).toEqual(['b']); @@ -63,11 +64,12 @@ describe('dashboardSessionState', () => { PRESERVED_SCENE_STATE_KEY, '?var-customVar=b&var-nonApplicableVar=b&from=now-5m&to=now&timezone=browser' ); + const scene = buildTestScene(); restoreDashboardStateFromLocalStorage(scene); - expect(locationService.getSearch().toString()).toBe('var-customVar=b&from=now-5m&to=now&timezone=browser'); + expect(locationService.getLocation().search).toBe('?var-customVar=b&from=now-5m&to=now&timezone=browser'); }); // handles case when user navigates back to a dashboard with the same state, i.e. using back button @@ -79,7 +81,7 @@ describe('dashboardSessionState', () => { restoreDashboardStateFromLocalStorage(scene); - expect(locationService.getSearch().toString()).toBe('var-customVar=b&from=now-6h&to=now&timezone=browser'); + expect(locationService.getLocation().search).toBe('?var-customVar=b&from=now-6h&to=now&timezone=browser'); }); }); }); @@ -116,6 +118,7 @@ function buildTestScene() { version: 24, weekStart: '', }; + const scene = transformSaveModelToScene({ dashboard: testDashboard, meta: {} }); // Removing data layers to avoid mocking built-in Grafana data source diff --git a/public/app/features/dashboard-scene/utils/dashboardSessionState.ts b/public/app/features/dashboard-scene/utils/dashboardSessionState.ts index c93e530a530..6ad764e2222 100644 --- a/public/app/features/dashboard-scene/utils/dashboardSessionState.ts +++ b/public/app/features/dashboard-scene/utils/dashboardSessionState.ts @@ -17,10 +17,6 @@ export function restoreDashboardStateFromLocalStorage(dashboard: DashboardScene) preservedQueryParams.forEach((value, key) => { if (!currentQueryParams.has(key)) { currentQueryParams.append(key, value); - } else { - if (!currentQueryParams.getAll(key).includes(value)) { - currentQueryParams.append(key, value); - } } }); @@ -38,9 +34,7 @@ export function restoreDashboardStateFromLocalStorage(dashboard: DashboardScene) const finalParams = currentQueryParams.toString(); if (finalParams) { - locationService.replace({ - search: finalParams, - }); + locationService.replace({ search: finalParams }); } } } diff --git a/public/app/features/trails/DataTrail.test.tsx b/public/app/features/trails/DataTrail.test.tsx index 04dbcf2a047..833058cc5b5 100644 --- a/public/app/features/trails/DataTrail.test.tsx +++ b/public/app/features/trails/DataTrail.test.tsx @@ -71,7 +71,7 @@ describe('DataTrail', () => { }); it('should sync state with url', () => { - expect(locationService.getSearchObject().metric).toBe('metric_bucket'); + expect(trail.getUrlState().metric).toBe('metric_bucket'); }); it('should add history step', () => { @@ -104,10 +104,6 @@ describe('DataTrail', () => { trail.state.$timeRange?.setState({ from: 'now-1h' }); }); - it('should sync state with url', () => { - expect(locationService.getSearchObject().from).toBe('now-1h'); - }); - it('should add history step', () => { expect(trail.state.history.state.steps[2].type).toBe('time'); }); @@ -154,10 +150,6 @@ describe('DataTrail', () => { trail.state.$timeRange?.setState({ from: 'now-15m' }); }); - it('should sync state with url', () => { - expect(locationService.getSearchObject().from).toBe('now-15m'); - }); - it('should add history step', () => { expect(trail.state.history.state.steps[3].type).toBe('time'); }); @@ -224,10 +216,6 @@ describe('DataTrail', () => { getFilterVar().setState({ filters: [{ key: 'zone', operator: '=', value: 'a' }] }); }); - it('should sync state with url', () => { - expect(decodeURIComponent(locationService.getSearchObject()['var-filters']?.toString()!)).toBe('zone|=|a'); - }); - it('should add history step', () => { expect(trail.state.history.state.steps[2].type).toBe('filters'); }); @@ -276,12 +264,6 @@ describe('DataTrail', () => { getFilterVar().setState({ filters: [{ key: 'zone', operator: '=', value: 'b' }] }); }); - it('should sync state with url', () => { - expect(decodeURIComponent(locationService.getSearchObject()['var-filters']?.toString()!)).toBe( - 'zone|=|b' - ); - }); - it('should add history step', () => { expect(trail.state.history.state.steps[3].type).toBe('filters'); }); diff --git a/public/app/features/trails/DataTrail.tsx b/public/app/features/trails/DataTrail.tsx index fda4703db5a..3295af66bc8 100644 --- a/public/app/features/trails/DataTrail.tsx +++ b/public/app/features/trails/DataTrail.tsx @@ -1,7 +1,7 @@ import { css } from '@emotion/css'; import React from 'react'; -import { AdHocVariableFilter, GrafanaTheme2, VariableHide, urlUtil } from '@grafana/data'; +import { AdHocVariableFilter, GrafanaTheme2, PageLayoutType, VariableHide, urlUtil } from '@grafana/data'; import { locationService } from '@grafana/runtime'; import { AdHocFiltersVariable, @@ -25,6 +25,7 @@ import { VariableValueSelectors, } from '@grafana/scenes'; import { useStyles2 } from '@grafana/ui'; +import { Page } from 'app/core/components/Page/Page'; import { DataTrailSettings } from './DataTrailSettings'; import { DataTrailHistory } from './DataTrailsHistory'; @@ -35,6 +36,7 @@ import { getTrailStore } from './TrailStore/TrailStore'; import { MetricDatasourceHelper } from './helpers/MetricDatasourceHelper'; import { reportChangeInLabelFilters } from './interactions'; import { MetricSelectedEvent, trailDS, VAR_DATASOURCE, VAR_FILTERS } from './shared'; +import { getMetricName } from './utils'; export interface DataTrailState extends SceneObjectState { topScene?: SceneObject; @@ -93,21 +95,11 @@ export class DataTrail extends SceneObjectBase { ); } - // Disconnects the current step history state from the current state, to prevent changes affecting history state - const currentState = this.state.history.state.steps[this.state.history.state.currentStep]?.trailState; - if (currentState) { - this.restoreFromHistoryStep(currentState); - } - - this.enableUrlSync(); - // Save the current trail as a recent if the browser closes or reloads const saveRecentTrail = () => getTrailStore().setRecentTrail(this); window.addEventListener('unload', saveRecentTrail); return () => { - this.disableUrlSync(); - if (!this.state.embedded) { saveRecentTrail(); } @@ -115,18 +107,6 @@ export class DataTrail extends SceneObjectBase { }; } - private enableUrlSync() { - if (!this.state.embedded) { - getUrlSyncManager().initSync(this); - } - } - - private disableUrlSync() { - if (!this.state.embedded) { - getUrlSyncManager().cleanUp(this); - } - } - protected _variableDependency = new VariableDependencyConfig(this, { variableNames: [VAR_DATASOURCE], onReferencedVariableValueChanged: (variable: SceneVariable) => { @@ -167,8 +147,6 @@ export class DataTrail extends SceneObjectBase { } public restoreFromHistoryStep(state: DataTrailState) { - this.disableUrlSync(); - if (!state.topScene && !state.metric) { // If the top scene for an is missing, correct it. state.topScene = new MetricSelectScene({}); @@ -184,8 +162,6 @@ export class DataTrail extends SceneObjectBase { const urlState = getUrlSyncManager().getUrlState(this); const fullUrl = urlUtil.renderUrl(locationService.getLocation().pathname, urlState); locationService.replace(fullUrl); - - this.enableUrlSync(); } private _handleMetricSelectedEvent(evt: MetricSelectedEvent) { @@ -227,24 +203,26 @@ export class DataTrail extends SceneObjectBase { } static Component = ({ model }: SceneComponentProps) => { - const { controls, topScene, history, settings } = model.useState(); + const { controls, topScene, history, settings, metric } = model.useState(); const styles = useStyles2(getStyles); const showHeaderForFirstTimeUsers = getTrailStore().recent.length < 2; return ( -
- {showHeaderForFirstTimeUsers && } - - {controls && ( -
- {controls.map((control) => ( - - ))} - -
- )} -
{topScene && }
-
+ +
+ {showHeaderForFirstTimeUsers && } + + {controls && ( +
+ {controls.map((control) => ( + + ))} + +
+ )} +
{topScene && }
+
+
); }; } @@ -288,6 +266,8 @@ function getStyles(theme: GrafanaTheme2) { gap: theme.spacing(1), minHeight: '100%', flexDirection: 'column', + background: theme.isLight ? theme.colors.background.primary : theme.colors.background.canvas, + padding: theme.spacing(2, 3, 2, 3), }), body: css({ flexGrow: 1, diff --git a/public/app/features/trails/DataTrailsApp.tsx b/public/app/features/trails/DataTrailsApp.tsx index 9f2511306be..f23361f1f51 100644 --- a/public/app/features/trails/DataTrailsApp.tsx +++ b/public/app/features/trails/DataTrailsApp.tsx @@ -1,11 +1,9 @@ -import { css } from '@emotion/css'; import React, { useEffect } from 'react'; import { Route, Switch } from 'react-router-dom'; -import { GrafanaTheme2, PageLayoutType } from '@grafana/data'; +import { PageLayoutType } from '@grafana/data'; import { locationService } from '@grafana/runtime'; -import { SceneComponentProps, SceneObjectBase, SceneObjectState, getUrlSyncManager } from '@grafana/scenes'; -import { useStyles2 } from '@grafana/ui'; +import { SceneComponentProps, SceneObjectBase, SceneObjectState, UrlSyncContextProvider } from '@grafana/scenes'; import { Page } from 'app/core/components/Page/Page'; import { DataTrail } from './DataTrail'; @@ -13,7 +11,7 @@ import { DataTrailsHome } from './DataTrailsHome'; import { MetricsHeader } from './MetricsHeader'; import { getTrailStore } from './TrailStore/TrailStore'; import { HOME_ROUTE, TRAILS_ROUTE } from './shared'; -import { getMetricName, getUrlForTrail, newMetricsTrail } from './utils'; +import { getUrlForTrail, newMetricsTrail } from './utils'; export interface DataTrailsAppState extends SceneObjectState { trail: DataTrail; @@ -26,13 +24,12 @@ export class DataTrailsApp extends SceneObjectBase { } goToUrlForTrail(trail: DataTrail) { - this.setState({ trail }); locationService.push(getUrlForTrail(trail)); + this.setState({ trail }); } static Component = ({ model }: SceneComponentProps) => { const { trail, home } = model.useState(); - const styles = useStyles2(getStyles); return ( @@ -50,21 +47,7 @@ export class DataTrailsApp extends SceneObjectBase { )} /> - ( - -
- -
-
- )} - /> + } />
); }; @@ -84,7 +67,11 @@ function DataTrailView({ trail }: { trail: DataTrail }) { return null; } - return ; + return ( + + + + ); } let dataTrailsApp: DataTrailsApp; @@ -92,50 +79,10 @@ let dataTrailsApp: DataTrailsApp; export function getDataTrailsApp() { if (!dataTrailsApp) { dataTrailsApp = new DataTrailsApp({ - trail: getInitialTrail(), + trail: newMetricsTrail(), home: new DataTrailsHome({}), }); } return dataTrailsApp; } - -/** - * Get the initial trail for the app to work with based on the current URL - * - * It will either be a new trail that will be started based on the state represented - * in the URL parameters, or it will be the most recently used trail (according to the trail store) - * which has its current history step matching the URL parameters. - * - * The reason for trying to reinitialize from the recent trail is to resolve an issue - * where refreshing the browser would wipe the step history. This allows you to preserve - * it between browser refreshes, or when reaccessing the same URL. - */ -function getInitialTrail() { - const newTrail = newMetricsTrail(); - - // Set the initial state of the newTrail based on the URL, - // In case we are initializing from an externally created URL or a page reload - getUrlSyncManager().initSync(newTrail); - // Remove the URL sync for now. It will be restored on the trail if it is activated. - getUrlSyncManager().cleanUp(newTrail); - - // If one of the recent trails is a match to the newTrail derived from the current URL, - // let's restore that trail so that a page refresh doesn't create a new trail. - const recentMatchingTrail = getTrailStore().findMatchingRecentTrail(newTrail)?.resolve(); - - // If there is a matching trail, initialize with that. Otherwise, use the new trail. - return recentMatchingTrail || newTrail; -} - -function getStyles(theme: GrafanaTheme2) { - return { - customPage: css({ - padding: theme.spacing(2, 3, 2, 3), - background: theme.isLight ? theme.colors.background.primary : theme.colors.background.canvas, - flexGrow: 1, - display: 'flex', - flexDirection: 'column', - }), - }; -} diff --git a/public/app/features/trails/TrailStore/TrailStore.test.ts b/public/app/features/trails/TrailStore/TrailStore.test.ts index 1a3bccd567c..871dd2fc55c 100644 --- a/public/app/features/trails/TrailStore/TrailStore.test.ts +++ b/public/app/features/trails/TrailStore/TrailStore.test.ts @@ -349,6 +349,7 @@ describe('TrailStore', () => { describe('And time range is changed to now-15m to now', () => { let trail: DataTrail; + beforeEach(() => { localStorage.clear(); localStorage.setItem(RECENT_TRAILS_KEY, JSON.stringify([{ history, currentStep: 1 }])); @@ -357,6 +358,7 @@ describe('TrailStore', () => { trail = store.recent[0].resolve(); const urlState = getUrlSyncManager().getUrlState(trail); locationService.partial(urlState); + trail.activate(); trail.state.history.activate(); trail.state.$timeRange?.setState({ from: 'now-15m' }); diff --git a/public/app/features/trails/TrailStore/TrailStore.ts b/public/app/features/trails/TrailStore/TrailStore.ts index 02c7cd92446..4eeea064b32 100644 --- a/public/app/features/trails/TrailStore/TrailStore.ts +++ b/public/app/features/trails/TrailStore/TrailStore.ts @@ -1,5 +1,6 @@ import { debounce, isEqual } from 'lodash'; +import { urlUtil } from '@grafana/data'; import { getUrlSyncManager, SceneObject, SceneObjectRef, SceneObjectUrlValues, sceneUtils } from '@grafana/scenes'; import { dispatch } from 'app/store/store'; @@ -77,9 +78,14 @@ export class TrailStore { }); const currentStep = t.currentStep ?? trail.state.history.state.steps.length - 1; + trail.state.history.setState({ currentStep }); - // The state change listeners aren't activated yet, so maually change to the current step state - trail.setState(trail.state.history.state.steps[currentStep].trailState); + + trail.setState( + sceneUtils.cloneSceneObjectState(trail.state.history.state.steps[currentStep].trailState, { + history: trail.state.history, + }) + ); return trail; } @@ -102,8 +108,8 @@ export class TrailStore { } private _loadFromUrl(node: SceneObject, urlValues: SceneObjectUrlValues) { - node.urlSync?.updateFromUrl(urlValues); - node.forEachChild((child) => this._loadFromUrl(child, urlValues)); + const urlState = urlUtil.renderUrl('', urlValues); + sceneUtils.syncStateFromSearchParams(node, new URLSearchParams(urlState)); } // Recent Trails @@ -140,14 +146,6 @@ export class TrailStore { this._save(); } - findMatchingRecentTrail(trail: DataTrail) { - const matchUrlState = getUrlStateForComparison(trail); - return this._recent.find((t) => { - const urlState = getUrlStateForComparison(t.resolve()); - return isEqual(matchUrlState, urlState); - }); - } - // Bookmarked Trails get bookmarks() { return this._bookmarks; diff --git a/yarn.lock b/yarn.lock index 365f011f4a0..53a7df821f0 100644 --- a/yarn.lock +++ b/yarn.lock @@ -134,7 +134,7 @@ __metadata: languageName: node linkType: hard -"@babel/helper-annotate-as-pure@npm:^7.24.7": +"@babel/helper-annotate-as-pure@npm:^7.22.5, @babel/helper-annotate-as-pure@npm:^7.24.7": version: 7.24.7 resolution: "@babel/helper-annotate-as-pure@npm:7.24.7" dependencies: @@ -166,7 +166,7 @@ __metadata: languageName: node linkType: hard -"@babel/helper-create-class-features-plugin@npm:^7.24.7": +"@babel/helper-create-class-features-plugin@npm:^7.24.5, @babel/helper-create-class-features-plugin@npm:^7.24.7": version: 7.24.7 resolution: "@babel/helper-create-class-features-plugin@npm:7.24.7" dependencies: @@ -285,7 +285,7 @@ __metadata: languageName: node linkType: hard -"@babel/helper-plugin-utils@npm:^7.0.0, @babel/helper-plugin-utils@npm:^7.10.4, @babel/helper-plugin-utils@npm:^7.12.13, @babel/helper-plugin-utils@npm:^7.14.5, @babel/helper-plugin-utils@npm:^7.18.6, @babel/helper-plugin-utils@npm:^7.18.9, @babel/helper-plugin-utils@npm:^7.22.5, @babel/helper-plugin-utils@npm:^7.24.7, @babel/helper-plugin-utils@npm:^7.8.0, @babel/helper-plugin-utils@npm:^7.8.3": +"@babel/helper-plugin-utils@npm:^7.0.0, @babel/helper-plugin-utils@npm:^7.10.4, @babel/helper-plugin-utils@npm:^7.12.13, @babel/helper-plugin-utils@npm:^7.14.5, @babel/helper-plugin-utils@npm:^7.18.6, @babel/helper-plugin-utils@npm:^7.18.9, @babel/helper-plugin-utils@npm:^7.22.5, @babel/helper-plugin-utils@npm:^7.24.0, @babel/helper-plugin-utils@npm:^7.24.5, @babel/helper-plugin-utils@npm:^7.24.7, @babel/helper-plugin-utils@npm:^7.8.0, @babel/helper-plugin-utils@npm:^7.8.3": version: 7.24.7 resolution: "@babel/helper-plugin-utils@npm:7.24.7" checksum: 10/dad51622f0123fdba4e2d40a81a6b7d6ef4b1491b2f92fd9749447a36bde809106cf117358705057a2adc8fd73d5dc090222e0561b1213dae8601c8367f5aac8 @@ -361,7 +361,7 @@ __metadata: languageName: node linkType: hard -"@babel/helper-validator-option@npm:^7.24.7": +"@babel/helper-validator-option@npm:^7.23.5, @babel/helper-validator-option@npm:^7.24.7": version: 7.24.7 resolution: "@babel/helper-validator-option@npm:7.24.7" checksum: 10/9689166bf3f777dd424c026841c8cd651e41b21242dbfd4569a53086179a3e744c8eddd56e9d10b54142270141c91581b53af0d7c00c82d552d2540e2a919f7e @@ -546,14 +546,14 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-syntax-flow@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-syntax-flow@npm:7.24.7" +"@babel/plugin-syntax-flow@npm:^7.24.1": + version: 7.24.1 + resolution: "@babel/plugin-syntax-flow@npm:7.24.1" dependencies: - "@babel/helper-plugin-utils": "npm:^7.24.7" + "@babel/helper-plugin-utils": "npm:^7.24.0" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 10/0a83bde6736110d68f3b20eda44ca020a6d34c336a342f84369207f5514e17779b9c3d3ebc2f1c94b595c13819f46bf7af367c4b1382bda182e1764655fd6a5a + checksum: 10/87dfe32f3a3ea77941034fb2a39fdfc9ea18a994b8df40c3659a11c8787b2bc5adea029259c4eafc03cd35f11628f6533aa2a06381db7fcbe3b2cc3c2a2bb54f languageName: node linkType: hard @@ -601,7 +601,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-syntax-jsx@npm:^7.24.7, @babel/plugin-syntax-jsx@npm:^7.7.2": +"@babel/plugin-syntax-jsx@npm:^7.24.1, @babel/plugin-syntax-jsx@npm:^7.24.7, @babel/plugin-syntax-jsx@npm:^7.7.2": version: 7.24.7 resolution: "@babel/plugin-syntax-jsx@npm:7.24.7" dependencies: @@ -700,7 +700,18 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-syntax-typescript@npm:^7.24.7, @babel/plugin-syntax-typescript@npm:^7.7.2": +"@babel/plugin-syntax-typescript@npm:^7.24.1": + version: 7.24.1 + resolution: "@babel/plugin-syntax-typescript@npm:7.24.1" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.24.0" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10/bf4bd70788d5456b5f75572e47a2e31435c7c4e43609bd4dffd2cc0c7a6cf90aabcf6cd389e351854de9a64412a07d30effef5373251fe8f6a4c9db0c0163bda + languageName: node + linkType: hard + +"@babel/plugin-syntax-typescript@npm:^7.7.2": version: 7.24.7 resolution: "@babel/plugin-syntax-typescript@npm:7.24.7" dependencies: @@ -908,15 +919,15 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-flow-strip-types@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-flow-strip-types@npm:7.24.7" +"@babel/plugin-transform-flow-strip-types@npm:^7.24.1": + version: 7.24.1 + resolution: "@babel/plugin-transform-flow-strip-types@npm:7.24.1" dependencies: - "@babel/helper-plugin-utils": "npm:^7.24.7" - "@babel/plugin-syntax-flow": "npm:^7.24.7" + "@babel/helper-plugin-utils": "npm:^7.24.0" + "@babel/plugin-syntax-flow": "npm:^7.24.1" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 10/234390eb09f0c1d5a2001c9e48c6440c30f9f188939004e07aa8c0cb946f04793a2e058fa1737b1c56041a7d3ea1510593c39220cc43bba85a017bfcc1c89c4d + checksum: 10/6e1db557d7d34a8dbfdf430557f47c75930a9044b838bb3cc706f9c816e11cd68a61c68239478dd05bbe3ec197113ad0c22c5be1bdddac8723040dd9e9cb9dc0 languageName: node linkType: hard @@ -1003,7 +1014,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-modules-commonjs@npm:^7.22.5, @babel/plugin-transform-modules-commonjs@npm:^7.23.0, @babel/plugin-transform-modules-commonjs@npm:^7.24.7": +"@babel/plugin-transform-modules-commonjs@npm:^7.22.5, @babel/plugin-transform-modules-commonjs@npm:^7.23.0, @babel/plugin-transform-modules-commonjs@npm:^7.24.1, @babel/plugin-transform-modules-commonjs@npm:^7.24.7": version: 7.24.7 resolution: "@babel/plugin-transform-modules-commonjs@npm:7.24.7" dependencies: @@ -1316,17 +1327,17 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-typescript@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-typescript@npm:7.24.7" +"@babel/plugin-transform-typescript@npm:^7.24.1": + version: 7.24.5 + resolution: "@babel/plugin-transform-typescript@npm:7.24.5" dependencies: - "@babel/helper-annotate-as-pure": "npm:^7.24.7" - "@babel/helper-create-class-features-plugin": "npm:^7.24.7" - "@babel/helper-plugin-utils": "npm:^7.24.7" - "@babel/plugin-syntax-typescript": "npm:^7.24.7" + "@babel/helper-annotate-as-pure": "npm:^7.22.5" + "@babel/helper-create-class-features-plugin": "npm:^7.24.5" + "@babel/helper-plugin-utils": "npm:^7.24.5" + "@babel/plugin-syntax-typescript": "npm:^7.24.1" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 10/6a4af5a96a90f08ea679829abc558b8478b8b31b40c84b887f2859110b75ab2c8c48a2cf80193621d988a6b064aefef2a74ea3ccc310166219f87959d06a3033 + checksum: 10/3d35accd6d7ae075509e01ce2cc3921ef3b44159b8ec15dd6201050c56dab4cfe14c5c0538e26e3beffb14c33731527041b60444cfba1ceae740f0748caf0aa0 languageName: node linkType: hard @@ -1479,15 +1490,15 @@ __metadata: linkType: hard "@babel/preset-flow@npm:^7.22.15": - version: 7.24.7 - resolution: "@babel/preset-flow@npm:7.24.7" + version: 7.24.1 + resolution: "@babel/preset-flow@npm:7.24.1" dependencies: - "@babel/helper-plugin-utils": "npm:^7.24.7" - "@babel/helper-validator-option": "npm:^7.24.7" - "@babel/plugin-transform-flow-strip-types": "npm:^7.24.7" + "@babel/helper-plugin-utils": "npm:^7.24.0" + "@babel/helper-validator-option": "npm:^7.23.5" + "@babel/plugin-transform-flow-strip-types": "npm:^7.24.1" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 10/20fe02b5bc3a9d5b353d164d5ef89841032605434ae351d14309a041d6dc5bd0df3417d0510a6468813392d54793825ba6b04d8c5a5377eee31fc2b55503bf26 + checksum: 10/f1402746050a1c03af9509791bb88e90d1d56a3063374278a80b030c6d1f48a462a822a1a66826d0a631cb5424fc70bf91a25de5f7f31ff519553a3e190a0b7e languageName: node linkType: hard @@ -1521,23 +1532,23 @@ __metadata: linkType: hard "@babel/preset-typescript@npm:^7.23.0": - version: 7.24.7 - resolution: "@babel/preset-typescript@npm:7.24.7" + version: 7.24.1 + resolution: "@babel/preset-typescript@npm:7.24.1" dependencies: - "@babel/helper-plugin-utils": "npm:^7.24.7" - "@babel/helper-validator-option": "npm:^7.24.7" - "@babel/plugin-syntax-jsx": "npm:^7.24.7" - "@babel/plugin-transform-modules-commonjs": "npm:^7.24.7" - "@babel/plugin-transform-typescript": "npm:^7.24.7" + "@babel/helper-plugin-utils": "npm:^7.24.0" + "@babel/helper-validator-option": "npm:^7.23.5" + "@babel/plugin-syntax-jsx": "npm:^7.24.1" + "@babel/plugin-transform-modules-commonjs": "npm:^7.24.1" + "@babel/plugin-transform-typescript": "npm:^7.24.1" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 10/995e9783f8e474581e7533d6b10ec1fbea69528cc939ad8582b5937e13548e5215d25a8e2c845e7b351fdaa13139896b5e42ab3bde83918ea4e41773f10861ac + checksum: 10/ba774bd427c9f376769ddbc2723f5801a6b30113a7c3aaa14c36215508e347a527fdae98cfc294f0ecb283d800ee0c1f74e66e38e84c9bc9ed2fe6ed50dcfaf8 languageName: node linkType: hard "@babel/register@npm:^7.22.15": - version: 7.24.6 - resolution: "@babel/register@npm:7.24.6" + version: 7.23.7 + resolution: "@babel/register@npm:7.23.7" dependencies: clone-deep: "npm:^4.0.1" find-cache-dir: "npm:^2.0.0" @@ -1546,7 +1557,7 @@ __metadata: source-map-support: "npm:^0.5.16" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 10/94580678ee541218475d605720ea1c3b4a647c504c8a08124373efad24a523f219dd7441de92f09c692c22362ea4422c5f3c51a3b3048b7a64deb1f6daea96b6 + checksum: 10/c72a6d4856ef04f13490370d805854d2d98a77786bfaec7d85e2c585e1217011c4f3df18197a890e14520906c9111bef95551ba1a9b59c88df4dfc2dfe2c8d1b languageName: node linkType: hard @@ -3524,15 +3535,15 @@ __metadata: languageName: unknown linkType: soft -"@grafana/scenes@npm:4.29.0": - version: 4.29.0 - resolution: "@grafana/scenes@npm:4.29.0" +"@grafana/scenes@npm:^5.0.2": + version: 5.0.2 + resolution: "@grafana/scenes@npm:5.0.2" dependencies: "@grafana/e2e-selectors": "npm:^11.0.0" "@leeoniya/ufuzzy": "npm:^1.0.14" react-grid-layout: "npm:1.3.4" - react-use: "npm:17.4.0" - react-virtualized-auto-sizer: "npm:1.0.7" + react-use: "npm:17.5.0" + react-virtualized-auto-sizer: "npm:1.0.24" uuid: "npm:^9.0.0" peerDependencies: "@grafana/data": ^10.4.1 @@ -3541,7 +3552,7 @@ __metadata: "@grafana/ui": ^10.4.1 react: ^18.0.0 react-dom: ^18.0.0 - checksum: 10/5da9b2ae9093f4c3ed012eeea58ce0dc66ddeabb02d2b0d4a87917f17463c857ccab5df23142cfc62323991e714a1a3f4d38d5956cdfe455ce57edcc82fe6893 + checksum: 10/a7bb83c5d0aca6e47ce8fb50ff5952da1dc1ea1b209148cbc7795bc480606df09012ff13a309510fcb4fa75e94af26700aa53bb0fadeb77d8215d23288b46b47 languageName: node linkType: hard @@ -4664,13 +4675,13 @@ __metadata: linkType: hard "@ndelangen/get-tarball@npm:^3.0.7": - version: 3.0.9 - resolution: "@ndelangen/get-tarball@npm:3.0.9" + version: 3.0.7 + resolution: "@ndelangen/get-tarball@npm:3.0.7" dependencies: gunzip-maybe: "npm:^1.4.2" pump: "npm:^3.0.0" tar-fs: "npm:^2.1.1" - checksum: 10/39697cef2b92f6e08e3590467cc6da88cd6757b2a27cb9208879c2316ed71d6be4608892ee0a86eb0343140da1a5df498f93a32c2aaf8f1fbd90f883f08b5f63 + checksum: 10/382689de9d4a8e5e5eca0647c958969b4debd977f7acf398388c4515baf242a13f57f22adb6d02c558f68c4945834c2470982828da7247caaee90a2c9053a396 languageName: node linkType: hard @@ -5688,7 +5699,7 @@ __metadata: languageName: node linkType: hard -"@radix-ui/react-portal@npm:1.0.4, @radix-ui/react-portal@npm:^1.0.1": +"@radix-ui/react-portal@npm:1.0.4": version: 1.0.4 resolution: "@radix-ui/react-portal@npm:1.0.4" dependencies: @@ -5708,6 +5719,26 @@ __metadata: languageName: node linkType: hard +"@radix-ui/react-portal@npm:^1.0.1": + version: 1.0.3 + resolution: "@radix-ui/react-portal@npm:1.0.3" + dependencies: + "@babel/runtime": "npm:^7.13.10" + "@radix-ui/react-primitive": "npm:1.0.3" + peerDependencies: + "@types/react": "*" + "@types/react-dom": "*" + react: ^16.8 || ^17.0 || ^18.0 + react-dom: ^16.8 || ^17.0 || ^18.0 + peerDependenciesMeta: + "@types/react": + optional: true + "@types/react-dom": + optional: true + checksum: 10/d352bcd6ad65eb43c9e0d72d0755c2aae85e03fb287770866262be3a2d5302b2885aee3cd99f2bbf62ecd14fcb1460703f1dcdc40351f77ad887b931c6f0012a + languageName: node + linkType: hard + "@radix-ui/react-presence@npm:1.0.1": version: 1.0.1 resolution: "@radix-ui/react-presence@npm:1.0.1" @@ -6605,12 +6636,12 @@ __metadata: linkType: hard "@storybook/addon-webpack5-compiler-swc@npm:^1.0.2": - version: 1.0.3 - resolution: "@storybook/addon-webpack5-compiler-swc@npm:1.0.3" + version: 1.0.2 + resolution: "@storybook/addon-webpack5-compiler-swc@npm:1.0.2" dependencies: - "@swc/core": "npm:1.5.7" + "@swc/core": "npm:^1.3.102" swc-loader: "npm:^0.2.3" - checksum: 10/21d5fbf6021a1cb1c7a0c6b0d5d17a475d4afd29610fa1c43e2b21a015cee4446b9711c991812eca17e5ff78c3e9d402762d93584e5fecf2de303f261fb0db59 + checksum: 10/890b321888b844326b72cdb98b6627dcefe2fa3c0314816dd31b93fbc7a6ec6a3e3db7fb44505bef1155994874f2c47d1d75fd4c22a29a233d110852577ccc62 languageName: node linkType: hard @@ -7515,9 +7546,9 @@ __metadata: languageName: node linkType: hard -"@swc/core-darwin-arm64@npm:1.5.7": - version: 1.5.7 - resolution: "@swc/core-darwin-arm64@npm:1.5.7" +"@swc/core-darwin-arm64@npm:1.5.5": + version: 1.5.5 + resolution: "@swc/core-darwin-arm64@npm:1.5.5" conditions: os=darwin & cpu=arm64 languageName: node linkType: hard @@ -7529,9 +7560,9 @@ __metadata: languageName: node linkType: hard -"@swc/core-darwin-x64@npm:1.5.7": - version: 1.5.7 - resolution: "@swc/core-darwin-x64@npm:1.5.7" +"@swc/core-darwin-x64@npm:1.5.5": + version: 1.5.5 + resolution: "@swc/core-darwin-x64@npm:1.5.5" conditions: os=darwin & cpu=x64 languageName: node linkType: hard @@ -7543,9 +7574,9 @@ __metadata: languageName: node linkType: hard -"@swc/core-linux-arm-gnueabihf@npm:1.5.7": - version: 1.5.7 - resolution: "@swc/core-linux-arm-gnueabihf@npm:1.5.7" +"@swc/core-linux-arm-gnueabihf@npm:1.5.5": + version: 1.5.5 + resolution: "@swc/core-linux-arm-gnueabihf@npm:1.5.5" conditions: os=linux & cpu=arm languageName: node linkType: hard @@ -7557,9 +7588,9 @@ __metadata: languageName: node linkType: hard -"@swc/core-linux-arm64-gnu@npm:1.5.7": - version: 1.5.7 - resolution: "@swc/core-linux-arm64-gnu@npm:1.5.7" +"@swc/core-linux-arm64-gnu@npm:1.5.5": + version: 1.5.5 + resolution: "@swc/core-linux-arm64-gnu@npm:1.5.5" conditions: os=linux & cpu=arm64 & libc=glibc languageName: node linkType: hard @@ -7571,9 +7602,9 @@ __metadata: languageName: node linkType: hard -"@swc/core-linux-arm64-musl@npm:1.5.7": - version: 1.5.7 - resolution: "@swc/core-linux-arm64-musl@npm:1.5.7" +"@swc/core-linux-arm64-musl@npm:1.5.5": + version: 1.5.5 + resolution: "@swc/core-linux-arm64-musl@npm:1.5.5" conditions: os=linux & cpu=arm64 & libc=musl languageName: node linkType: hard @@ -7585,9 +7616,9 @@ __metadata: languageName: node linkType: hard -"@swc/core-linux-x64-gnu@npm:1.5.7": - version: 1.5.7 - resolution: "@swc/core-linux-x64-gnu@npm:1.5.7" +"@swc/core-linux-x64-gnu@npm:1.5.5": + version: 1.5.5 + resolution: "@swc/core-linux-x64-gnu@npm:1.5.5" conditions: os=linux & cpu=x64 & libc=glibc languageName: node linkType: hard @@ -7599,9 +7630,9 @@ __metadata: languageName: node linkType: hard -"@swc/core-linux-x64-musl@npm:1.5.7": - version: 1.5.7 - resolution: "@swc/core-linux-x64-musl@npm:1.5.7" +"@swc/core-linux-x64-musl@npm:1.5.5": + version: 1.5.5 + resolution: "@swc/core-linux-x64-musl@npm:1.5.5" conditions: os=linux & cpu=x64 & libc=musl languageName: node linkType: hard @@ -7613,9 +7644,9 @@ __metadata: languageName: node linkType: hard -"@swc/core-win32-arm64-msvc@npm:1.5.7": - version: 1.5.7 - resolution: "@swc/core-win32-arm64-msvc@npm:1.5.7" +"@swc/core-win32-arm64-msvc@npm:1.5.5": + version: 1.5.5 + resolution: "@swc/core-win32-arm64-msvc@npm:1.5.5" conditions: os=win32 & cpu=arm64 languageName: node linkType: hard @@ -7627,9 +7658,9 @@ __metadata: languageName: node linkType: hard -"@swc/core-win32-ia32-msvc@npm:1.5.7": - version: 1.5.7 - resolution: "@swc/core-win32-ia32-msvc@npm:1.5.7" +"@swc/core-win32-ia32-msvc@npm:1.5.5": + version: 1.5.5 + resolution: "@swc/core-win32-ia32-msvc@npm:1.5.5" conditions: os=win32 & cpu=ia32 languageName: node linkType: hard @@ -7641,9 +7672,9 @@ __metadata: languageName: node linkType: hard -"@swc/core-win32-x64-msvc@npm:1.5.7": - version: 1.5.7 - resolution: "@swc/core-win32-x64-msvc@npm:1.5.7" +"@swc/core-win32-x64-msvc@npm:1.5.5": + version: 1.5.5 + resolution: "@swc/core-win32-x64-msvc@npm:1.5.5" conditions: os=win32 & cpu=x64 languageName: node linkType: hard @@ -7694,22 +7725,22 @@ __metadata: languageName: node linkType: hard -"@swc/core@npm:1.5.7": - version: 1.5.7 - resolution: "@swc/core@npm:1.5.7" +"@swc/core@npm:^1.3.102": + version: 1.5.5 + resolution: "@swc/core@npm:1.5.5" dependencies: - "@swc/core-darwin-arm64": "npm:1.5.7" - "@swc/core-darwin-x64": "npm:1.5.7" - "@swc/core-linux-arm-gnueabihf": "npm:1.5.7" - "@swc/core-linux-arm64-gnu": "npm:1.5.7" - "@swc/core-linux-arm64-musl": "npm:1.5.7" - "@swc/core-linux-x64-gnu": "npm:1.5.7" - "@swc/core-linux-x64-musl": "npm:1.5.7" - "@swc/core-win32-arm64-msvc": "npm:1.5.7" - "@swc/core-win32-ia32-msvc": "npm:1.5.7" - "@swc/core-win32-x64-msvc": "npm:1.5.7" + "@swc/core-darwin-arm64": "npm:1.5.5" + "@swc/core-darwin-x64": "npm:1.5.5" + "@swc/core-linux-arm-gnueabihf": "npm:1.5.5" + "@swc/core-linux-arm64-gnu": "npm:1.5.5" + "@swc/core-linux-arm64-musl": "npm:1.5.5" + "@swc/core-linux-x64-gnu": "npm:1.5.5" + "@swc/core-linux-x64-musl": "npm:1.5.5" + "@swc/core-win32-arm64-msvc": "npm:1.5.5" + "@swc/core-win32-ia32-msvc": "npm:1.5.5" + "@swc/core-win32-x64-msvc": "npm:1.5.5" "@swc/counter": "npm:^0.1.2" - "@swc/types": "npm:0.1.7" + "@swc/types": "npm:^0.1.5" peerDependencies: "@swc/helpers": ^0.5.0 dependenciesMeta: @@ -7736,7 +7767,7 @@ __metadata: peerDependenciesMeta: "@swc/helpers": optional: true - checksum: 10/83e03908db40f2133c3624a83d4550336d7a56e64af7d42fd959c746b8da950a253f3c6d9eaa3467e10abeda024aa6b039a987adc839326f969e1d26625f14ef + checksum: 10/31e6dc50eeb549d1e52f21e1c5ae63b714bf4488c70cc4106264de378048ca35c0264c640590fbbb760c0cbe7f2c91291ef20e6af5c46dc31b5da88e8b946f0c languageName: node linkType: hard @@ -7756,12 +7787,10 @@ __metadata: languageName: node linkType: hard -"@swc/types@npm:0.1.7, @swc/types@npm:^0.1.5": - version: 0.1.7 - resolution: "@swc/types@npm:0.1.7" - dependencies: - "@swc/counter": "npm:^0.1.3" - checksum: 10/ed66c26b36972a74f852c1781fadc75946578abfeeea58f110684833b5d1e70f28a77ddb82fd5bf3cf3c4dad0e1b6a1c924d7e2cc7a99f9b16ed16fe266bba25 +"@swc/types@npm:^0.1.5": + version: 0.1.5 + resolution: "@swc/types@npm:0.1.5" + checksum: 10/5f4de8c60d2623bed607c7fa1e0cee4ffc682af28d5ffe88dc9ed9903a1c2088ccc39f684689d6bb314595c9fbb560beaec773d633be515fb856ffc81d738822 languageName: node linkType: hard @@ -7942,6 +7971,13 @@ __metadata: languageName: node linkType: hard +"@types/add@npm:^2": + version: 2.0.3 + resolution: "@types/add@npm:2.0.3" + checksum: 10/c15815ef0e4903113f7fda84b4c2704a1b694fd6f53a6e3c9327b5b7067aba676c75e696b950401de45be7646b37b7059303a7bb5c4363de3eb3e0c06d25f565 + languageName: node + linkType: hard + "@types/angular-route@npm:1.7.6": version: 1.7.6 resolution: "@types/angular-route@npm:1.7.6" @@ -8073,11 +8109,11 @@ __metadata: linkType: hard "@types/cross-spawn@npm:^6.0.2": - version: 6.0.6 - resolution: "@types/cross-spawn@npm:6.0.6" + version: 6.0.3 + resolution: "@types/cross-spawn@npm:6.0.3" dependencies: "@types/node": "npm:*" - checksum: 10/b4172927cd1387cf037c3ade785ef46c87537b7bc2803d7f6663b4904d0c5d6f726415d1adb2fee4fecb21746738f11336076449265d46be4ce110cc3a8c8436 + checksum: 10/06d50fa1e1370ef60b9c9085b76adec7d7bc20728fbb02b3c2061d4d922312acf1ba56a7c94d88c27a22fc6241ab6b970c936f3294038a9c97a719fbc8eb8a76 languageName: node linkType: hard @@ -8402,9 +8438,9 @@ __metadata: linkType: hard "@types/detect-port@npm:^1.3.0": - version: 1.3.5 - resolution: "@types/detect-port@npm:1.3.5" - checksum: 10/923cf04c6a05af59090743baeb9948f1938ceb98c1f7ea93db7ac310210426b385aa00005d23039ebb8019a9d13e141f5246e9c733b290885018d722a4787921 + version: 1.3.2 + resolution: "@types/detect-port@npm:1.3.2" + checksum: 10/e4678244fbe8801014798b3efb967c886e6fc0fe94fb771a1be9558b35c68910b23bd30984df4a276b927820ce436b244506fb0972116d1b18506ac96bfd1a50 languageName: node linkType: hard @@ -8439,9 +8475,9 @@ __metadata: linkType: hard "@types/ejs@npm:^3.1.1": - version: 3.1.5 - resolution: "@types/ejs@npm:3.1.5" - checksum: 10/918898fd279108087722c1713e2ddb0c152ab839397946d164db8a18b5bbd732af9746373882a9bcf4843d35c6b191a8f569a7a4e51e90726d24501b39f40367 + version: 3.1.2 + resolution: "@types/ejs@npm:3.1.2" + checksum: 10/8be94c952dc06525a5fb229a469db66f2240425ce137a1f5108a6a11f500cac9190691e924e6d18df34c5c2be40ef36b537921d2833262467ee1dfb7a7c919ac languageName: node linkType: hard @@ -8768,18 +8804,18 @@ __metadata: linkType: hard "@types/mdast@npm:^4.0.0": - version: 4.0.4 - resolution: "@types/mdast@npm:4.0.4" + version: 4.0.3 + resolution: "@types/mdast@npm:4.0.3" dependencies: "@types/unist": "npm:*" - checksum: 10/efe3ec11b9ee0015a396c4fb4cd1b6f31b51b8ae9783c59560e6fc0bf6c2fa1dcc7fccaf45fa09a6c8b3397fab9dc8d431433935cae3835caa70a18f7fc775f8 + checksum: 10/6d2d8f00ffaff6663dd67ea9ab999a5e52066c001432a9b99947fa9e76bccba819dfca40e419588a637a70d42cd405071f5b76efd4ddeb1dc721353b7cc73623 languageName: node linkType: hard "@types/mdx@npm:^2.0.0": - version: 2.0.13 - resolution: "@types/mdx@npm:2.0.13" - checksum: 10/b73ed5f08114879b9590dc6a9ee8b648643c57c708583cd24b2bc3cc8961361fc63139ac7e9291e7b3b6e6b45707749d01d6f9727ddec5533df75dc3b90871a4 + version: 2.0.4 + resolution: "@types/mdx@npm:2.0.4" + checksum: 10/79e011ea17751741f69fa0a8bada8c596ca273c5510d4b37e8fa0dd8b5f93c6b8eb4a351da426454df7b4ddbaa8dfc3aae88562417300b968cc8964afac3a6ca languageName: node linkType: hard @@ -8908,9 +8944,9 @@ __metadata: linkType: hard "@types/pretty-hrtime@npm:^1.0.0": - version: 1.0.3 - resolution: "@types/pretty-hrtime@npm:1.0.3" - checksum: 10/288061dff992c8107d5c7b5a1277bbb0a314a27eb10087dea628a08fa37694a655191a69e25a212c95e61e498363c48ad9e281d23964a448f6c14100a6be0910 + version: 1.0.1 + resolution: "@types/pretty-hrtime@npm:1.0.1" + checksum: 10/a6cdee417eea6f7af914e4fcd13e05822864ce10b5d7646525632e86d69b79123eec55a5d3fff0155ba46b61902775e1644bcb80e1e4dffdac28e7febb089083 languageName: node linkType: hard @@ -10205,7 +10241,7 @@ __metadata: languageName: node linkType: hard -"acorn@npm:^8.0.4, acorn@npm:^8.1.0, acorn@npm:^8.11.3, acorn@npm:^8.4.1, acorn@npm:^8.7.1, acorn@npm:^8.8.0, acorn@npm:^8.8.2, acorn@npm:^8.9.0": +"acorn@npm:^8.0.4, acorn@npm:^8.1.0, acorn@npm:^8.10.0, acorn@npm:^8.4.1, acorn@npm:^8.7.1, acorn@npm:^8.8.0, acorn@npm:^8.8.2, acorn@npm:^8.9.0": version: 8.11.3 resolution: "acorn@npm:8.11.3" bin: @@ -10238,9 +10274,9 @@ __metadata: linkType: hard "address@npm:^1.0.1": - version: 1.2.2 - resolution: "address@npm:1.2.2" - checksum: 10/57d80a0c6ccadc8769ad3aeb130c1599e8aee86a8d25f671216c40df9b8489d6c3ef879bc2752b40d1458aa768f947c2d91e5b2fedfe63cf702c40afdfda9ba9 + version: 1.1.2 + resolution: "address@npm:1.1.2" + checksum: 10/be4c16c4874a347c8f6dec28b5b5c891f7c3ca2234bdd734b6e4b0f28310b07a9ae8359937a8d92a4ae682019d375d70de920203d9acc839167674e3a525970a languageName: node linkType: hard @@ -11250,9 +11286,9 @@ __metadata: linkType: hard "big-integer@npm:^1.6.44": - version: 1.6.52 - resolution: "big-integer@npm:1.6.52" - checksum: 10/4bc6ae152a96edc9f95020f5fc66b13d26a9ad9a021225a9f0213f7e3dc44269f423aa8c42e19d6ac4a63bb2b22140b95d10be8f9ca7a6d9aa1b22b330d1f514 + version: 1.6.51 + resolution: "big-integer@npm:1.6.51" + checksum: 10/c7a12640901906d6f6b6bdb42a4eaba9578397b6d9a0dd090cf001ec813ff2bfcd441e364068ea0416db6175d2615f8ed19cff7d1a795115bf7c92d44993f991 languageName: node linkType: hard @@ -11992,15 +12028,6 @@ __metadata: languageName: node linkType: hard -"citty@npm:^0.1.6": - version: 0.1.6 - resolution: "citty@npm:0.1.6" - dependencies: - consola: "npm:^3.2.3" - checksum: 10/3208947e73abb699a12578ee2bfee254bf8dd1ce0d5698e8a298411cabf16bd3620d63433aef5bd88cdb2b9da71aef18adefa3b4ffd18273bb62dd1d28c344f5 - languageName: node - linkType: hard - "cjs-module-lexer@npm:^1.0.0, cjs-module-lexer@npm:^1.2.3": version: 1.3.1 resolution: "cjs-module-lexer@npm:1.3.1" @@ -12055,15 +12082,15 @@ __metadata: linkType: hard "cli-table3@npm:^0.6.1, cli-table3@npm:~0.6.1": - version: 0.6.5 - resolution: "cli-table3@npm:0.6.5" + version: 0.6.3 + resolution: "cli-table3@npm:0.6.3" dependencies: "@colors/colors": "npm:1.5.0" string-width: "npm:^4.2.0" dependenciesMeta: "@colors/colors": optional: true - checksum: 10/8dca71256f6f1367bab84c33add3f957367c7c43750a9828a4212ebd31b8df76bd7419d386e3391ac7419698a8540c25f1a474584028f35b170841cde2e055c5 + checksum: 10/8d82b75be7edc7febb1283dc49582a521536527cba80af62a2e4522a0ee39c252886a1a2f02d05ae9d753204dbcffeb3a40d1358ee10dccd7fe8d935cfad3f85 languageName: node linkType: hard @@ -12268,7 +12295,7 @@ __metadata: languageName: node linkType: hard -"colorette@npm:^2.0.10, colorette@npm:^2.0.14, colorette@npm:^2.0.16": +"colorette@npm:^2.0.10, colorette@npm:^2.0.14, colorette@npm:^2.0.16, colorette@npm:^2.0.19": version: 2.0.20 resolution: "colorette@npm:2.0.20" checksum: 10/0b8de48bfa5d10afc160b8eaa2b9938f34a892530b2f7d7897e0458d9535a066e3998b49da9d21161c78225b272df19ae3a64d6df28b4c9734c0e55bbd02406f @@ -14005,10 +14032,10 @@ __metadata: languageName: node linkType: hard -"defu@npm:^6.1.4": - version: 6.1.4 - resolution: "defu@npm:6.1.4" - checksum: 10/aeffdb47300f45b4fdef1c5bd3880ac18ea7a1fd5b8a8faf8df29350ff03bf16dd34f9800205cab513d476e4c0a3783aa0cff0a433aff0ac84a67ddc4c8a2d64 +"defu@npm:^6.1.2": + version: 6.1.2 + resolution: "defu@npm:6.1.2" + checksum: 10/5704aa6ea0b503004ee25b2ce909af8e6dc7c472d2d41e293f5a879534a0a7827a37e6692e0ca0c6e8d3ef6b00651d50089be681c814832cbed98f0f206ef25b languageName: node linkType: hard @@ -14115,15 +14142,15 @@ __metadata: linkType: hard "detect-port@npm:^1.3.0": - version: 1.6.1 - resolution: "detect-port@npm:1.6.1" + version: 1.5.1 + resolution: "detect-port@npm:1.5.1" dependencies: address: "npm:^1.0.1" debug: "npm:4" bin: detect: bin/detect-port.js detect-port: bin/detect-port.js - checksum: 10/0429fa423abb15fc453face64e6ffa406e375f51f5b4421a7886962e680dc05824eae9b6ee4594ba273685c3add415ad00982b5da54802ac3de6f846173284c3 + checksum: 10/b48da9340481742547263d5d985e65d078592557863402ecf538511735e83575867e94f91fe74405ea19b61351feb99efccae7e55de9a151d5654e3417cea05b languageName: node linkType: hard @@ -15556,23 +15583,6 @@ __metadata: languageName: node linkType: hard -"execa@npm:^8.0.1": - version: 8.0.1 - resolution: "execa@npm:8.0.1" - dependencies: - cross-spawn: "npm:^7.0.3" - get-stream: "npm:^8.0.1" - human-signals: "npm:^5.0.0" - is-stream: "npm:^3.0.0" - merge-stream: "npm:^2.0.0" - npm-run-path: "npm:^5.1.0" - onetime: "npm:^6.0.0" - signal-exit: "npm:^4.1.0" - strip-final-newline: "npm:^3.0.0" - checksum: 10/d2ab5fe1e2bb92b9788864d0713f1fce9a07c4594e272c0c97bc18c90569897ab262e4ea58d27a694d288227a2e24f16f5e2575b44224ad9983b799dc7f1098d - languageName: node - linkType: hard - "executable@npm:^4.1.1": version: 4.1.1 resolution: "executable@npm:4.1.1" @@ -15868,9 +15878,9 @@ __metadata: linkType: hard "fetch-retry@npm:^5.0.2": - version: 5.0.6 - resolution: "fetch-retry@npm:5.0.6" - checksum: 10/9d64b37f9d179fecf486725ada210d169375803b731304a9500754e094a2a6aa81630d946adbb313d7f9d54457ad0d17c3ed5c115034961a719e8a65faa8b77c + version: 5.0.4 + resolution: "fetch-retry@npm:5.0.4" + checksum: 10/1c9fd7046b5b525e18cabdc34693887f0c410a8564eebf09bb8d8625d33bec4a9fa7f39660076ef99e36a77f152b233d26742be4b3b04583f41640c063152914 languageName: node linkType: hard @@ -16126,9 +16136,9 @@ __metadata: linkType: hard "flow-parser@npm:0.*": - version: 0.237.2 - resolution: "flow-parser@npm:0.237.2" - checksum: 10/8be3dd71f6838b812b6030e3a31d93b873564ab1deb0ebf060c346f5887d478510ee6c0c758ecd9ef288068c91e66f0d83fd30ae5ead674e3ea150c5589aa049 + version: 0.203.1 + resolution: "flow-parser@npm:0.203.1" + checksum: 10/7e00c89a13500b53b30e0013269f4f5e04a6a03e5f99bc91bb6fe0311fbecce1094b56c05cab35fb767bfb408af262e02e7ad1fbc47161d1709d1204bbb00fee languageName: node linkType: hard @@ -16555,9 +16565,9 @@ __metadata: linkType: hard "get-npm-tarball-url@npm:^2.0.3": - version: 2.1.0 - resolution: "get-npm-tarball-url@npm:2.1.0" - checksum: 10/02b96993ad5a04cbd0ef0577ac3cc9e2e78a7c60db6bb5e6c8fe78950fc1fc3d093314987629a2fda3083228d91a93670bde321767ca2cf89ce7f463c9e44071 + version: 2.0.3 + resolution: "get-npm-tarball-url@npm:2.0.3" + checksum: 10/8ad48a6f1126697665e12ebf053e0d1c3b15b3c4f29ea6c458387ac68d044ea1c08f0f2eb5c0fe35447fdd2da4f2fb5c9882feb5a2ea195c773f94e762c9b886 languageName: node linkType: hard @@ -16612,13 +16622,6 @@ __metadata: languageName: node linkType: hard -"get-stream@npm:^8.0.1": - version: 8.0.1 - resolution: "get-stream@npm:8.0.1" - checksum: 10/dde5511e2e65a48e9af80fea64aff11b4921b14b6e874c6f8294c50975095af08f41bfb0b680c887f28b566dd6ec2cb2f960f9d36a323359be324ce98b766e9e - languageName: node - linkType: hard - "get-symbol-description@npm:^1.0.2": version: 1.0.2 resolution: "get-symbol-description@npm:1.0.2" @@ -16677,20 +16680,19 @@ __metadata: linkType: hard "giget@npm:^1.0.0": - version: 1.2.3 - resolution: "giget@npm:1.2.3" + version: 1.1.2 + resolution: "giget@npm:1.1.2" dependencies: - citty: "npm:^0.1.6" - consola: "npm:^3.2.3" - defu: "npm:^6.1.4" - node-fetch-native: "npm:^1.6.3" - nypm: "npm:^0.3.8" - ohash: "npm:^1.1.3" - pathe: "npm:^1.1.2" - tar: "npm:^6.2.0" + colorette: "npm:^2.0.19" + defu: "npm:^6.1.2" + https-proxy-agent: "npm:^5.0.1" + mri: "npm:^1.2.0" + node-fetch-native: "npm:^1.0.2" + pathe: "npm:^1.1.0" + tar: "npm:^6.1.13" bin: giget: dist/cli.mjs - checksum: 10/85bdcf380566fc9c4299f029acbe78a706f1825912c6cea39b675d08064399988f5de30d17238246f725183ac7504e7b9d3000c417f1df7ebb52ab26c7d3ab8c + checksum: 10/f5080b18437fcd4cb92eb8bc90f69f57008460416c5a919a5d50e94889c0a5bfec641f203bd32f91b3de3058c8be48f23ab4b4f2d29f785dcb311b5f10c51bf4 languageName: node linkType: hard @@ -17015,7 +17017,7 @@ __metadata: "@grafana/prometheus": "workspace:*" "@grafana/runtime": "workspace:*" "@grafana/saga-icons": "workspace:*" - "@grafana/scenes": "npm:4.29.0" + "@grafana/scenes": "npm:^5.0.2" "@grafana/schema": "workspace:*" "@grafana/sql": "workspace:*" "@grafana/tsconfig": "npm:^1.3.0-rc1" @@ -17057,6 +17059,7 @@ __metadata: "@testing-library/react": "npm:15.0.2" "@testing-library/react-hooks": "npm:^8.0.1" "@testing-library/user-event": "npm:14.5.2" + "@types/add": "npm:^2" "@types/angular": "npm:1.8.9" "@types/angular-route": "npm:1.7.6" "@types/babel__core": "npm:^7" @@ -17314,6 +17317,7 @@ __metadata: xlsx: "https://cdn.sheetjs.com/xlsx-0.20.2/xlsx-0.20.2.tgz" yaml: "npm:^2.0.0" yargs: "npm:^17.5.1" + yarn: "npm:^1.22.22" dependenciesMeta: prettier@3.3.1: unplugged: true @@ -17989,13 +17993,6 @@ __metadata: languageName: node linkType: hard -"human-signals@npm:^5.0.0": - version: 5.0.0 - resolution: "human-signals@npm:5.0.0" - checksum: 10/30f8870d831cdcd2d6ec0486a7d35d49384996742052cee792854273fa9dd9e7d5db06bb7985d4953e337e10714e994e0302e90dc6848069171b05ec836d65b0 - languageName: node - linkType: hard - "humanize-ms@npm:^1.2.1": version: 1.2.1 resolution: "humanize-ms@npm:1.2.1" @@ -20982,8 +20979,8 @@ __metadata: linkType: hard "mdast-util-from-markdown@npm:^2.0.0": - version: 2.0.1 - resolution: "mdast-util-from-markdown@npm:2.0.1" + version: 2.0.0 + resolution: "mdast-util-from-markdown@npm:2.0.0" dependencies: "@types/mdast": "npm:^4.0.0" "@types/unist": "npm:^3.0.0" @@ -20997,7 +20994,7 @@ __metadata: micromark-util-symbol: "npm:^2.0.0" micromark-util-types: "npm:^2.0.0" unist-util-stringify-position: "npm:^4.0.0" - checksum: 10/4172759cdd8cf9990701796c5617c8b6a4bd3f9863e730bb4e9689189daec80af3122e77eed2ab09090f1a2d396c4f5754416a41769d7c49efd165a1c0a033c8 + checksum: 10/960e28a8ff3d989cc25a615d14e9a1d95d145b938dc08323ce44689be6dd052ece544d2acf5242cedb8ad6ccdc3ffe854989b7c2516c6e62f2fca42b6d11a2da languageName: node linkType: hard @@ -21621,13 +21618,6 @@ __metadata: languageName: node linkType: hard -"mimic-fn@npm:^4.0.0": - version: 4.0.0 - resolution: "mimic-fn@npm:4.0.0" - checksum: 10/995dcece15ee29aa16e188de6633d43a3db4611bcf93620e7e62109ec41c79c0f34277165b8ce5e361205049766e371851264c21ac64ca35499acb5421c2ba56 - languageName: node - linkType: hard - "min-indent@npm:^1.0.0, min-indent@npm:^1.0.1": version: 1.0.1 resolution: "min-indent@npm:1.0.1" @@ -22045,6 +22035,13 @@ __metadata: languageName: node linkType: hard +"mri@npm:^1.2.0": + version: 1.2.0 + resolution: "mri@npm:1.2.0" + checksum: 10/6775a1d2228bb9d191ead4efc220bd6be64f943ad3afd4dcb3b3ac8fc7b87034443f666e38805df38e8d047b29f910c3cc7810da0109af83e42c82c73bd3f6bc + languageName: node + linkType: hard + "mrmime@npm:^2.0.0": version: 2.0.0 resolution: "mrmime@npm:2.0.0" @@ -22151,7 +22148,7 @@ __metadata: languageName: node linkType: hard -"nano-css@npm:^5.3.1, nano-css@npm:^5.6.1": +"nano-css@npm:^5.6.1": version: 5.6.1 resolution: "nano-css@npm:5.6.1" dependencies: @@ -22254,10 +22251,10 @@ __metadata: languageName: node linkType: hard -"node-fetch-native@npm:^1.6.3": - version: 1.6.4 - resolution: "node-fetch-native@npm:1.6.4" - checksum: 10/39c4c6d0c2a4bed1444943e1647ad0d79eb6638cf159bc37dffeafd22cffcf6a998e006aa1f3dd1d9d2258db7d78dee96b44bee4ba0bbaf0440ed348794f2543 +"node-fetch-native@npm:^1.0.2": + version: 1.0.2 + resolution: "node-fetch-native@npm:1.0.2" + checksum: 10/50bf4732d8c1115f626b663d7ce066a8ef7b22786813c45e38fde1594cdc2f61a3e1f3b457d1c5a576ac5beb9369912b671002ba273493841a33b8a57b553e81 languageName: node linkType: hard @@ -22624,15 +22621,6 @@ __metadata: languageName: node linkType: hard -"npm-run-path@npm:^5.1.0": - version: 5.3.0 - resolution: "npm-run-path@npm:5.3.0" - dependencies: - path-key: "npm:^4.0.0" - checksum: 10/ae8e7a89da9594fb9c308f6555c73f618152340dcaae423e5fb3620026fefbec463618a8b761920382d666fa7a2d8d240b6fe320e8a6cdd54dc3687e2b659d25 - languageName: node - linkType: hard - "npmlog@npm:^4.1.2": version: 4.1.2 resolution: "npmlog@npm:4.1.2" @@ -22764,21 +22752,6 @@ __metadata: languageName: node linkType: hard -"nypm@npm:^0.3.8": - version: 0.3.8 - resolution: "nypm@npm:0.3.8" - dependencies: - citty: "npm:^0.1.6" - consola: "npm:^3.2.3" - execa: "npm:^8.0.1" - pathe: "npm:^1.1.2" - ufo: "npm:^1.4.0" - bin: - nypm: dist/cli.mjs - checksum: 10/fc3fcf4f2c9837d09c1b9b976c205e1538a9378b5ac40ea0d3bac0bcaeb554d0a8d17e4b42c1b8b6079fb6bf760f0d94b576084c032f862433a915739a54e327 - languageName: node - linkType: hard - "oas-kit-common@npm:^1.0.8": version: 1.0.8 resolution: "oas-kit-common@npm:1.0.8" @@ -22996,13 +22969,6 @@ __metadata: languageName: node linkType: hard -"ohash@npm:^1.1.3": - version: 1.1.3 - resolution: "ohash@npm:1.1.3" - checksum: 10/80a3528285f61588600c8c4f091a67f55fbc141f4eec4b3c30182468053042eef5a9684780e963f98a71ec068f3de56d42920c6417bf8f79ab14aeb75ac0bb39 - languageName: node - linkType: hard - "ol-ext@npm:4.0.18": version: 4.0.18 resolution: "ol-ext@npm:4.0.18" @@ -23070,15 +23036,6 @@ __metadata: languageName: node linkType: hard -"onetime@npm:^6.0.0": - version: 6.0.0 - resolution: "onetime@npm:6.0.0" - dependencies: - mimic-fn: "npm:^4.0.0" - checksum: 10/0846ce78e440841335d4e9182ef69d5762e9f38aa7499b19f42ea1c4cd40f0b4446094c455c713f9adac3f4ae86f613bb5e30c99e52652764d06a89f709b3788 - languageName: node - linkType: hard - "open@npm:^10.0.3": version: 10.0.3 resolution: "open@npm:10.0.3" @@ -23568,13 +23525,6 @@ __metadata: languageName: node linkType: hard -"path-key@npm:^4.0.0": - version: 4.0.0 - resolution: "path-key@npm:4.0.0" - checksum: 10/8e6c314ae6d16b83e93032c61020129f6f4484590a777eed709c4a01b50e498822b00f76ceaf94bc64dbd90b327df56ceadce27da3d83393790f1219e07721d7 - languageName: node - linkType: hard - "path-parse@npm:^1.0.7": version: 1.0.7 resolution: "path-parse@npm:1.0.7" @@ -23645,10 +23595,10 @@ __metadata: languageName: node linkType: hard -"pathe@npm:^1.1.2": - version: 1.1.2 - resolution: "pathe@npm:1.1.2" - checksum: 10/f201d796351bf7433d147b92c20eb154a4e0ea83512017bf4ec4e492a5d6e738fb45798be4259a61aa81270179fce11026f6ff0d3fa04173041de044defe9d80 +"pathe@npm:^1.1.0": + version: 1.1.0 + resolution: "pathe@npm:1.1.0" + checksum: 10/7cd4e00d9991a2454cccc575fd0ebdd0fe0caf257e5a6690af542d41c63e4d7033e580677395c54e0e4addbd9e297c0ef4e5de02906decc93b48c1a58a1acb0c languageName: node linkType: hard @@ -23820,11 +23770,11 @@ __metadata: linkType: hard "polished@npm:^4.2.2": - version: 4.3.1 - resolution: "polished@npm:4.3.1" + version: 4.2.2 + resolution: "polished@npm:4.2.2" dependencies: "@babel/runtime": "npm:^7.17.8" - checksum: 10/0902fe2eb16aecde1587a00efee7db8081b1331ac7bcfb6e61214d266388723a84858d732ad9395028e0aecd2bb8d0c39cc03d14b4c24c22329a0e40c38141eb + checksum: 10/da71b15c1e1d98b7f55e143bbf9ebb1b0934286c74c333522e571e52f89e42a61d7d44c5b4f941dc927355c7ae09780877aeb8f23707376fa9f006ab861e758b languageName: node linkType: hard @@ -25786,31 +25736,6 @@ __metadata: languageName: node linkType: hard -"react-use@npm:17.4.0": - version: 17.4.0 - resolution: "react-use@npm:17.4.0" - dependencies: - "@types/js-cookie": "npm:^2.2.6" - "@xobotyi/scrollbar-width": "npm:^1.9.5" - copy-to-clipboard: "npm:^3.3.1" - fast-deep-equal: "npm:^3.1.3" - fast-shallow-equal: "npm:^1.0.0" - js-cookie: "npm:^2.2.1" - nano-css: "npm:^5.3.1" - react-universal-interface: "npm:^0.6.2" - resize-observer-polyfill: "npm:^1.5.1" - screenfull: "npm:^5.1.0" - set-harmonic-interval: "npm:^1.0.1" - throttle-debounce: "npm:^3.0.1" - ts-easing: "npm:^0.2.0" - tslib: "npm:^2.1.0" - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - checksum: 10/98566c4817b00251107824743ea9dff41f167b548bd5f249f6eb9e2ec09388a2de1e89988e4432cead3f8aa83cf706e0255db8a20c0615768c670751973d2761 - languageName: node - linkType: hard - "react-use@npm:17.5.0, react-use@npm:^17.4.2": version: 17.5.0 resolution: "react-use@npm:17.5.0" @@ -25857,16 +25782,6 @@ __metadata: languageName: node linkType: hard -"react-virtualized-auto-sizer@npm:1.0.7": - version: 1.0.7 - resolution: "react-virtualized-auto-sizer@npm:1.0.7" - peerDependencies: - react: ^15.3.0 || ^16.0.0-alpha || ^17.0.0 || ^18.0.0-rc - react-dom: ^15.3.0 || ^16.0.0-alpha || ^17.0.0 || ^18.0.0-rc - checksum: 10/a16d8ac11a0efa20d44f36a5cf3854027895b806363a409f2ddc07ff92bfc92aaf5b8eee21f3e1b153cee2273db5e5383b6334d4b530d934ed08808ecfb45b9f - languageName: node - linkType: hard - "react-window-infinite-loader@npm:1.0.9": version: 1.0.9 resolution: "react-window-infinite-loader@npm:1.0.9" @@ -26069,15 +25984,15 @@ __metadata: linkType: hard "recast@npm:^0.23.3, recast@npm:^0.23.5": - version: 0.23.9 - resolution: "recast@npm:0.23.9" + version: 0.23.7 + resolution: "recast@npm:0.23.7" dependencies: ast-types: "npm:^0.16.1" esprima: "npm:~4.0.0" source-map: "npm:~0.6.1" tiny-invariant: "npm:^1.3.3" tslib: "npm:^2.0.1" - checksum: 10/d60584be179d81a82fbe58b5bbe009aa42831ee114a21a3e3a22bda91334e0b8a1a4610dca8ecb7f9ea1426da4febc08134d3003085ad6ecee478d1808eb8796 + checksum: 10/f9f6436a8c7d2dcdaab81314a79094ad7079838988e008af8a07bf05f7aca5c13d2830f4f5b076c58633b6857260fa9f744fd24be8934de6bb8bee3961b7bd3c languageName: node linkType: hard @@ -28015,9 +27930,9 @@ __metadata: linkType: hard "stream-shift@npm:^1.0.0": - version: 1.0.3 - resolution: "stream-shift@npm:1.0.3" - checksum: 10/a24c0a3f66a8f9024bd1d579a533a53be283b4475d4e6b4b3211b964031447bdf6532dd1f3c2b0ad66752554391b7c62bd7ca4559193381f766534e723d50242 + version: 1.0.1 + resolution: "stream-shift@npm:1.0.1" + checksum: 10/59b82b44b29ec3699b5519a49b3cedcc6db58c72fb40c04e005525dfdcab1c75c4e0c180b923c380f204bed78211b9bad8faecc7b93dece4d004c3f6ec75737b languageName: node linkType: hard @@ -28225,13 +28140,6 @@ __metadata: languageName: node linkType: hard -"strip-final-newline@npm:^3.0.0": - version: 3.0.0 - resolution: "strip-final-newline@npm:3.0.0" - checksum: 10/23ee263adfa2070cd0f23d1ac14e2ed2f000c9b44229aec9c799f1367ec001478469560abefd00c5c99ee6f0b31c137d53ec6029c53e9f32a93804e18c201050 - languageName: node - linkType: hard - "strip-indent@npm:^3.0.0": version: 3.0.0 resolution: "strip-indent@npm:3.0.0" @@ -28609,7 +28517,7 @@ __metadata: languageName: node linkType: hard -"tar@npm:6.2.1, tar@npm:^6.0.2, tar@npm:^6.1.11, tar@npm:^6.1.2, tar@npm:^6.2.0": +"tar@npm:6.2.1, tar@npm:^6.0.2, tar@npm:^6.1.11, tar@npm:^6.1.13, tar@npm:^6.1.2": version: 6.2.1 resolution: "tar@npm:6.2.1" dependencies: @@ -28936,9 +28844,9 @@ __metadata: linkType: hard "tocbot@npm:^4.20.1": - version: 4.28.2 - resolution: "tocbot@npm:4.28.2" - checksum: 10/8b403d9c87b9a15d816f44ad6350325db4cc573e1dc0a50fa7921531225e83464909897589e109ad5922b60b276ac9bcea7eeae3ea774df5080ceda65eca3425 + version: 4.21.1 + resolution: "tocbot@npm:4.21.1" + checksum: 10/96ea72a9a36719595aebbfc79c6976c7f0e9a83ee8dfa2f0ce9f0a5ad744ee9a913d1d68d1e1c896e49ee771c21fe2c13b3275c26e545d100214178f0b110a49 languageName: node linkType: hard @@ -29336,9 +29244,9 @@ __metadata: linkType: hard "type-fest@npm:^4.18.2, type-fest@npm:^4.9.0": - version: 4.19.0 - resolution: "type-fest@npm:4.19.0" - checksum: 10/746294c1f463913425a4b40e9160ed1ea5cd1f877587789cbd42e01c6b67be9c55daf75e0d4787da584b98a09487df69e89b44c934d497e5d035800e115dc1e9 + version: 4.18.3 + resolution: "type-fest@npm:4.18.3" + checksum: 10/eb750920d0ef3639177f581edd6489d972c5c5827abb602a9c9662889aad148a7d558257e36c563f1beb81a2e417faec52ecec9799b28531d8335856f91e6dff languageName: node linkType: hard @@ -29492,13 +29400,6 @@ __metadata: languageName: node linkType: hard -"ufo@npm:^1.4.0": - version: 1.5.3 - resolution: "ufo@npm:1.5.3" - checksum: 10/2b30dddd873c643efecdb58cfe457183cd4d95937ccdacca6942c697b87a2c578232c25a5149fda85436696bf0fdbc213bf2b220874712bc3e58c0fb00a2c950 - languageName: node - linkType: hard - "uglify-js@npm:^3.1.4": version: 3.17.4 resolution: "uglify-js@npm:3.17.4" @@ -29728,14 +29629,14 @@ __metadata: linkType: hard "unplugin@npm:^1.3.1": - version: 1.10.1 - resolution: "unplugin@npm:1.10.1" + version: 1.5.0 + resolution: "unplugin@npm:1.5.0" dependencies: - acorn: "npm:^8.11.3" - chokidar: "npm:^3.6.0" + acorn: "npm:^8.10.0" + chokidar: "npm:^3.5.3" webpack-sources: "npm:^3.2.3" - webpack-virtual-modules: "npm:^0.6.1" - checksum: 10/d9819fad8a177c080f7f2b80744d633101935a8a6cc26b42e6a46648cccc1c5de83b7763233d56e11af53f34e6c5074816262897c9048a31e5d697bef5bb57e7 + webpack-virtual-modules: "npm:^0.5.0" + checksum: 10/4a867f2630b932c34983a4b7c741624789752677ea1a6e3e73ca68a716e7214d50d7855fb4d0e02b4a58f81aaee2def021d54365929be03a57c4b25911ae89c1 languageName: node linkType: hard @@ -30460,13 +30361,6 @@ __metadata: languageName: node linkType: hard -"webpack-virtual-modules@npm:^0.6.1": - version: 0.6.2 - resolution: "webpack-virtual-modules@npm:0.6.2" - checksum: 10/d9a0d035f7ec0c7f1055aaf88bfe48b7f96458043916a1b2926d9012fd61de3810a6b768e31a8cd4b3c84a9b6d55824361a9dd20aaf9f5ccfb6f017af216a178 - languageName: node - linkType: hard - "webpack@npm:5, webpack@npm:5.91.0, webpack@npm:^5": version: 5.91.0 resolution: "webpack@npm:5.91.0" @@ -30809,8 +30703,8 @@ __metadata: linkType: hard "ws@npm:^8.16.0, ws@npm:^8.2.3, ws@npm:^8.9.0": - version: 8.17.0 - resolution: "ws@npm:8.17.0" + version: 8.16.0 + resolution: "ws@npm:8.16.0" peerDependencies: bufferutil: ^4.0.1 utf-8-validate: ">=5.0.2" @@ -30819,7 +30713,7 @@ __metadata: optional: true utf-8-validate: optional: true - checksum: 10/5e1dcb0ae70c6e2f158f5b446e0a72a2cd335b07aba73ee1872e9bae1285382286a10e53ed479db21bdd690a5dfd05641a768611ebb236253c62fefa43ef58b4 + checksum: 10/7c511c59e979bd37b63c3aea4a8e4d4163204f00bd5633c053b05ed67835481995f61a523b0ad2b603566f9a89b34cb4965cb9fab9649fbfebd8f740cea57f17 languageName: node linkType: hard @@ -30969,6 +30863,16 @@ __metadata: languageName: node linkType: hard +"yarn@npm:^1.22.22": + version: 1.22.22 + resolution: "yarn@npm:1.22.22" + bin: + yarn: bin/yarn.js + yarnpkg: bin/yarn.js + checksum: 10/98d80230beaa81f186b2256dff5ef9dce2dd6073c94299209f8e562da9018cff4275c95c27c788aaa4a9c3c186ea8a9aee9a5b83570696a4c8a9d1fff2d4da3a + languageName: node + linkType: hard + "yauzl@npm:^2.10.0": version: 2.10.0 resolution: "yauzl@npm:2.10.0"