From 3574c51b248cceab6c75758a9e20ed926f6ac30f Mon Sep 17 00:00:00 2001 From: Benjamin Janssens Date: Thu, 26 Sep 2024 15:36:34 +0200 Subject: [PATCH 001/161] feat: add level config to catalog-backend-module-bitbucket-cloud plugin Signed-off-by: Benjamin Janssens --- .../config.d.ts | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/plugins/catalog-backend-module-bitbucket-cloud/config.d.ts b/plugins/catalog-backend-module-bitbucket-cloud/config.d.ts index 1051976b24..6ba4cb135d 100644 --- a/plugins/catalog-backend-module-bitbucket-cloud/config.d.ts +++ b/plugins/catalog-backend-module-bitbucket-cloud/config.d.ts @@ -59,6 +59,14 @@ export interface Config { * (Optional) TaskScheduleDefinition for the discovery. */ schedule?: SchedulerServiceTaskScheduleDefinitionConfig; + /** + * (Optional) On what level discovery should take place, affecting Bitbucket Cloud API limits. + * + * Possible values: + * - `workspace` (default): 1 API call per workspace, limited to 900 repositories per workspace. + * - `project`: 1 API call per project, limited to 900 repositories per project. + */ + level?: 'workspace' | 'project'; } | { [name: string]: { @@ -92,6 +100,14 @@ export interface Config { * (Optional) TaskScheduleDefinition for the discovery. */ schedule?: SchedulerServiceTaskScheduleDefinitionConfig; + /** + * (Optional) On what level discovery should take place, affecting Bitbucket Cloud API limits. + * + * Possible values: + * - `workspace` (default): 1 API call per workspace, limited to 900 repositories per workspace. + * - `project`: 1 API call per project, limited to 900 repositories per project. + */ + level?: 'workspace' | 'project'; }; }; }; From 8dbc4ab48246580d2d0ceefa587b5deede7e8507 Mon Sep 17 00:00:00 2001 From: Benjamin Janssens Date: Thu, 26 Sep 2024 16:03:22 +0200 Subject: [PATCH 002/161] chore: add level config to BitbucketCloudEntityProviderConfig Signed-off-by: Benjamin Janssens --- .../src/providers/BitbucketCloudEntityProviderConfig.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProviderConfig.ts b/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProviderConfig.ts index 5a806d2e0b..1326c53e29 100644 --- a/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProviderConfig.ts +++ b/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProviderConfig.ts @@ -32,6 +32,7 @@ export type BitbucketCloudEntityProviderConfig = { repoSlug?: RegExp; }; schedule?: SchedulerServiceTaskScheduleDefinition; + level?: 'workspace' | 'project'; }; export function readProviderConfigs( From a1219e94cb2eb103e8cbed663a17fe0f4f37e487 Mon Sep 17 00:00:00 2001 From: Benjamin Janssens Date: Fri, 27 Sep 2024 11:11:12 +0200 Subject: [PATCH 003/161] feat: implement project-level Bitbucket Cloud discovery Signed-off-by: Benjamin Janssens --- .../providers/BitbucketCloudEntityProvider.ts | 34 ++++++++++++++++--- 1 file changed, 30 insertions(+), 4 deletions(-) diff --git a/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProvider.ts b/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProvider.ts index 6b19bea4f2..6826804053 100644 --- a/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProvider.ts +++ b/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProvider.ts @@ -207,7 +207,7 @@ export class BitbucketCloudEntityProvider implements EntityProvider { logger.info('Discovering catalog files in Bitbucket Cloud repositories'); - const targets = await this.findCatalogFiles(); + const targets = await this.findCatalogFiles(this.config.level); const entities = this.toDeferredEntities(targets); await this.connection.applyMutation({ @@ -271,7 +271,7 @@ export class BitbucketCloudEntityProvider implements EntityProvider { // Hence, we will just trigger a refresh for catalog file(s) within the repository // if we get notified about changes there. - const targets = await this.findCatalogFiles(repoSlug); + const targets = await this.findCatalogFiles('workspace', repoSlug); const { token } = await this.tokenManager!.getToken(); const existing = await this.findExistingLocations(repoUrl, token); @@ -334,6 +334,7 @@ export class BitbucketCloudEntityProvider implements EntityProvider { } private async findCatalogFiles( + level: 'workspace' | 'project' = 'workspace', repoSlug?: string, ): Promise { const workspace = this.config.workspace; @@ -343,6 +344,32 @@ export class BitbucketCloudEntityProvider implements EntityProvider { catalogPath.lastIndexOf('/') + 1, ); + const optRepoFilter = repoSlug ? ` repo:${repoSlug}` : ''; + const query = `"${catalogFilename}" path:${catalogPath}${optRepoFilter}`; + + if (level === 'project') { + const projects = this.client + .listProjectsByWorkspace(workspace) + .iterateResults(); + + const results: IngestionTarget[] = []; + + for await (const project of projects) { + const projectQuery = `${query} project:${project.key}`; + const result = await this.processQuery(workspace, projectQuery); + results.push(...result); + } + + return results; + } + + return this.processQuery(workspace, query); + } + + private async processQuery( + workspace: string, + query: string, + ): Promise { // load all fields relevant for creating refs later, but not more const fields = [ // exclude code/content match details @@ -358,8 +385,7 @@ export class BitbucketCloudEntityProvider implements EntityProvider { // ...except the one we need '+values.file.commit.repository.links.html.href', ].join(','); - const optRepoFilter = repoSlug ? ` repo:${repoSlug}` : ''; - const query = `"${catalogFilename}" path:${catalogPath}${optRepoFilter}`; + const searchResults = this.client .searchCode(workspace, query, { fields }) .iterateResults(); From bcb31c766cf689e0d8806f5154dd7729b461f5a2 Mon Sep 17 00:00:00 2001 From: Benjamin Janssens Date: Fri, 27 Sep 2024 12:09:00 +0200 Subject: [PATCH 004/161] test: add tests; fix config Signed-off-by: Benjamin Janssens --- .../BitbucketCloudEntityProvider.test.ts | 192 ++++++++++++++++++ .../providers/BitbucketCloudEntityProvider.ts | 2 +- .../BitbucketCloudEntityProviderConfig.ts | 9 +- 3 files changed, 201 insertions(+), 2 deletions(-) diff --git a/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProvider.test.ts b/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProvider.test.ts index 262582b99a..f95cb34025 100644 --- a/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProvider.test.ts +++ b/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProvider.test.ts @@ -87,6 +87,23 @@ describe('BitbucketCloudEntityProvider', () => { }, }, }); + const projectLevelConfig = new ConfigReader({ + catalog: { + providers: { + bitbucketCloud: { + myProvider: { + workspace: 'test-ws', + catalogPath: 'catalog-custom.yaml', + filters: { + projectKey: 'test-.*', + repoSlug: 'test-.*', + }, + level: 'project', + }, + }, + }, + }, + }); const schedule = new PersistingTaskRunner(); const entityProviderConnection: EntityProviderConnection = { applyMutation: jest.fn(), @@ -419,6 +436,181 @@ describe('BitbucketCloudEntityProvider', () => { }); }); + it('apply full update on scheduled execution on project-level', async () => { + const provider = BitbucketCloudEntityProvider.fromConfig( + projectLevelConfig, + { + logger, + schedule, + }, + )[0]; + expect(provider.getProviderName()).toEqual( + 'bitbucketCloud-provider:myProvider', + ); + + server.use( + rest.get( + `https://api.bitbucket.org/2.0/workspaces/test-ws/projects`, + (_req, res, ctx) => { + const response = { + values: [ + { + key: 'TEST', + }, + ], + }; + return res(ctx.json(response)); + }, + ), + rest.get( + `https://api.bitbucket.org/2.0/workspaces/test-ws/search/code`, + (req, res, ctx) => { + const query = req.url.searchParams.get('search_query'); + if (!query || !query.includes('project:TEST')) { + return res(ctx.json({ values: [] })); + } + + const response = { + values: [ + { + // skipped as empty + path_matches: [], + file: { + type: 'commit_file', + path: 'path/to/ignored/file', + }, + }, + { + path_matches: [ + { + match: true, + text: 'catalog-custom.yaml', + }, + ], + file: { + type: 'commit_file', + path: 'custom/path/catalog-custom.yaml', + commit: { + repository: { + // skipped as no match with filter + slug: 'repo', + project: { + key: 'test-project', + }, + mainbranch: { + name: 'main', + }, + links: { + html: { + href: 'https://bitbucket.org/test-ws/repo', + }, + }, + }, + }, + }, + }, + { + path_matches: [ + { + match: true, + text: 'catalog-custom.yaml', + }, + ], + file: { + type: 'commit_file', + path: 'custom/path/catalog-custom.yaml', + commit: { + repository: { + slug: 'test-repo1', + project: { + // skipped as no match with filter + key: 'project', + }, + mainbranch: { + name: 'main', + }, + links: { + html: { + href: 'https://bitbucket.org/test-ws/test-repo1', + }, + }, + }, + }, + }, + }, + { + path_matches: [ + { + match: true, + text: 'catalog-custom.yaml', + }, + ], + file: { + type: 'commit_file', + path: 'custom/path/catalog-custom.yaml', + commit: { + repository: { + slug: 'test-repo2', + project: { + key: 'test-project', + }, + mainbranch: { + name: 'main', + }, + links: { + html: { + href: 'https://bitbucket.org/test-ws/test-repo2', + }, + }, + }, + }, + }, + }, + ], + }; + return res(ctx.json(response)); + }, + ), + ); + + await provider.connect(entityProviderConnection); + + const taskDef = schedule.getTasks()[0]; + expect(taskDef.id).toEqual('bitbucketCloud-provider:myProvider:refresh'); + await (taskDef.fn as () => Promise)(); + + const url = `https://bitbucket.org/test-ws/test-repo2/src/main/custom/path/catalog-custom.yaml`; + const expectedEntities = [ + { + entity: { + apiVersion: 'backstage.io/v1alpha1', + kind: 'Location', + metadata: { + annotations: { + 'backstage.io/managed-by-location': `url:${url}`, + 'backstage.io/managed-by-origin-location': `url:${url}`, + 'bitbucket.org/repo-url': + 'https://bitbucket.org/test-ws/test-repo2', + }, + name: 'generated-7c2e6263b6cc2d14e69fd4d029afba601ad6dc3b', + }, + spec: { + presence: 'required', + target: `${url}`, + type: 'url', + }, + }, + locationKey: 'bitbucketCloud-provider:myProvider', + }, + ]; + + expect(entityProviderConnection.applyMutation).toHaveBeenCalledTimes(1); + expect(entityProviderConnection.applyMutation).toHaveBeenCalledWith({ + type: 'full', + entities: expectedEntities, + }); + }); + it('update onRepoPush', async () => { const keptModule = createLocationEntity( 'https://bitbucket.org/test-ws/test-repo', diff --git a/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProvider.ts b/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProvider.ts index 6826804053..aac5056687 100644 --- a/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProvider.ts +++ b/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProvider.ts @@ -334,7 +334,7 @@ export class BitbucketCloudEntityProvider implements EntityProvider { } private async findCatalogFiles( - level: 'workspace' | 'project' = 'workspace', + level: 'workspace' | 'project', repoSlug?: string, ): Promise { const workspace = this.config.workspace; diff --git a/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProviderConfig.ts b/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProviderConfig.ts index 1326c53e29..12f8db1c9c 100644 --- a/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProviderConfig.ts +++ b/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProviderConfig.ts @@ -32,7 +32,7 @@ export type BitbucketCloudEntityProviderConfig = { repoSlug?: RegExp; }; schedule?: SchedulerServiceTaskScheduleDefinition; - level?: 'workspace' | 'project'; + level: 'workspace' | 'project'; }; export function readProviderConfigs( @@ -73,6 +73,12 @@ function readProviderConfig( ) : undefined; + const level = + (config.getOptionalString('level') as + | 'workspace' + | 'project' + | undefined) ?? 'workspace'; + return { id, catalogPath, @@ -84,6 +90,7 @@ function readProviderConfig( repoSlug: repoSlugPattern ? compileRegExp(repoSlugPattern) : undefined, }, schedule, + level, }; } From 51fdc5ebf502de39a4ec367b9bd3b8a55cc98c34 Mon Sep 17 00:00:00 2001 From: Benjamin Janssens Date: Fri, 27 Sep 2024 12:12:17 +0200 Subject: [PATCH 005/161] test: add config tests Signed-off-by: Benjamin Janssens --- ...BitbucketCloudEntityProviderConfig.test.ts | 21 ++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProviderConfig.test.ts b/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProviderConfig.test.ts index 7f13616586..0491971ea9 100644 --- a/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProviderConfig.test.ts +++ b/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProviderConfig.test.ts @@ -77,13 +77,17 @@ describe('readProviderConfigs', () => { }, }, }, + providerWithProjectLevel: { + workspace: 'test-ws6', + level: 'project', + }, }, }, }, }); const providerConfigs = readProviderConfigs(config); - expect(providerConfigs).toHaveLength(5); + expect(providerConfigs).toHaveLength(6); expect(providerConfigs[0]).toEqual({ id: 'providerWorkspaceOnly', workspace: 'test-ws1', @@ -92,6 +96,7 @@ describe('readProviderConfigs', () => { projectKey: undefined, repoSlug: undefined, }, + level: 'workspace', }); expect(providerConfigs[1]).toEqual({ id: 'providerCustomCatalogPath', @@ -101,6 +106,7 @@ describe('readProviderConfigs', () => { projectKey: undefined, repoSlug: undefined, }, + level: 'workspace', }); expect(providerConfigs[2]).toEqual({ id: 'providerWithProjectKeyFilter', @@ -110,6 +116,7 @@ describe('readProviderConfigs', () => { projectKey: /^projectKey.*filter$/, repoSlug: undefined, }, + level: 'workspace', }); expect(providerConfigs[3]).toEqual({ id: 'providerWithRepoSlugFilter', @@ -119,6 +126,7 @@ describe('readProviderConfigs', () => { projectKey: undefined, repoSlug: /^repoSlug.*filter$/, }, + level: 'workspace', }); expect(providerConfigs[4]).toEqual({ id: 'providerWithSchedule', @@ -134,6 +142,17 @@ describe('readProviderConfigs', () => { minutes: 3, }, }, + level: 'workspace', + }); + expect(providerConfigs[5]).toEqual({ + id: 'providerWithProjectLevel', + workspace: 'test-ws6', + catalogPath: '/catalog-info.yaml', + filters: { + projectKey: undefined, + repoSlug: undefined, + }, + level: 'project', }); }); }); From e07d64016acef6f12427e6e4aebec6117d8b2719 Mon Sep 17 00:00:00 2001 From: Benjamin Janssens Date: Fri, 27 Sep 2024 13:37:18 +0200 Subject: [PATCH 006/161] docs: add docs Signed-off-by: Benjamin Janssens --- docs/integrations/bitbucketCloud/discovery.md | 5 +++++ plugins/catalog-backend-module-bitbucket-cloud/config.d.ts | 4 ++-- .../src/providers/BitbucketCloudEntityProvider.test.ts | 2 +- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/docs/integrations/bitbucketCloud/discovery.md b/docs/integrations/bitbucketCloud/discovery.md index 6ba9c0aa1f..c533f61a2a 100644 --- a/docs/integrations/bitbucketCloud/discovery.md +++ b/docs/integrations/bitbucketCloud/discovery.md @@ -152,6 +152,7 @@ catalog: # supports ISO duration, "human duration" as used in code timeout: { minutes: 3 } workspace: workspace-name + level: workspace # default value ``` > **Note:** It is possible but certainly not recommended to skip the provider ID level. @@ -180,3 +181,7 @@ catalog: - **`workspace`**: Name of your organization account/workspace. If you want to add multiple workspaces, you need to add one provider config each. +- **`level`** _(optional)_: + `'workspace'` (default) or `'project'`. At what level discovery should take place, affecting Bitbucket Cloud API limits. + +> **Note:** By default, discovery will take place at the `workspace` level. While being the most efficient in terms of API calls to Bitbucket Cloud, discovery at the workspace level is limited to 900 repositories per workspace. If your workspace consists of more than 900 repositories, you should switch to discovery at the `project` level, shifting the limit to 900 repositories per project. diff --git a/plugins/catalog-backend-module-bitbucket-cloud/config.d.ts b/plugins/catalog-backend-module-bitbucket-cloud/config.d.ts index 6ba4cb135d..a56d3cd87a 100644 --- a/plugins/catalog-backend-module-bitbucket-cloud/config.d.ts +++ b/plugins/catalog-backend-module-bitbucket-cloud/config.d.ts @@ -60,7 +60,7 @@ export interface Config { */ schedule?: SchedulerServiceTaskScheduleDefinitionConfig; /** - * (Optional) On what level discovery should take place, affecting Bitbucket Cloud API limits. + * (Optional) At what level discovery should take place, affecting Bitbucket Cloud API limits. * * Possible values: * - `workspace` (default): 1 API call per workspace, limited to 900 repositories per workspace. @@ -101,7 +101,7 @@ export interface Config { */ schedule?: SchedulerServiceTaskScheduleDefinitionConfig; /** - * (Optional) On what level discovery should take place, affecting Bitbucket Cloud API limits. + * (Optional) At what level discovery should take place, affecting Bitbucket Cloud API limits. * * Possible values: * - `workspace` (default): 1 API call per workspace, limited to 900 repositories per workspace. diff --git a/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProvider.test.ts b/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProvider.test.ts index f95cb34025..32e8d41551 100644 --- a/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProvider.test.ts +++ b/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProvider.test.ts @@ -436,7 +436,7 @@ describe('BitbucketCloudEntityProvider', () => { }); }); - it('apply full update on scheduled execution on project-level', async () => { + it('apply full update on scheduled execution on project level', async () => { const provider = BitbucketCloudEntityProvider.fromConfig( projectLevelConfig, { From f6b4b8a55bc803fbb8f0cecc6ed3d9785268e127 Mon Sep 17 00:00:00 2001 From: Benjamin Janssens Date: Fri, 27 Sep 2024 13:39:53 +0200 Subject: [PATCH 007/161] chore: add changeset Signed-off-by: Benjamin Janssens --- .changeset/wise-snakes-sleep.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/wise-snakes-sleep.md diff --git a/.changeset/wise-snakes-sleep.md b/.changeset/wise-snakes-sleep.md new file mode 100644 index 0000000000..f0fa018c9a --- /dev/null +++ b/.changeset/wise-snakes-sleep.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-catalog-backend-module-bitbucket-cloud': patch +--- + +Added discovery level configuration to shift Bitbucket Cloud API limits From bee966456897e664499070f548e3f9cd4fd9d764 Mon Sep 17 00:00:00 2001 From: Jente Sondervorst Date: Fri, 4 Oct 2024 00:11:59 +0200 Subject: [PATCH 008/161] Added missing config.d.ts values Closes: #26958 Signed-off-by: Jente Sondervorst --- .changeset/purple-masks-swim.md | 5 +++++ plugins/kubernetes-backend/config.d.ts | 7 +++++-- 2 files changed, 10 insertions(+), 2 deletions(-) create mode 100644 .changeset/purple-masks-swim.md diff --git a/.changeset/purple-masks-swim.md b/.changeset/purple-masks-swim.md new file mode 100644 index 0000000000..d285712f64 --- /dev/null +++ b/.changeset/purple-masks-swim.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-kubernetes-backend': patch +--- + +Adapted the config.d.ts for custom k8s cluster authProvider implementations diff --git a/plugins/kubernetes-backend/config.d.ts b/plugins/kubernetes-backend/config.d.ts index d6c5f1d32b..eeef23dd15 100644 --- a/plugins/kubernetes-backend/config.d.ts +++ b/plugins/kubernetes-backend/config.d.ts @@ -22,6 +22,7 @@ export interface Config { | 'configmaps' | 'deployments' | 'limitranges' + | 'resourcequotas' | 'replicasets' | 'horizontalpodautoscalers' | 'jobs' @@ -32,7 +33,7 @@ export interface Config { | 'daemonsets' >; serviceLocatorMethod: { - type: 'multiTenant'; + type: 'multiTenant' | 'singleTenant' | 'catalogRelation'; }; clusterLocatorMethods: Array< | { @@ -55,7 +56,8 @@ export interface Config { | 'google' | 'googleServiceAccount' | 'oidc' - | 'serviceAccount'; + | 'serviceAccount' + | string; /** @visibility secret */ authMetadata?: object; /** @visibility frontend */ @@ -116,6 +118,7 @@ export interface Config { configmaps?: string; deployments?: string; limitranges?: string; + resourcequotas?: string; replicasets?: string; horizontalpodautoscalers?: string; jobs?: string; From f61d4ccc2fe2af4cc8e1bc75cae3c59a6b15ca2f Mon Sep 17 00:00:00 2001 From: Stephen Glass Date: Wed, 2 Oct 2024 23:13:55 -0400 Subject: [PATCH 009/161] add scaffolder permission for template management Signed-off-by: Stephen Glass --- .changeset/lemon-gifts-crash.md | 7 +++ plugins/scaffolder-common/report-alpha.api.md | 6 +++ plugins/scaffolder-common/src/permissions.ts | 17 +++++++ .../ScaffolderPageContextMenu.tsx | 8 ++- .../ActionsPage/ActionsPage.test.tsx | 7 ++- .../ListTasksPage/ListTaskPage.test.tsx | 6 +++ .../src/components/Router/Router.tsx | 50 +++++++++++-------- 7 files changed, 79 insertions(+), 22 deletions(-) create mode 100644 .changeset/lemon-gifts-crash.md diff --git a/.changeset/lemon-gifts-crash.md b/.changeset/lemon-gifts-crash.md new file mode 100644 index 0000000000..162b0b3817 --- /dev/null +++ b/.changeset/lemon-gifts-crash.md @@ -0,0 +1,7 @@ +--- +'@backstage/plugin-scaffolder-common': patch +'@backstage/plugin-scaffolder-react': patch +'@backstage/plugin-scaffolder': patch +--- + +Add scaffolder permission for accessing the template management features diff --git a/plugins/scaffolder-common/report-alpha.api.md b/plugins/scaffolder-common/report-alpha.api.md index 36b6a7cdb0..47ca033731 100644 --- a/plugins/scaffolder-common/report-alpha.api.md +++ b/plugins/scaffolder-common/report-alpha.api.md @@ -18,6 +18,9 @@ export const RESOURCE_TYPE_SCAFFOLDER_TEMPLATE = 'scaffolder-template'; // @alpha export const scaffolderActionPermissions: ResourcePermission<'scaffolder-action'>[]; +// @alpha +export const scaffolderManagementPermissions: BasicPermission[]; + // @alpha export const scaffolderPermissions: ( | BasicPermission @@ -40,6 +43,9 @@ export const taskCreatePermission: BasicPermission; // @alpha export const taskReadPermission: BasicPermission; +// @alpha +export const templateManagementPermission: BasicPermission; + // @alpha export const templateParameterReadPermission: ResourcePermission<'scaffolder-template'>; diff --git a/plugins/scaffolder-common/src/permissions.ts b/plugins/scaffolder-common/src/permissions.ts index c441b48d5d..a81952a568 100644 --- a/plugins/scaffolder-common/src/permissions.ts +++ b/plugins/scaffolder-common/src/permissions.ts @@ -113,6 +113,16 @@ export const taskCancelPermission = createPermission({ attributes: {}, }); +/** + * This permission is used to authorize template management features. + * + * @alpha + */ +export const templateManagementPermission = createPermission({ + name: 'scaffolder.template.management', + attributes: {}, +}); + /** * List of the scaffolder permissions that are associated with template steps and parameters. * @alpha @@ -138,6 +148,12 @@ export const scaffolderTaskPermissions = [ taskReadPermission, ]; +/** + * List of the scaffolder permissions that are associated with scaffolder management. + * @alpha + */ +export const scaffolderManagementPermissions = [templateManagementPermission]; + /** * List of all the scaffolder permissions * @alpha @@ -146,4 +162,5 @@ export const scaffolderPermissions = [ ...scaffolderTemplatePermissions, ...scaffolderActionPermissions, ...scaffolderTaskPermissions, + ...scaffolderManagementPermissions, ]; diff --git a/plugins/scaffolder-react/src/next/components/ScaffolderPageContextMenu/ScaffolderPageContextMenu.tsx b/plugins/scaffolder-react/src/next/components/ScaffolderPageContextMenu/ScaffolderPageContextMenu.tsx index 12ca4135f0..bbd3ae018e 100644 --- a/plugins/scaffolder-react/src/next/components/ScaffolderPageContextMenu/ScaffolderPageContextMenu.tsx +++ b/plugins/scaffolder-react/src/next/components/ScaffolderPageContextMenu/ScaffolderPageContextMenu.tsx @@ -27,6 +27,8 @@ import Edit from '@material-ui/icons/Edit'; import List from '@material-ui/icons/List'; import MoreVert from '@material-ui/icons/MoreVert'; import React, { useState } from 'react'; +import { usePermission } from '@backstage/plugin-permission-react'; +import { templateManagementPermission } from '@backstage/plugin-scaffolder-common/alpha'; const useStyles = makeStyles(theme => ({ button: { @@ -55,6 +57,10 @@ export function ScaffolderPageContextMenu( const classes = useStyles(); const [anchorEl, setAnchorEl] = useState(); + const { allowed: canManageTemplates } = usePermission({ + permission: templateManagementPermission, + }); + if (!onEditorClicked && !onActionsClicked) { return null; } @@ -100,7 +106,7 @@ export function ScaffolderPageContextMenu( )} - {onEditorClicked && ( + {onEditorClicked && canManageTemplates && ( diff --git a/plugins/scaffolder/src/components/ActionsPage/ActionsPage.test.tsx b/plugins/scaffolder/src/components/ActionsPage/ActionsPage.test.tsx index bf056dd3b3..acfdabac5b 100644 --- a/plugins/scaffolder/src/components/ActionsPage/ActionsPage.test.tsx +++ b/plugins/scaffolder/src/components/ActionsPage/ActionsPage.test.tsx @@ -23,6 +23,7 @@ import { renderInTestApp, TestApiRegistry } from '@backstage/test-utils'; import { ApiProvider } from '@backstage/core-app-api'; import { rootRouteRef } from '../../routes'; import { userEvent } from '@testing-library/user-event'; +import { permissionApiRef } from '@backstage/plugin-permission-react'; const scaffolderApiMock: jest.Mocked = { scaffold: jest.fn(), @@ -36,7 +37,11 @@ const scaffolderApiMock: jest.Mocked = { autocomplete: jest.fn(), }; -const apis = TestApiRegistry.from([scaffolderApiRef, scaffolderApiMock]); +const mockPermissionApi = { authorize: jest.fn() }; +const apis = TestApiRegistry.from( + [scaffolderApiRef, scaffolderApiMock], + [permissionApiRef, mockPermissionApi], +); describe('TemplatePage', () => { beforeEach(() => jest.resetAllMocks()); diff --git a/plugins/scaffolder/src/components/ListTasksPage/ListTaskPage.test.tsx b/plugins/scaffolder/src/components/ListTasksPage/ListTaskPage.test.tsx index f7f75bc3e8..ad3ca7fbde 100644 --- a/plugins/scaffolder/src/components/ListTasksPage/ListTaskPage.test.tsx +++ b/plugins/scaffolder/src/components/ListTasksPage/ListTaskPage.test.tsx @@ -30,6 +30,7 @@ import { } from '@backstage/plugin-scaffolder-react'; import { act, fireEvent } from '@testing-library/react'; import { rootRouteRef } from '../../routes'; +import { permissionApiRef } from '@backstage/plugin-permission-react'; describe('', () => { const catalogApi: jest.Mocked = { @@ -49,6 +50,8 @@ describe('', () => { listTasks: jest.fn(), } as any; + const mockPermissionApi = { authorize: jest.fn() }; + it('should render the page', async () => { const entity: Entity = { apiVersion: 'v1', @@ -72,6 +75,7 @@ describe('', () => { [catalogApiRef, catalogApi], [identityApiRef, identityApi], [scaffolderApiRef, scaffolderApiMock], + [permissionApiRef, mockPermissionApi], ]} > @@ -132,6 +136,7 @@ describe('', () => { [catalogApiRef, catalogApi], [identityApiRef, identityApi], [scaffolderApiRef, scaffolderApiMock], + [permissionApiRef, mockPermissionApi], ]} > @@ -230,6 +235,7 @@ describe('', () => { [catalogApiRef, catalogApi], [identityApiRef, identityApi], [scaffolderApiRef, scaffolderApiMock], + [permissionApiRef, mockPermissionApi], ]} > diff --git a/plugins/scaffolder/src/components/Router/Router.tsx b/plugins/scaffolder/src/components/Router/Router.tsx index 5766e3d043..4f578d9ff2 100644 --- a/plugins/scaffolder/src/components/Router/Router.tsx +++ b/plugins/scaffolder/src/components/Router/Router.tsx @@ -59,6 +59,8 @@ import { TemplateEditorPage, CustomFieldsPage, } from '../../alpha/components/TemplateEditorPage'; +import { RequirePermission } from '@backstage/plugin-permission-react'; +import { templateManagementPermission } from '@backstage/plugin-scaffolder-common/alpha'; /** * The Props for the Scaffolder Router @@ -170,29 +172,35 @@ export const Router = (props: PropsWithChildren) => { - - + + + + + } /> - - + + + + + } /> - - + + + + + } /> @@ -204,13 +212,15 @@ export const Router = (props: PropsWithChildren) => { - - + + + + + } /> Date: Mon, 14 Oct 2024 14:30:35 -0400 Subject: [PATCH 010/161] add template management permission check to dry run endpoint Signed-off-by: Stephen Glass --- .changeset/lemon-gifts-crash.md | 3 ++- plugins/scaffolder-backend/src/service/router.ts | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.changeset/lemon-gifts-crash.md b/.changeset/lemon-gifts-crash.md index 162b0b3817..6c791ee86f 100644 --- a/.changeset/lemon-gifts-crash.md +++ b/.changeset/lemon-gifts-crash.md @@ -1,7 +1,8 @@ --- '@backstage/plugin-scaffolder-common': patch '@backstage/plugin-scaffolder-react': patch +'@backstage/plugin-scaffolder-backend' '@backstage/plugin-scaffolder': patch --- -Add scaffolder permission for accessing the template management features +Add scaffolder permission `scaffolder.template.management` for accessing the template management features diff --git a/plugins/scaffolder-backend/src/service/router.ts b/plugins/scaffolder-backend/src/service/router.ts index 80406496d2..c404549a3f 100644 --- a/plugins/scaffolder-backend/src/service/router.ts +++ b/plugins/scaffolder-backend/src/service/router.ts @@ -46,6 +46,7 @@ import { taskCancelPermission, taskCreatePermission, taskReadPermission, + templateManagementPermission, templateParameterReadPermission, templateStepReadPermission, } from '@backstage/plugin-scaffolder-common/alpha'; @@ -761,7 +762,7 @@ export async function createRouter( const credentials = await httpAuth.credentials(req); await checkPermission({ credentials, - permissions: [taskCreatePermission], + permissions: [taskCreatePermission, templateManagementPermission], permissionService: permissions, }); From a3b10fa12e99b9b3e808f7f66ce779f400571107 Mon Sep 17 00:00:00 2001 From: Stephen Glass Date: Mon, 14 Oct 2024 14:35:42 -0400 Subject: [PATCH 011/161] fix changeset Signed-off-by: Stephen Glass --- .changeset/lemon-gifts-crash.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.changeset/lemon-gifts-crash.md b/.changeset/lemon-gifts-crash.md index 6c791ee86f..cd473f6c58 100644 --- a/.changeset/lemon-gifts-crash.md +++ b/.changeset/lemon-gifts-crash.md @@ -1,7 +1,7 @@ --- '@backstage/plugin-scaffolder-common': patch '@backstage/plugin-scaffolder-react': patch -'@backstage/plugin-scaffolder-backend' +'@backstage/plugin-scaffolder-backend': patch '@backstage/plugin-scaffolder': patch --- From d583c32a21c525fc9f0af4afbfebf0a9475bde62 Mon Sep 17 00:00:00 2001 From: Benjamin Janssens Date: Tue, 15 Oct 2024 14:58:01 +0200 Subject: [PATCH 012/161] fix: use concat instead of spread operator Signed-off-by: Benjamin Janssens --- .../src/providers/BitbucketCloudEntityProvider.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProvider.ts b/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProvider.ts index aac5056687..b1a8ac9234 100644 --- a/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProvider.ts +++ b/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProvider.ts @@ -352,12 +352,12 @@ export class BitbucketCloudEntityProvider implements EntityProvider { .listProjectsByWorkspace(workspace) .iterateResults(); - const results: IngestionTarget[] = []; + let results: IngestionTarget[] = []; for await (const project of projects) { const projectQuery = `${query} project:${project.key}`; const result = await this.processQuery(workspace, projectQuery); - results.push(...result); + results = results.concat(result); } return results; From a8ba32421770740252cafaf2cb8464c5a04672c0 Mon Sep 17 00:00:00 2001 From: Benjamin Janssens Date: Tue, 15 Oct 2024 15:14:41 +0200 Subject: [PATCH 013/161] style: reorder config property Signed-off-by: Benjamin Janssens --- docs/integrations/bitbucketCloud/discovery.md | 6 +++--- .../config.d.ts | 16 ++++++++-------- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/docs/integrations/bitbucketCloud/discovery.md b/docs/integrations/bitbucketCloud/discovery.md index c533f61a2a..d623a5d47c 100644 --- a/docs/integrations/bitbucketCloud/discovery.md +++ b/docs/integrations/bitbucketCloud/discovery.md @@ -146,13 +146,13 @@ catalog: filters: # optional projectKey: '^apis-.*$' # optional; RegExp repoSlug: '^service-.*$' # optional; RegExp + level: workspace # default value schedule: # same options as in SchedulerServiceTaskScheduleDefinition # supports cron, ISO duration, "human duration" as used in code frequency: { minutes: 30 } # supports ISO duration, "human duration" as used in code timeout: { minutes: 3 } workspace: workspace-name - level: workspace # default value ``` > **Note:** It is possible but certainly not recommended to skip the provider ID level. @@ -169,6 +169,8 @@ catalog: Regular expression used to filter results based on the project key. - **`repoSlug`** _(optional)_: Regular expression used to filter results based on the repo slug. +- **`level`** _(optional)_: + `'workspace'` (default) or `'project'`. At what level discovery should take place, affecting Bitbucket Cloud API limits. - **`schedule`**: - **`frequency`**: How often you want the task to run. The system does its best to avoid overlapping invocations. @@ -181,7 +183,5 @@ catalog: - **`workspace`**: Name of your organization account/workspace. If you want to add multiple workspaces, you need to add one provider config each. -- **`level`** _(optional)_: - `'workspace'` (default) or `'project'`. At what level discovery should take place, affecting Bitbucket Cloud API limits. > **Note:** By default, discovery will take place at the `workspace` level. While being the most efficient in terms of API calls to Bitbucket Cloud, discovery at the workspace level is limited to 900 repositories per workspace. If your workspace consists of more than 900 repositories, you should switch to discovery at the `project` level, shifting the limit to 900 repositories per project. diff --git a/plugins/catalog-backend-module-bitbucket-cloud/config.d.ts b/plugins/catalog-backend-module-bitbucket-cloud/config.d.ts index a56d3cd87a..d216efbd8c 100644 --- a/plugins/catalog-backend-module-bitbucket-cloud/config.d.ts +++ b/plugins/catalog-backend-module-bitbucket-cloud/config.d.ts @@ -55,10 +55,6 @@ export interface Config { */ projectKey?: string; }; - /** - * (Optional) TaskScheduleDefinition for the discovery. - */ - schedule?: SchedulerServiceTaskScheduleDefinitionConfig; /** * (Optional) At what level discovery should take place, affecting Bitbucket Cloud API limits. * @@ -67,6 +63,10 @@ export interface Config { * - `project`: 1 API call per project, limited to 900 repositories per project. */ level?: 'workspace' | 'project'; + /** + * (Optional) TaskScheduleDefinition for the discovery. + */ + schedule?: SchedulerServiceTaskScheduleDefinitionConfig; } | { [name: string]: { @@ -96,10 +96,6 @@ export interface Config { */ projectKey?: string; }; - /** - * (Optional) TaskScheduleDefinition for the discovery. - */ - schedule?: SchedulerServiceTaskScheduleDefinitionConfig; /** * (Optional) At what level discovery should take place, affecting Bitbucket Cloud API limits. * @@ -108,6 +104,10 @@ export interface Config { * - `project`: 1 API call per project, limited to 900 repositories per project. */ level?: 'workspace' | 'project'; + /** + * (Optional) TaskScheduleDefinition for the discovery. + */ + schedule?: SchedulerServiceTaskScheduleDefinitionConfig; }; }; }; From 7cc909a2c20e943dda9918109b33ff7b3e24bd2f Mon Sep 17 00:00:00 2001 From: Benjamin Janssens Date: Tue, 15 Oct 2024 17:08:16 +0200 Subject: [PATCH 014/161] refactor: remove level config Signed-off-by: Benjamin Janssens --- .changeset/wise-snakes-sleep.md | 2 +- docs/integrations/bitbucketCloud/discovery.md | 5 - .../config.d.ts | 16 -- .../BitbucketCloudEntityProvider.test.ts | 194 ++---------------- .../providers/BitbucketCloudEntityProvider.ts | 27 +-- ...BitbucketCloudEntityProviderConfig.test.ts | 21 +- .../BitbucketCloudEntityProviderConfig.ts | 8 - 7 files changed, 27 insertions(+), 246 deletions(-) diff --git a/.changeset/wise-snakes-sleep.md b/.changeset/wise-snakes-sleep.md index f0fa018c9a..ca51972f57 100644 --- a/.changeset/wise-snakes-sleep.md +++ b/.changeset/wise-snakes-sleep.md @@ -2,4 +2,4 @@ '@backstage/plugin-catalog-backend-module-bitbucket-cloud': patch --- -Added discovery level configuration to shift Bitbucket Cloud API limits +Implemented discovery on project-level to shift Bitbucket Cloud API limits diff --git a/docs/integrations/bitbucketCloud/discovery.md b/docs/integrations/bitbucketCloud/discovery.md index d623a5d47c..6ba9c0aa1f 100644 --- a/docs/integrations/bitbucketCloud/discovery.md +++ b/docs/integrations/bitbucketCloud/discovery.md @@ -146,7 +146,6 @@ catalog: filters: # optional projectKey: '^apis-.*$' # optional; RegExp repoSlug: '^service-.*$' # optional; RegExp - level: workspace # default value schedule: # same options as in SchedulerServiceTaskScheduleDefinition # supports cron, ISO duration, "human duration" as used in code frequency: { minutes: 30 } @@ -169,8 +168,6 @@ catalog: Regular expression used to filter results based on the project key. - **`repoSlug`** _(optional)_: Regular expression used to filter results based on the repo slug. -- **`level`** _(optional)_: - `'workspace'` (default) or `'project'`. At what level discovery should take place, affecting Bitbucket Cloud API limits. - **`schedule`**: - **`frequency`**: How often you want the task to run. The system does its best to avoid overlapping invocations. @@ -183,5 +180,3 @@ catalog: - **`workspace`**: Name of your organization account/workspace. If you want to add multiple workspaces, you need to add one provider config each. - -> **Note:** By default, discovery will take place at the `workspace` level. While being the most efficient in terms of API calls to Bitbucket Cloud, discovery at the workspace level is limited to 900 repositories per workspace. If your workspace consists of more than 900 repositories, you should switch to discovery at the `project` level, shifting the limit to 900 repositories per project. diff --git a/plugins/catalog-backend-module-bitbucket-cloud/config.d.ts b/plugins/catalog-backend-module-bitbucket-cloud/config.d.ts index d216efbd8c..1051976b24 100644 --- a/plugins/catalog-backend-module-bitbucket-cloud/config.d.ts +++ b/plugins/catalog-backend-module-bitbucket-cloud/config.d.ts @@ -55,14 +55,6 @@ export interface Config { */ projectKey?: string; }; - /** - * (Optional) At what level discovery should take place, affecting Bitbucket Cloud API limits. - * - * Possible values: - * - `workspace` (default): 1 API call per workspace, limited to 900 repositories per workspace. - * - `project`: 1 API call per project, limited to 900 repositories per project. - */ - level?: 'workspace' | 'project'; /** * (Optional) TaskScheduleDefinition for the discovery. */ @@ -96,14 +88,6 @@ export interface Config { */ projectKey?: string; }; - /** - * (Optional) At what level discovery should take place, affecting Bitbucket Cloud API limits. - * - * Possible values: - * - `workspace` (default): 1 API call per workspace, limited to 900 repositories per workspace. - * - `project`: 1 API call per project, limited to 900 repositories per project. - */ - level?: 'workspace' | 'project'; /** * (Optional) TaskScheduleDefinition for the discovery. */ diff --git a/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProvider.test.ts b/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProvider.test.ts index 32e8d41551..6036fa73f4 100644 --- a/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProvider.test.ts +++ b/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProvider.test.ts @@ -87,23 +87,6 @@ describe('BitbucketCloudEntityProvider', () => { }, }, }); - const projectLevelConfig = new ConfigReader({ - catalog: { - providers: { - bitbucketCloud: { - myProvider: { - workspace: 'test-ws', - catalogPath: 'catalog-custom.yaml', - filters: { - projectKey: 'test-.*', - repoSlug: 'test-.*', - }, - level: 'project', - }, - }, - }, - }, - }); const schedule = new PersistingTaskRunner(); const entityProviderConnection: EntityProviderConnection = { applyMutation: jest.fn(), @@ -291,163 +274,6 @@ describe('BitbucketCloudEntityProvider', () => { 'bitbucketCloud-provider:myProvider', ); - server.use( - rest.get( - `https://api.bitbucket.org/2.0/workspaces/test-ws/search/code`, - (_req, res, ctx) => { - const response = { - values: [ - { - // skipped as empty - path_matches: [], - file: { - type: 'commit_file', - path: 'path/to/ignored/file', - }, - }, - { - path_matches: [ - { - match: true, - text: 'catalog-custom.yaml', - }, - ], - file: { - type: 'commit_file', - path: 'custom/path/catalog-custom.yaml', - commit: { - repository: { - // skipped as no match with filter - slug: 'repo', - project: { - key: 'test-project', - }, - mainbranch: { - name: 'main', - }, - links: { - html: { - href: 'https://bitbucket.org/test-ws/repo', - }, - }, - }, - }, - }, - }, - { - path_matches: [ - { - match: true, - text: 'catalog-custom.yaml', - }, - ], - file: { - type: 'commit_file', - path: 'custom/path/catalog-custom.yaml', - commit: { - repository: { - slug: 'test-repo1', - project: { - // skipped as no match with filter - key: 'project', - }, - mainbranch: { - name: 'main', - }, - links: { - html: { - href: 'https://bitbucket.org/test-ws/test-repo1', - }, - }, - }, - }, - }, - }, - { - path_matches: [ - { - match: true, - text: 'catalog-custom.yaml', - }, - ], - file: { - type: 'commit_file', - path: 'custom/path/catalog-custom.yaml', - commit: { - repository: { - slug: 'test-repo2', - project: { - key: 'test-project', - }, - mainbranch: { - name: 'main', - }, - links: { - html: { - href: 'https://bitbucket.org/test-ws/test-repo2', - }, - }, - }, - }, - }, - }, - ], - }; - return res(ctx.json(response)); - }, - ), - ); - - await provider.connect(entityProviderConnection); - - const taskDef = schedule.getTasks()[0]; - expect(taskDef.id).toEqual('bitbucketCloud-provider:myProvider:refresh'); - await (taskDef.fn as () => Promise)(); - - const url = `https://bitbucket.org/test-ws/test-repo2/src/main/custom/path/catalog-custom.yaml`; - const expectedEntities = [ - { - entity: { - apiVersion: 'backstage.io/v1alpha1', - kind: 'Location', - metadata: { - annotations: { - 'backstage.io/managed-by-location': `url:${url}`, - 'backstage.io/managed-by-origin-location': `url:${url}`, - 'bitbucket.org/repo-url': - 'https://bitbucket.org/test-ws/test-repo2', - }, - name: 'generated-7c2e6263b6cc2d14e69fd4d029afba601ad6dc3b', - }, - spec: { - presence: 'required', - target: `${url}`, - type: 'url', - }, - }, - locationKey: 'bitbucketCloud-provider:myProvider', - }, - ]; - - expect(entityProviderConnection.applyMutation).toHaveBeenCalledTimes(1); - expect(entityProviderConnection.applyMutation).toHaveBeenCalledWith({ - type: 'full', - entities: expectedEntities, - }); - }); - - it('apply full update on scheduled execution on project level', async () => { - const provider = BitbucketCloudEntityProvider.fromConfig( - projectLevelConfig, - { - logger, - schedule, - }, - )[0]; - expect(provider.getProviderName()).toEqual( - 'bitbucketCloud-provider:myProvider', - ); - server.use( rest.get( `https://api.bitbucket.org/2.0/workspaces/test-ws/projects`, @@ -464,12 +290,7 @@ describe('BitbucketCloudEntityProvider', () => { ), rest.get( `https://api.bitbucket.org/2.0/workspaces/test-ws/search/code`, - (req, res, ctx) => { - const query = req.url.searchParams.get('search_query'); - if (!query || !query.includes('project:TEST')) { - return res(ctx.json({ values: [] })); - } - + (_req, res, ctx) => { const response = { values: [ { @@ -657,6 +478,19 @@ describe('BitbucketCloudEntityProvider', () => { })[0]; server.use( + rest.get( + `https://api.bitbucket.org/2.0/workspaces/test-ws/projects`, + (_req, res, ctx) => { + const response = { + values: [ + { + key: 'TEST', + }, + ], + }; + return res(ctx.json(response)); + }, + ), rest.get( `https://api.bitbucket.org/2.0/workspaces/test-ws/search/code`, (req, res, ctx) => { diff --git a/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProvider.ts b/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProvider.ts index b1a8ac9234..891ad14da5 100644 --- a/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProvider.ts +++ b/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProvider.ts @@ -207,7 +207,7 @@ export class BitbucketCloudEntityProvider implements EntityProvider { logger.info('Discovering catalog files in Bitbucket Cloud repositories'); - const targets = await this.findCatalogFiles(this.config.level); + const targets = await this.findCatalogFiles(); const entities = this.toDeferredEntities(targets); await this.connection.applyMutation({ @@ -271,7 +271,7 @@ export class BitbucketCloudEntityProvider implements EntityProvider { // Hence, we will just trigger a refresh for catalog file(s) within the repository // if we get notified about changes there. - const targets = await this.findCatalogFiles('workspace', repoSlug); + const targets = await this.findCatalogFiles(repoSlug); const { token } = await this.tokenManager!.getToken(); const existing = await this.findExistingLocations(repoUrl, token); @@ -334,7 +334,6 @@ export class BitbucketCloudEntityProvider implements EntityProvider { } private async findCatalogFiles( - level: 'workspace' | 'project', repoSlug?: string, ): Promise { const workspace = this.config.workspace; @@ -347,23 +346,19 @@ export class BitbucketCloudEntityProvider implements EntityProvider { const optRepoFilter = repoSlug ? ` repo:${repoSlug}` : ''; const query = `"${catalogFilename}" path:${catalogPath}${optRepoFilter}`; - if (level === 'project') { - const projects = this.client - .listProjectsByWorkspace(workspace) - .iterateResults(); + const projects = this.client + .listProjectsByWorkspace(workspace) + .iterateResults(); - let results: IngestionTarget[] = []; + let results: IngestionTarget[] = []; - for await (const project of projects) { - const projectQuery = `${query} project:${project.key}`; - const result = await this.processQuery(workspace, projectQuery); - results = results.concat(result); - } - - return results; + for await (const project of projects) { + const projectQuery = `${query} project:${project.key}`; + const result = await this.processQuery(workspace, projectQuery); + results = results.concat(result); } - return this.processQuery(workspace, query); + return results; } private async processQuery( diff --git a/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProviderConfig.test.ts b/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProviderConfig.test.ts index 0491971ea9..7f13616586 100644 --- a/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProviderConfig.test.ts +++ b/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProviderConfig.test.ts @@ -77,17 +77,13 @@ describe('readProviderConfigs', () => { }, }, }, - providerWithProjectLevel: { - workspace: 'test-ws6', - level: 'project', - }, }, }, }, }); const providerConfigs = readProviderConfigs(config); - expect(providerConfigs).toHaveLength(6); + expect(providerConfigs).toHaveLength(5); expect(providerConfigs[0]).toEqual({ id: 'providerWorkspaceOnly', workspace: 'test-ws1', @@ -96,7 +92,6 @@ describe('readProviderConfigs', () => { projectKey: undefined, repoSlug: undefined, }, - level: 'workspace', }); expect(providerConfigs[1]).toEqual({ id: 'providerCustomCatalogPath', @@ -106,7 +101,6 @@ describe('readProviderConfigs', () => { projectKey: undefined, repoSlug: undefined, }, - level: 'workspace', }); expect(providerConfigs[2]).toEqual({ id: 'providerWithProjectKeyFilter', @@ -116,7 +110,6 @@ describe('readProviderConfigs', () => { projectKey: /^projectKey.*filter$/, repoSlug: undefined, }, - level: 'workspace', }); expect(providerConfigs[3]).toEqual({ id: 'providerWithRepoSlugFilter', @@ -126,7 +119,6 @@ describe('readProviderConfigs', () => { projectKey: undefined, repoSlug: /^repoSlug.*filter$/, }, - level: 'workspace', }); expect(providerConfigs[4]).toEqual({ id: 'providerWithSchedule', @@ -142,17 +134,6 @@ describe('readProviderConfigs', () => { minutes: 3, }, }, - level: 'workspace', - }); - expect(providerConfigs[5]).toEqual({ - id: 'providerWithProjectLevel', - workspace: 'test-ws6', - catalogPath: '/catalog-info.yaml', - filters: { - projectKey: undefined, - repoSlug: undefined, - }, - level: 'project', }); }); }); diff --git a/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProviderConfig.ts b/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProviderConfig.ts index 12f8db1c9c..5a806d2e0b 100644 --- a/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProviderConfig.ts +++ b/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProviderConfig.ts @@ -32,7 +32,6 @@ export type BitbucketCloudEntityProviderConfig = { repoSlug?: RegExp; }; schedule?: SchedulerServiceTaskScheduleDefinition; - level: 'workspace' | 'project'; }; export function readProviderConfigs( @@ -73,12 +72,6 @@ function readProviderConfig( ) : undefined; - const level = - (config.getOptionalString('level') as - | 'workspace' - | 'project' - | undefined) ?? 'workspace'; - return { id, catalogPath, @@ -90,7 +83,6 @@ function readProviderConfig( repoSlug: repoSlugPattern ? compileRegExp(repoSlugPattern) : undefined, }, schedule, - level, }; } From 1b5fdd97a9347d547bb68c824c49131acee15052 Mon Sep 17 00:00:00 2001 From: Mkolaj Kaliszewski Date: Fri, 18 Oct 2024 11:23:59 +0200 Subject: [PATCH 015/161] Add support for includeArchivedRepos in catalog-backend-module-gitlab config, update docs Signed-off-by: Mkolaj Kaliszewski --- .changeset/silver-kings-sort.md | 5 + docs/integrations/gitlab/discovery.md | 3 + .../catalog-backend-module-gitlab/config.d.ts | 4 + .../src/GitLabDiscoveryProcessor.ts | 6 +- .../src/__testUtils__/handlers.ts | 35 +++- .../src/__testUtils__/mocks.ts | 162 +++++++++++++----- .../src/lib/client.test.ts | 26 +++ .../src/lib/types.ts | 4 + .../GitlabDiscoveryEntityProvider.test.ts | 29 ++++ .../GitlabDiscoveryEntityProvider.ts | 2 +- .../src/providers/config.test.ts | 49 ++++++ .../src/providers/config.ts | 4 + 12 files changed, 274 insertions(+), 55 deletions(-) create mode 100644 .changeset/silver-kings-sort.md diff --git a/.changeset/silver-kings-sort.md b/.changeset/silver-kings-sort.md new file mode 100644 index 0000000000..3cfbeb68ce --- /dev/null +++ b/.changeset/silver-kings-sort.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-catalog-backend-module-gitlab': minor +--- + +Extended the configuration with the includeArchivedRepos property, which allows including repositories when the project is archived. diff --git a/docs/integrations/gitlab/discovery.md b/docs/integrations/gitlab/discovery.md index eab590ff11..de35fbcc96 100644 --- a/docs/integrations/gitlab/discovery.md +++ b/docs/integrations/gitlab/discovery.md @@ -150,6 +150,7 @@ catalog: branch: main # Optional. Used to discover on a specific branch fallbackBranch: master # Optional. Fallback to be used if there is no default branch configured at the Gitlab repository. It is only used, if `branch` is undefined. Uses `master` as default skipForkedRepos: false # Optional. If the project is a fork, skip repository + includeArchivedRepos: false # Optional. If project is archived, include repository group: example-group # Optional. Group and subgroup (if needed) to look for repositories. If not present the whole instance will be scanned entityFilename: catalog-info.yaml # Optional. Defaults to `catalog-info.yaml` projectPattern: '[\s\S]*' # Optional. Filters found projects based on provided patter. Defaults to `[\s\S]*`, which means to not filter anything @@ -212,3 +213,5 @@ catalog: If you don't want create location object if file with component definition do not exists in project, you can set the `skipReposWithoutExactFileMatch` option. That can reduce count of request to gitlab with 404 status code. If you don't want to create location object if the project is a fork, you can set the `skipForkedRepos` option. + +If you want to create location object if the project is archived, you can set the `includeArchivedRepos` option. diff --git a/plugins/catalog-backend-module-gitlab/config.d.ts b/plugins/catalog-backend-module-gitlab/config.d.ts index e249f13d4c..ce1cda50e7 100644 --- a/plugins/catalog-backend-module-gitlab/config.d.ts +++ b/plugins/catalog-backend-module-gitlab/config.d.ts @@ -63,6 +63,10 @@ export interface Config { * (Optional) Skip forked repository */ skipForkedRepos?: boolean; + /** + * (Optional) Include archived repository + */ + includeArchivedRepos?: boolean; /** * (Optional) A list of strings containing the paths of the repositories to skip * Should be in the format group/subgroup/repo, with no leading or trailing slashes. diff --git a/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.ts b/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.ts index 01e8018845..ab31a44bbc 100644 --- a/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.ts +++ b/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.ts @@ -39,6 +39,7 @@ export class GitLabDiscoveryProcessor implements CatalogProcessor { private readonly cache: CacheService; private readonly skipReposWithoutExactFileMatch: boolean; private readonly skipForkedRepos: boolean; + private readonly includeArchivedRepos: boolean; static fromConfig( config: Config, @@ -46,6 +47,7 @@ export class GitLabDiscoveryProcessor implements CatalogProcessor { logger: LoggerService; skipReposWithoutExactFileMatch?: boolean; skipForkedRepos?: boolean; + includeArchivedRepos?: boolean; }, ): GitLabDiscoveryProcessor { const integrations = ScmIntegrations.fromConfig(config); @@ -65,6 +67,7 @@ export class GitLabDiscoveryProcessor implements CatalogProcessor { logger: LoggerService; skipReposWithoutExactFileMatch?: boolean; skipForkedRepos?: boolean; + includeArchivedRepos?: boolean; }) { this.integrations = options.integrations; this.cache = options.pluginCache; @@ -72,6 +75,7 @@ export class GitLabDiscoveryProcessor implements CatalogProcessor { this.skipReposWithoutExactFileMatch = options.skipReposWithoutExactFileMatch || false; this.skipForkedRepos = options.skipForkedRepos || false; + this.includeArchivedRepos = options.includeArchivedRepos || false; } getProcessorName(): string { @@ -105,12 +109,12 @@ export class GitLabDiscoveryProcessor implements CatalogProcessor { const lastActivity = (await this.cache.get(this.getCacheKey())) as string; const opts = { - archived: false, group, page: 1, // We check for the existence of lastActivity and only set it if it's present to ensure // that the options doesn't include the key so that the API doesn't receive an empty query parameter. ...(lastActivity && { last_activity_after: lastActivity }), + ...(!this.includeArchivedRepos && { archived: false }), }; const projects = paginated(options => client.listProjects(options), opts); diff --git a/plugins/catalog-backend-module-gitlab/src/__testUtils__/handlers.ts b/plugins/catalog-backend-module-gitlab/src/__testUtils__/handlers.ts index e49fb54465..953ade6b7c 100644 --- a/plugins/catalog-backend-module-gitlab/src/__testUtils__/handlers.ts +++ b/plugins/catalog-backend-module-gitlab/src/__testUtils__/handlers.ts @@ -37,9 +37,18 @@ const httpHandlers = [ * Project REST endpoint mocks */ - // fetch all projects in an instance - rest.get(`${apiBaseUrl}/projects`, (_, res, ctx) => { - return res(ctx.set('x-next-page', ''), ctx.json(all_projects_response)); + // fetch all projects in an instance handling archived ones + rest.get(`${apiBaseUrl}/projects`, (req, res, ctx) => { + const archived = req.url.searchParams.get('archived'); + + return res( + ctx.set('x-next-page', ''), + ctx.json( + all_projects_response.filter(p => + archived === 'false' ? !p.archived : true, + ), + ), + ); }), rest.get(`${apiBaseUrl}/projects/42`, (_, res, ctx) => { @@ -136,9 +145,13 @@ const httpGroupFindByIdDynamic = all_groups_response.map(group => { const httpGroupListDescendantProjectsById = all_groups_response.map(group => { return rest.get( `${apiBaseUrl}/groups/${group.id}/projects`, - (_, res, ctx) => { - const projectsInGroup = all_projects_response.filter(p => - p.path_with_namespace?.includes(group.name), + (req, res, ctx) => { + const archived = req.url.searchParams.get('archived'); + + const projectsInGroup = all_projects_response.filter( + p => + p.path_with_namespace?.includes(group.name) && + (archived === 'false' ? !p.archived : true), ); return res(ctx.json(projectsInGroup)); @@ -149,9 +162,13 @@ const httpGroupListDescendantProjectsById = all_groups_response.map(group => { const httpGroupListDescendantProjectsByName = all_groups_response.map(group => { return rest.get( `${apiBaseUrl}/groups/${group.name}/projects`, - (_, res, ctx) => { - const projectsInGroup = all_projects_response.filter(p => - p.path_with_namespace?.includes(group.name), + (req, res, ctx) => { + const archived = req.url.searchParams.get('archived'); + + const projectsInGroup = all_projects_response.filter( + p => + p.path_with_namespace?.includes(group.name) && + (archived === 'false' ? !p.archived : true), ); return res(ctx.json(projectsInGroup)); diff --git a/plugins/catalog-backend-module-gitlab/src/__testUtils__/mocks.ts b/plugins/catalog-backend-module-gitlab/src/__testUtils__/mocks.ts index 3087d10f11..2547015df8 100644 --- a/plugins/catalog-backend-module-gitlab/src/__testUtils__/mocks.ts +++ b/plugins/catalog-backend-module-gitlab/src/__testUtils__/mocks.ts @@ -299,6 +299,33 @@ export const config_single_integration_skip_forks: MockObject = { }, }; +export const config_single_integration_include_archived: MockObject = { + integrations: { + gitlab: [ + { + host: 'example.com', + apiBaseUrl: 'https://example.com/api/v4', + token: '1234', + }, + ], + }, + catalog: { + providers: { + gitlab: { + 'test-id': { + host: 'example.com', + group: 'group1', + includeArchivedRepos: true, + schedule: { + frequency: 'PT30M', + timeout: 'PT3M', + }, + }, + }, + }, + }, +}; + export const config_single_integration_exclude_repos: MockObject = { integrations: { gitlab: [ @@ -856,6 +883,18 @@ export const all_projects_response: GitLabProject[] = [ web_url: 'https://example.com/group1/test-repo7', path_with_namespace: 'group1/test-repo7', }, + // archived project + { + id: 8, + description: 'Project Eight Description', + name: 'test-repo8-archived', + default_branch: 'main', + path: 'test-repo8-archived', + archived: true, + last_activity_at: new Date().toString(), + web_url: 'https://example.com/group1/test-repo8-archived', + path_with_namespace: 'group1/test-repo8-archived', + }, ]; export const all_users_response: GitLabUser[] = [ @@ -1553,7 +1592,7 @@ export const push_modif_event: EventParams = { // includes only projects that have a default branch (for when the branch and fallback branch were not set in the config) export const expected_location_entities_default_branch: MockObject[] = all_projects_response - .filter(project => project.default_branch) + .filter(project => project.default_branch && !project.archived) .map(project => { const targetUrl = `https://example.com/${project.path_with_namespace}/-/blob/${project.default_branch}/catalog-info.yaml`; @@ -1583,63 +1622,98 @@ export const expected_location_entities_default_branch: MockObject[] = // includes every GitLab project that has a default branch and the fallback declared in the config export const expected_location_entities_fallback_branch: MockObject[] = - all_projects_response.map(project => { - const branch = project.default_branch || 'main'; - const targetUrl = `https://example.com/${project.path_with_namespace}/-/blob/${branch}/catalog-info.yaml`; + all_projects_response + .filter(project => !project.archived) + .map(project => { + const branch = project.default_branch || 'main'; + const targetUrl = `https://example.com/${project.path_with_namespace}/-/blob/${branch}/catalog-info.yaml`; - return { - entity: { - apiVersion: 'backstage.io/v1alpha1', - kind: 'Location', - metadata: { - annotations: { - 'backstage.io/managed-by-location': `url:${targetUrl}`, - 'backstage.io/managed-by-origin-location': `url:${targetUrl}`, + return { + entity: { + apiVersion: 'backstage.io/v1alpha1', + kind: 'Location', + metadata: { + annotations: { + 'backstage.io/managed-by-location': `url:${targetUrl}`, + 'backstage.io/managed-by-origin-location': `url:${targetUrl}`, + }, + name: locationSpecToMetadataName({ + target: targetUrl, + type: 'url', + }), }, - name: locationSpecToMetadataName({ + spec: { + presence: 'optional', target: targetUrl, type: 'url', - }), + }, }, - spec: { - presence: 'optional', - target: targetUrl, - type: 'url', - }, - }, - locationKey: 'GitlabDiscoveryEntityProvider:test-id', - }; - }); + locationKey: 'GitlabDiscoveryEntityProvider:test-id', + }; + }); // includes ONLY the projects with the branch declared in the config export const expected_location_entities_specific_branch: MockObject[] = - all_projects_response.map(project => { - const branch = 'develop'; - const targetUrl = `https://example.com/${project.path_with_namespace}/-/blob/${branch}/catalog-info.yaml`; + all_projects_response + .filter(project => !project.archived) + .map(project => { + const branch = 'develop'; + const targetUrl = `https://example.com/${project.path_with_namespace}/-/blob/${branch}/catalog-info.yaml`; - return { - entity: { - apiVersion: 'backstage.io/v1alpha1', - kind: 'Location', - metadata: { - annotations: { - 'backstage.io/managed-by-location': `url:${targetUrl}`, - 'backstage.io/managed-by-origin-location': `url:${targetUrl}`, + return { + entity: { + apiVersion: 'backstage.io/v1alpha1', + kind: 'Location', + metadata: { + annotations: { + 'backstage.io/managed-by-location': `url:${targetUrl}`, + 'backstage.io/managed-by-origin-location': `url:${targetUrl}`, + }, + name: locationSpecToMetadataName({ + target: targetUrl, + type: 'url', + }), }, - name: locationSpecToMetadataName({ + spec: { + presence: 'optional', target: targetUrl, type: 'url', - }), + }, }, - spec: { - presence: 'optional', - target: targetUrl, - type: 'url', + locationKey: 'GitlabDiscoveryEntityProvider:test-id', + }; + }); + +// includes archived and not archived projects +export const expected_location_entities_including_archived: MockObject[] = + all_projects_response + .filter(project => project.default_branch) + .map(project => { + const targetUrl = `https://example.com/${project.path_with_namespace}/-/blob/${project.default_branch}/catalog-info.yaml`; + + return { + entity: { + apiVersion: 'backstage.io/v1alpha1', + kind: 'Location', + metadata: { + annotations: { + 'backstage.io/managed-by-location': `url:${targetUrl}`, + 'backstage.io/managed-by-origin-location': `url:${targetUrl}`, + }, + name: locationSpecToMetadataName({ + target: targetUrl, + type: 'url', + }), + }, + spec: { + presence: 'optional', + target: targetUrl, + type: 'url', + }, }, - }, - locationKey: 'GitlabDiscoveryEntityProvider:test-id', - }; - }); + locationKey: 'GitlabDiscoveryEntityProvider:test-id', + }; + }); export const expected_added_location_entities: MockObject[] = added_commits.map( commit => { diff --git a/plugins/catalog-backend-module-gitlab/src/lib/client.test.ts b/plugins/catalog-backend-module-gitlab/src/lib/client.test.ts index 1eebe7d6e0..daea71060f 100644 --- a/plugins/catalog-backend-module-gitlab/src/lib/client.test.ts +++ b/plugins/catalog-backend-module-gitlab/src/lib/client.test.ts @@ -143,6 +143,31 @@ describe('GitLabClient', () => { expect(allItems).toHaveLength(expectedProjects.length); }); + it('should get not archived projects', async () => { + const client = new GitLabClient({ + config: readGitLabIntegrationConfig( + new ConfigReader(mock.config_self_managed), + ), + logger: mockServices.logger.mock(), + }); + + const archivedProjectsGen = paginated( + options => client.listProjects(options), + { archived: false }, + ); + + const expectedProjects = mock.all_projects_response.filter( + project => !project.archived, + ); + + const allItems = []; + for await (const item of archivedProjectsGen) { + allItems.push(item); + } + + expect(allItems).toHaveLength(expectedProjects.length); + }); + it('should get all projects for an instance', async () => { const client = new GitLabClient({ config: readGitLabIntegrationConfig( @@ -159,6 +184,7 @@ describe('GitLabClient', () => { for await (const project of instanceProjects) { allProjects.push(project); } + expect(allProjects).toHaveLength(mock.all_projects_response.length); }); }); diff --git a/plugins/catalog-backend-module-gitlab/src/lib/types.ts b/plugins/catalog-backend-module-gitlab/src/lib/types.ts index 423f3ff8b5..e25f9bacf4 100644 --- a/plugins/catalog-backend-module-gitlab/src/lib/types.ts +++ b/plugins/catalog-backend-module-gitlab/src/lib/types.ts @@ -232,6 +232,10 @@ export type GitlabProviderConfig = { * If the project is a fork, skip repository */ skipForkedRepos?: boolean; + /** + * If the project is archived, include repository + */ + includeArchivedRepos?: boolean; /** * List of repositories to exclude from discovery, should be the full path to the repository, e.g. `group/project` * Paths should not start or end with a slash. diff --git a/plugins/catalog-backend-module-gitlab/src/providers/GitlabDiscoveryEntityProvider.test.ts b/plugins/catalog-backend-module-gitlab/src/providers/GitlabDiscoveryEntityProvider.test.ts index e6309a8516..dd7a4f0d6d 100644 --- a/plugins/catalog-backend-module-gitlab/src/providers/GitlabDiscoveryEntityProvider.test.ts +++ b/plugins/catalog-backend-module-gitlab/src/providers/GitlabDiscoveryEntityProvider.test.ts @@ -232,6 +232,35 @@ describe('GitlabDiscoveryEntityProvider - refresh', () => { }); }); + it('should include archived projects', async () => { + const config = new ConfigReader( + mock.config_single_integration_include_archived, + ); + const schedule = new PersistingTaskRunner(); + const entityProviderConnection: EntityProviderConnection = { + applyMutation: jest.fn(), + refresh: jest.fn(), + }; + const provider = GitlabDiscoveryEntityProvider.fromConfig(config, { + logger, + schedule, + })[0]; + + await provider.connect(entityProviderConnection); + + await provider.refresh(logger); + + expect(entityProviderConnection.applyMutation).toHaveBeenCalledWith({ + type: 'full', + entities: mock.expected_location_entities_including_archived.filter( + entity => + !entity.entity.metadata.annotations[ + 'backstage.io/managed-by-location' + ].includes('awesome'), + ), + }); + }); + it('should filter repositories that are excluded', async () => { const config = new ConfigReader( mock.config_single_integration_exclude_repos, diff --git a/plugins/catalog-backend-module-gitlab/src/providers/GitlabDiscoveryEntityProvider.ts b/plugins/catalog-backend-module-gitlab/src/providers/GitlabDiscoveryEntityProvider.ts index 0ac45b93e1..66a6247295 100644 --- a/plugins/catalog-backend-module-gitlab/src/providers/GitlabDiscoveryEntityProvider.ts +++ b/plugins/catalog-backend-module-gitlab/src/providers/GitlabDiscoveryEntityProvider.ts @@ -210,10 +210,10 @@ export class GitlabDiscoveryEntityProvider implements EntityProvider { const projects = paginated( options => this.gitLabClient.listProjects(options), { - archived: false, group: this.config.group, page: 1, per_page: 50, + ...(!this.config.includeArchivedRepos && { archived: false }), }, ); diff --git a/plugins/catalog-backend-module-gitlab/src/providers/config.test.ts b/plugins/catalog-backend-module-gitlab/src/providers/config.test.ts index 4b7c73ec80..e1798df184 100644 --- a/plugins/catalog-backend-module-gitlab/src/providers/config.test.ts +++ b/plugins/catalog-backend-module-gitlab/src/providers/config.test.ts @@ -61,6 +61,7 @@ describe('config', () => { relations: [], schedule: undefined, skipForkedRepos: false, + includeArchivedRepos: false, excludeRepos: [], restrictUsersToGroup: false, includeUsersWithoutSeat: false, @@ -104,6 +105,7 @@ describe('config', () => { relations: [], schedule: undefined, skipForkedRepos: false, + includeArchivedRepos: false, excludeRepos: [], restrictUsersToGroup: false, includeUsersWithoutSeat: true, @@ -149,6 +151,51 @@ describe('config', () => { restrictUsersToGroup: false, excludeRepos: [], skipForkedRepos: true, + includeArchivedRepos: false, + includeUsersWithoutSeat: false, + }), + ); + }); + + it('valid config with includeArchivedRepos', () => { + const config = new ConfigReader({ + catalog: { + providers: { + gitlab: { + test: { + group: 'group', + host: 'host', + branch: 'not-master', + fallbackBranch: 'main', + entityFilename: 'custom-file.yaml', + includeArchivedRepos: true, + }, + }, + }, + }, + }); + + const result = readGitlabConfigs(config); + expect(result).toHaveLength(1); + result.forEach(r => + expect(r).toStrictEqual({ + id: 'test', + group: 'group', + branch: 'not-master', + fallbackBranch: 'main', + host: 'host', + catalogFile: 'custom-file.yaml', + projectPattern: /[\s\S]*/, + groupPattern: /[\s\S]*/, + userPattern: /[\s\S]*/, + orgEnabled: false, + allowInherited: false, + relations: [], + schedule: undefined, + restrictUsersToGroup: false, + excludeRepos: [], + skipForkedRepos: false, + includeArchivedRepos: true, includeUsersWithoutSeat: false, }), ); @@ -192,6 +239,7 @@ describe('config', () => { schedule: undefined, restrictUsersToGroup: false, skipForkedRepos: false, + includeArchivedRepos: false, excludeRepos: ['foo/bar', 'quz/qux'], includeUsersWithoutSeat: false, }), @@ -235,6 +283,7 @@ describe('config', () => { allowInherited: false, relations: [], skipForkedRepos: false, + includeArchivedRepos: false, restrictUsersToGroup: false, excludeRepos: [], includeUsersWithoutSeat: false, diff --git a/plugins/catalog-backend-module-gitlab/src/providers/config.ts b/plugins/catalog-backend-module-gitlab/src/providers/config.ts index dd1f6d67d7..bf59bb0d36 100644 --- a/plugins/catalog-backend-module-gitlab/src/providers/config.ts +++ b/plugins/catalog-backend-module-gitlab/src/providers/config.ts @@ -49,6 +49,9 @@ function readGitlabConfig(id: string, config: Config): GitlabProviderConfig { const skipForkedRepos: boolean = config.getOptionalBoolean('skipForkedRepos') ?? false; + + const includeArchivedRepos: boolean = + config.getOptionalBoolean('includeArchivedRepos') ?? false; const excludeRepos: string[] = config.getOptionalStringArray('excludeRepos') ?? []; @@ -78,6 +81,7 @@ function readGitlabConfig(id: string, config: Config): GitlabProviderConfig { allowInherited, relations, skipForkedRepos, + includeArchivedRepos, excludeRepos, restrictUsersToGroup, includeUsersWithoutSeat, From 42c88cd35232e0a220e450a8b9a799fe90569116 Mon Sep 17 00:00:00 2001 From: Mkolaj Kaliszewski Date: Fri, 18 Oct 2024 12:00:08 +0200 Subject: [PATCH 016/161] Build api reports Signed-off-by: Mkolaj Kaliszewski --- plugins/catalog-backend-module-gitlab/report.api.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/plugins/catalog-backend-module-gitlab/report.api.md b/plugins/catalog-backend-module-gitlab/report.api.md index 890ca29eca..e2577553d3 100644 --- a/plugins/catalog-backend-module-gitlab/report.api.md +++ b/plugins/catalog-backend-module-gitlab/report.api.md @@ -51,6 +51,7 @@ export class GitLabDiscoveryProcessor implements CatalogProcessor { logger: LoggerService; skipReposWithoutExactFileMatch?: boolean; skipForkedRepos?: boolean; + includeArchivedRepos?: boolean; }, ): GitLabDiscoveryProcessor; // (undocumented) @@ -116,6 +117,7 @@ export type GitlabProviderConfig = { orgEnabled?: boolean; schedule?: SchedulerServiceTaskScheduleDefinition; skipForkedRepos?: boolean; + includeArchivedRepos?: boolean; excludeRepos?: string[]; includeUsersWithoutSeat?: boolean; }; From 91e67c2abf0281f2fa4520fe4b6b3fcd7c47cd92 Mon Sep 17 00:00:00 2001 From: Connor Mulligan Date: Mon, 14 Oct 2024 14:41:12 -0700 Subject: [PATCH 017/161] Add Liatrio's DORA Metrics plugin to the directory Signed-off-by: Connor Mulligan --- microsite/data/plugins/dora-metrics.yaml | 10 ++++++++++ microsite/static/img/liatrio-icon.png | Bin 0 -> 33279 bytes 2 files changed, 10 insertions(+) create mode 100644 microsite/data/plugins/dora-metrics.yaml create mode 100644 microsite/static/img/liatrio-icon.png diff --git a/microsite/data/plugins/dora-metrics.yaml b/microsite/data/plugins/dora-metrics.yaml new file mode 100644 index 0000000000..8e316da990 --- /dev/null +++ b/microsite/data/plugins/dora-metrics.yaml @@ -0,0 +1,10 @@ +--- +title: DORA Metrics +author: Liatrio +authorUrl: https://github.com/liatrio +category: Observability +description: Provide a seamless way to display DORA Metrics in your developer portals. +documentation: https://github.com/liatrio/backstage-dora-plugin/tree/main +iconUrl: /img/static/liatrio-icon.png +npmPackageName: '@liatrio/backstage-dora-plugin' +addedDate: '2024-10-14' \ No newline at end of file diff --git a/microsite/static/img/liatrio-icon.png b/microsite/static/img/liatrio-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..775a5f6e6d5dc0b46cc7b0f4359a354b594d5a20 GIT binary patch literal 33279 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 literal 0 HcmV?d00001 From e6b97c576904642c562dd87c0df287d38c11feb6 Mon Sep 17 00:00:00 2001 From: Connor Mulligan Date: Mon, 14 Oct 2024 15:10:16 -0700 Subject: [PATCH 018/161] fix: update image path Signed-off-by: Connor Mulligan --- microsite/data/plugins/dora-metrics.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/microsite/data/plugins/dora-metrics.yaml b/microsite/data/plugins/dora-metrics.yaml index 8e316da990..736fa8f36a 100644 --- a/microsite/data/plugins/dora-metrics.yaml +++ b/microsite/data/plugins/dora-metrics.yaml @@ -5,6 +5,6 @@ authorUrl: https://github.com/liatrio category: Observability description: Provide a seamless way to display DORA Metrics in your developer portals. documentation: https://github.com/liatrio/backstage-dora-plugin/tree/main -iconUrl: /img/static/liatrio-icon.png +iconUrl: /img/liatrio-icon.png npmPackageName: '@liatrio/backstage-dora-plugin' addedDate: '2024-10-14' \ No newline at end of file From 20f8ff5b873399cd816d9cec6eb89c2a23a852f1 Mon Sep 17 00:00:00 2001 From: Connor Mulligan Date: Mon, 14 Oct 2024 15:24:09 -0700 Subject: [PATCH 019/161] fix: run yarn prettier Signed-off-by: Connor Mulligan --- microsite/data/plugins/dora-metrics.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/microsite/data/plugins/dora-metrics.yaml b/microsite/data/plugins/dora-metrics.yaml index 736fa8f36a..60a001af1f 100644 --- a/microsite/data/plugins/dora-metrics.yaml +++ b/microsite/data/plugins/dora-metrics.yaml @@ -7,4 +7,4 @@ description: Provide a seamless way to display DORA Metrics in your developer po documentation: https://github.com/liatrio/backstage-dora-plugin/tree/main iconUrl: /img/liatrio-icon.png npmPackageName: '@liatrio/backstage-dora-plugin' -addedDate: '2024-10-14' \ No newline at end of file +addedDate: '2024-10-14' From 869e637fbc59b94d3695adcce0dc45409454fe2a Mon Sep 17 00:00:00 2001 From: Connor Mulligan Date: Thu, 17 Oct 2024 08:50:11 -0700 Subject: [PATCH 020/161] fix: change title to Liatrio DORA metrics Signed-off-by: Connor Mulligan --- microsite/data/plugins/dora-metrics.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/microsite/data/plugins/dora-metrics.yaml b/microsite/data/plugins/dora-metrics.yaml index 60a001af1f..1831c7488f 100644 --- a/microsite/data/plugins/dora-metrics.yaml +++ b/microsite/data/plugins/dora-metrics.yaml @@ -1,5 +1,5 @@ --- -title: DORA Metrics +title: Liatrio DORA Metrics author: Liatrio authorUrl: https://github.com/liatrio category: Observability From 782cbc0fb03edd586dbf189f621a2166d7c20660 Mon Sep 17 00:00:00 2001 From: Connor Mulligan Date: Thu, 17 Oct 2024 09:06:12 -0700 Subject: [PATCH 021/161] fix: sign commit Signed-off-by: Connor Mulligan From ee6cce372a3377c594fbd3ee9a3ea88942b37172 Mon Sep 17 00:00:00 2001 From: Connor Mulligan Date: Thu, 17 Oct 2024 09:06:12 -0700 Subject: [PATCH 022/161] fix: sign commit Signed-off-by: Connor Mulligan From d77116e85990b379de79a9bf1396644258f18142 Mon Sep 17 00:00:00 2001 From: Connor Mulligan Date: Thu, 17 Oct 2024 09:06:12 -0700 Subject: [PATCH 023/161] fix: sign commit Signed-off-by: Connor Mulligan From 1c60fd6aecd4385d707691f60327a817d884f1bd Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 22 Oct 2024 22:28:36 +0000 Subject: [PATCH 024/161] fix(deps): update dependency eslint-plugin-react to v7.37.2 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 39 ++++++++++++++++++++------------------- 1 file changed, 20 insertions(+), 19 deletions(-) diff --git a/yarn.lock b/yarn.lock index 09317dd7a7..eb6f6e12d3 100644 --- a/yarn.lock +++ b/yarn.lock @@ -26196,9 +26196,9 @@ __metadata: languageName: node linkType: hard -"es-iterator-helpers@npm:^1.0.19": - version: 1.0.19 - resolution: "es-iterator-helpers@npm:1.0.19" +"es-iterator-helpers@npm:^1.0.19, es-iterator-helpers@npm:^1.1.0": + version: 1.1.0 + resolution: "es-iterator-helpers@npm:1.1.0" dependencies: call-bind: ^1.0.7 define-properties: ^1.2.1 @@ -26207,14 +26207,14 @@ __metadata: es-set-tostringtag: ^2.0.3 function-bind: ^1.1.2 get-intrinsic: ^1.2.4 - globalthis: ^1.0.3 + globalthis: ^1.0.4 has-property-descriptors: ^1.0.2 has-proto: ^1.0.3 has-symbols: ^1.0.3 internal-slot: ^1.0.7 - iterator.prototype: ^1.1.2 + iterator.prototype: ^1.1.3 safe-array-concat: ^1.1.2 - checksum: 7ae112b88359fbaf4b9d7d1d1358ae57c5138768c57ba3a8fb930393662653b0512bfd7917c15890d1471577fb012fee8b73b4465e59b331739e6ee94f961683 + checksum: 4ba3a32ab7ba05b85f0ae30604feeb8ffd801fe762e9df9577bd220a96b9eaa2e90af8e6bdc498e523051f293955e2f7d2bddd34de71e1428a1b8ff3fd961016 languageName: node linkType: hard @@ -26746,15 +26746,15 @@ __metadata: linkType: hard "eslint-plugin-react@npm:^7.28.0": - version: 7.36.1 - resolution: "eslint-plugin-react@npm:7.36.1" + version: 7.37.2 + resolution: "eslint-plugin-react@npm:7.37.2" dependencies: array-includes: ^3.1.8 array.prototype.findlast: ^1.2.5 array.prototype.flatmap: ^1.3.2 array.prototype.tosorted: ^1.1.4 doctrine: ^2.1.0 - es-iterator-helpers: ^1.0.19 + es-iterator-helpers: ^1.1.0 estraverse: ^5.3.0 hasown: ^2.0.2 jsx-ast-utils: ^2.4.1 || ^3.0.0 @@ -26769,7 +26769,7 @@ __metadata: string.prototype.repeat: ^1.0.0 peerDependencies: eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7 - checksum: bf3be414f3d639200a7d91feeaa6beec3397feed93ab22eaecef44dda37ecbd01812ed1720c72a9861fb276d3543cea69a834a66f64de3d878796fef4f4bf129 + checksum: 7f5203afee7fbe3702b27fdd2b9a3c0ccbbb47d0672f58311b9d8a08dea819c9da4a87c15e8bd508f2562f327a9d29ee8bd9cd189bf758d8dc903de5648b0bfa languageName: node linkType: hard @@ -28917,12 +28917,13 @@ __metadata: languageName: node linkType: hard -"globalthis@npm:^1.0.1, globalthis@npm:^1.0.3": - version: 1.0.3 - resolution: "globalthis@npm:1.0.3" +"globalthis@npm:^1.0.1, globalthis@npm:^1.0.3, globalthis@npm:^1.0.4": + version: 1.0.4 + resolution: "globalthis@npm:1.0.4" dependencies: - define-properties: ^1.1.3 - checksum: fbd7d760dc464c886d0196166d92e5ffb4c84d0730846d6621a39fbbc068aeeb9c8d1421ad330e94b7bca4bb4ea092f5f21f3d36077812af5d098b4dc006c998 + define-properties: ^1.2.1 + gopd: ^1.0.1 + checksum: 39ad667ad9f01476474633a1834a70842041f70a55571e8dcef5fb957980a92da5022db5430fca8aecc5d47704ae30618c0bc877a579c70710c904e9ef06108a languageName: node linkType: hard @@ -31299,16 +31300,16 @@ __metadata: languageName: node linkType: hard -"iterator.prototype@npm:^1.1.2": - version: 1.1.2 - resolution: "iterator.prototype@npm:1.1.2" +"iterator.prototype@npm:^1.1.3": + version: 1.1.3 + resolution: "iterator.prototype@npm:1.1.3" dependencies: define-properties: ^1.2.1 get-intrinsic: ^1.2.1 has-symbols: ^1.0.3 reflect.getprototypeof: ^1.0.4 set-function-name: ^2.0.1 - checksum: d8a507e2ccdc2ce762e8a1d3f4438c5669160ac72b88b648e59a688eec6bc4e64b22338e74000518418d9e693faf2a092d2af21b9ec7dbf7763b037a54701168 + checksum: 7d2a1f8bcbba7b76f72e956faaf7b25405f4de54430c9d099992e6fb9d571717c3044604e8cdfb8e624cb881337d648030ee8b1541d544af8b338835e3f47ebe languageName: node linkType: hard From 027ba79eb03668c4b35ab4dc0b89a972a5649506 Mon Sep 17 00:00:00 2001 From: Jente Sondervorst Date: Wed, 23 Oct 2024 21:53:04 +0200 Subject: [PATCH 025/161] Apply comment for string only in the config.d.ts file Signed-off-by: Jente Sondervorst --- plugins/kubernetes-backend/config.d.ts | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/plugins/kubernetes-backend/config.d.ts b/plugins/kubernetes-backend/config.d.ts index eeef23dd15..a710b8cb85 100644 --- a/plugins/kubernetes-backend/config.d.ts +++ b/plugins/kubernetes-backend/config.d.ts @@ -49,15 +49,7 @@ export interface Config { /** @visibility secret */ serviceAccountToken?: string; /** @visibility frontend */ - authProvider?: - | 'aks' - | 'aws' - | 'azure' - | 'google' - | 'googleServiceAccount' - | 'oidc' - | 'serviceAccount' - | string; + authProvider?: string; /** @visibility secret */ authMetadata?: object; /** @visibility frontend */ From 7ad7a0e9b90a65abb42b8413616560af229da66a Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 24 Oct 2024 02:18:39 +0000 Subject: [PATCH 026/161] chore(deps): update actions/cache digest to 6849a64 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/workflows/ci.yml | 4 ++-- .github/workflows/deploy_packages.yml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d450d5d186..dd705a0666 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -235,7 +235,7 @@ jobs: # Use the lower-level cache actions for the success cache, so that we can store the cache even on failed builds - name: restore backstage-cli cache - uses: actions/cache/restore@3624ceb22c1c5a301c8db4169662070a689d9ea8 # v4 + uses: actions/cache/restore@6849a6489940f00c2f30c0fb92c6274307ccb58a # v4 with: path: .cache/backstage-cli key: ${{ runner.os }}-v${{ matrix.node-version }}-backstage-cli-${{ github.run_id }} @@ -256,7 +256,7 @@ jobs: # Always save success cache even if there were failures, that way it can be used in re-triggered builds - name: save backstage-cli cache - uses: actions/cache/save@3624ceb22c1c5a301c8db4169662070a689d9ea8 # v4 + uses: actions/cache/save@6849a6489940f00c2f30c0fb92c6274307ccb58a # v4 if: always() with: path: .cache/backstage-cli diff --git a/.github/workflows/deploy_packages.yml b/.github/workflows/deploy_packages.yml index a11a19ce5e..daa5b9d4a9 100644 --- a/.github/workflows/deploy_packages.yml +++ b/.github/workflows/deploy_packages.yml @@ -94,7 +94,7 @@ jobs: run: yarn backstage-cli config:check --lax - name: backstage-cli cache - uses: actions/cache@3624ceb22c1c5a301c8db4169662070a689d9ea8 # v4 + uses: actions/cache@6849a6489940f00c2f30c0fb92c6274307ccb58a # v4 with: path: .cache/backstage-cli key: ${{ runner.os }}-v${{ matrix.node-version }}-backstage-cli-${{ github.run_id }} From 8e4bed4d0e496c8463c88be56e56ae50ef32f941 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 16 Oct 2024 12:11:53 +0000 Subject: [PATCH 027/161] fix(deps): update dependency idb-keyval to v5.1.5 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .changeset/renovate-b2c2aaf.md | 5 +++++ plugins/scaffolder/package.json | 2 +- yarn.lock | 19 ++++++++++++++----- 3 files changed, 20 insertions(+), 6 deletions(-) create mode 100644 .changeset/renovate-b2c2aaf.md diff --git a/.changeset/renovate-b2c2aaf.md b/.changeset/renovate-b2c2aaf.md new file mode 100644 index 0000000000..b6e7a8c029 --- /dev/null +++ b/.changeset/renovate-b2c2aaf.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-scaffolder': patch +--- + +Updated dependency `idb-keyval` to `5.1.5`. diff --git a/plugins/scaffolder/package.json b/plugins/scaffolder/package.json index 522220e8e8..3670fade05 100644 --- a/plugins/scaffolder/package.json +++ b/plugins/scaffolder/package.json @@ -89,7 +89,7 @@ "classnames": "^2.2.6", "git-url-parse": "^15.0.0", "humanize-duration": "^3.25.1", - "idb-keyval": "5.0.2", + "idb-keyval": "5.1.5", "json-schema": "^0.4.0", "json-schema-library": "^9.0.0", "jszip": "^3.10.1", diff --git a/yarn.lock b/yarn.lock index 22aaacbd73..d5ffe8850b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7830,7 +7830,7 @@ __metadata: classnames: ^2.2.6 git-url-parse: ^15.0.0 humanize-duration: ^3.25.1 - idb-keyval: 5.0.2 + idb-keyval: 5.1.5 json-schema: ^0.4.0 json-schema-library: ^9.0.0 jszip: ^3.10.1 @@ -29974,10 +29974,12 @@ __metadata: languageName: node linkType: hard -"idb-keyval@npm:5.0.2": - version: 5.0.2 - resolution: "idb-keyval@npm:5.0.2" - checksum: 64ce4049fcfa9ffc8ddd23897a59278bd60420bcaff88ca653c63b725f8d6228a956bd7f474cea21befedd5abdb1bc8058ca1db5a12c4145605291dadadedbf1 +"idb-keyval@npm:5.1.5": + version: 5.1.5 + resolution: "idb-keyval@npm:5.1.5" + dependencies: + safari-14-idb-fix: ^1.0.6 + checksum: 6d71d975c5392ddce934a3617b169c25d3b3204f5203d2ffa182c253515922c787292d61eb738aa25ab80fa390e541a416376a6d62a0a2fe7cf112a758f2d8d9 languageName: node linkType: hard @@ -40552,6 +40554,13 @@ __metadata: languageName: node linkType: hard +"safari-14-idb-fix@npm:^1.0.6": + version: 1.0.6 + resolution: "safari-14-idb-fix@npm:1.0.6" + checksum: 588cd632606ff0e47d64d0b71d88f9626f6187177a3187cb063a272ecb0412f7453f4e9321a9e731a1439b7830aa24f907e2338b402e1ef24e8d6a42f7ce8532 + languageName: node + linkType: hard + "safe-array-concat@npm:^1.1.2": version: 1.1.2 resolution: "safe-array-concat@npm:1.1.2" From 7912f042222d6e2080de7ebbc84ba6445e2bae38 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 24 Oct 2024 05:56:22 +0000 Subject: [PATCH 028/161] chore(deps): update actions/checkout digest to 11bd719 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/workflows/api-breaking-changes-comment.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/api-breaking-changes-comment.yml b/.github/workflows/api-breaking-changes-comment.yml index 038061adac..15b13810f5 100644 --- a/.github/workflows/api-breaking-changes-comment.yml +++ b/.github/workflows/api-breaking-changes-comment.yml @@ -90,7 +90,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4 # Identify comment to be updated - name: Find comment for API Changes From 9816f510dc9184b77e467ac648eea07ddb524bde Mon Sep 17 00:00:00 2001 From: Patrick Jungermann Date: Mon, 14 Oct 2024 19:52:54 +0200 Subject: [PATCH 029/161] fix(events,github): fixes signature validation by using raw req body Adds raw body information (body as buffer, encoding) to `RequestDetails` to support more request validation use cases. Additionally, uses the raw body to retrieve the transmitted JSON string unparsed/raw to correctly validate the signature. Previously, we re-stringified the parsed JSON payload which could lead to different JSON strings. Those differences can lead to the rejection of requests due to a mismatch in expected signature. Fixes: #26709 Relates-to: PR #26884 Co-authored-by: Christopher Diaz Signed-off-by: Patrick Jungermann --- .changeset/seven-hotels-move.md | 6 + .changeset/shiny-falcons-fly.md | 8 + .../createGithubSignatureValidator.test.ts | 9 +- .../http/createGithubSignatureValidator.ts | 6 +- .../service/eventsModuleGithubWebhook.test.ts | 9 +- .../http/createGitlabTokenValidator.test.ts | 3 +- .../service/eventsModuleGitlabWebhook.test.ts | 3 +- plugins/events-backend/package.json | 2 + .../src/service/EventsPlugin.test.ts | 6 +- .../src/service/EventsPlugin.ts | 24 +-- .../HttpPostIngressEventPublisher.test.ts | 145 ++++++++++++++++-- .../http/HttpPostIngressEventPublisher.ts | 85 ++++++++-- plugins/events-node/report.api.md | 8 +- .../src/api/http/validation/RequestDetails.ts | 16 ++ yarn.lock | 9 ++ 15 files changed, 293 insertions(+), 46 deletions(-) create mode 100644 .changeset/seven-hotels-move.md create mode 100644 .changeset/shiny-falcons-fly.md diff --git a/.changeset/seven-hotels-move.md b/.changeset/seven-hotels-move.md new file mode 100644 index 0000000000..03bb39116a --- /dev/null +++ b/.changeset/seven-hotels-move.md @@ -0,0 +1,6 @@ +--- +'@backstage/plugin-events-backend-module-github': patch +--- + +Fix the event request validation for incoming requests for GitHub webhook events +by using the raw body when verifying the signature. diff --git a/.changeset/shiny-falcons-fly.md b/.changeset/shiny-falcons-fly.md new file mode 100644 index 0000000000..899bbfbda4 --- /dev/null +++ b/.changeset/shiny-falcons-fly.md @@ -0,0 +1,8 @@ +--- +'@backstage/plugin-events-node': patch +'@backstage/plugin-events-backend-module-github': patch +'@backstage/plugin-events-backend': patch +--- + +Add raw body information to `RequestDetails` +and use the raw body when validating incoming event requests. diff --git a/plugins/events-backend-module-github/src/http/createGithubSignatureValidator.test.ts b/plugins/events-backend-module-github/src/http/createGithubSignatureValidator.test.ts index 32d67437a8..3c96c98996 100644 --- a/plugins/events-backend-module-github/src/http/createGithubSignatureValidator.test.ts +++ b/plugins/events-backend-module-github/src/http/createGithubSignatureValidator.test.ts @@ -47,8 +47,9 @@ describe('createGithubSignatureValidator', () => { }, }, }); - const payload = { test: 'payload' }; - const payloadString = JSON.stringify(payload); + const payloadString = '{"test": "payload", "score": 5.0}'; + const payload = JSON.parse(payloadString); + const payloadBuffer = Buffer.from(payloadString); const validSignature = sign({ secret, algorithm: 'sha256' }, payloadString); const requestWithSignature = async (signature: string | undefined) => { @@ -57,6 +58,10 @@ describe('createGithubSignatureValidator', () => { headers: { 'x-hub-signature-256': signature, }, + raw: { + body: payloadBuffer, + encoding: 'utf-8', + }, } as RequestDetails; }; diff --git a/plugins/events-backend-module-github/src/http/createGithubSignatureValidator.ts b/plugins/events-backend-module-github/src/http/createGithubSignatureValidator.ts index e977640ce8..87cb710697 100644 --- a/plugins/events-backend-module-github/src/http/createGithubSignatureValidator.ts +++ b/plugins/events-backend-module-github/src/http/createGithubSignatureValidator.ts @@ -48,7 +48,11 @@ export function createGithubSignatureValidator( if ( !signature || - !(await verify(secret, JSON.stringify(request.body), signature)) + !(await verify( + secret, + request.raw.body.toString(request.raw.encoding), + signature, + )) ) { context.reject({ status: 403, diff --git a/plugins/events-backend-module-github/src/service/eventsModuleGithubWebhook.test.ts b/plugins/events-backend-module-github/src/service/eventsModuleGithubWebhook.test.ts index 460022b04d..ec5ec66946 100644 --- a/plugins/events-backend-module-github/src/service/eventsModuleGithubWebhook.test.ts +++ b/plugins/events-backend-module-github/src/service/eventsModuleGithubWebhook.test.ts @@ -25,8 +25,9 @@ import { eventsModuleGithubWebhook } from './eventsModuleGithubWebhook'; describe('eventsModuleGithubWebhook', () => { const secret = 'valid-secret'; - const payload = { test: 'payload' }; - const payloadString = JSON.stringify(payload); + const payloadString = '{"test": "payload", "score": 5.0}'; + const payload = JSON.parse(payloadString); + const payloadBuffer = Buffer.from(payloadString); const validSignature = sign({ secret, algorithm: 'sha256' }, payloadString); const requestWithSignature = async (signature?: string) => { return { @@ -34,6 +35,10 @@ describe('eventsModuleGithubWebhook', () => { headers: { 'x-hub-signature-256': signature, }, + raw: { + body: payloadBuffer, + encoding: 'utf-8', + }, } as RequestDetails; }; diff --git a/plugins/events-backend-module-gitlab/src/http/createGitlabTokenValidator.test.ts b/plugins/events-backend-module-gitlab/src/http/createGitlabTokenValidator.test.ts index 33e677450e..72fee279ea 100644 --- a/plugins/events-backend-module-gitlab/src/http/createGitlabTokenValidator.test.ts +++ b/plugins/events-backend-module-gitlab/src/http/createGitlabTokenValidator.test.ts @@ -49,11 +49,10 @@ describe('createGitlabTokenValidator', () => { const requestWithToken = (token: string | undefined) => { return { - body: undefined, headers: { 'x-gitlab-token': token, }, - } as RequestDetails; + } as Partial as unknown as RequestDetails; }; it('no secret configured, throw error', async () => { diff --git a/plugins/events-backend-module-gitlab/src/service/eventsModuleGitlabWebhook.test.ts b/plugins/events-backend-module-gitlab/src/service/eventsModuleGitlabWebhook.test.ts index 9a4f4326da..d3452dd813 100644 --- a/plugins/events-backend-module-gitlab/src/service/eventsModuleGitlabWebhook.test.ts +++ b/plugins/events-backend-module-gitlab/src/service/eventsModuleGitlabWebhook.test.ts @@ -25,11 +25,10 @@ import { eventsModuleGitlabWebhook } from './eventsModuleGitlabWebhook'; describe('gitlabWebhookEventsModule', () => { const requestWithToken = (token?: string) => { return { - body: undefined, headers: { 'x-gitlab-token': token, }, - } as RequestDetails; + } as Partial as unknown as RequestDetails; }; it('should be correctly wired and set up', async () => { diff --git a/plugins/events-backend/package.json b/plugins/events-backend/package.json index e2360e5d36..f44e269900 100644 --- a/plugins/events-backend/package.json +++ b/plugins/events-backend/package.json @@ -61,6 +61,7 @@ "@backstage/plugin-events-node": "workspace:^", "@backstage/types": "workspace:^", "@types/express": "^4.17.6", + "content-type": "^1.0.5", "express": "^4.17.1", "express-promise-router": "^4.1.0", "knex": "^3.0.0", @@ -73,6 +74,7 @@ "@backstage/cli": "workspace:^", "@backstage/plugin-events-backend-test-utils": "workspace:^", "@backstage/repo-tools": "workspace:^", + "@types/content-type": "^1.1.8", "supertest": "^7.0.0" }, "configSchema": "config.d.ts" diff --git a/plugins/events-backend/src/service/EventsPlugin.test.ts b/plugins/events-backend/src/service/EventsPlugin.test.ts index 2c0befe1fd..39962afdcc 100644 --- a/plugins/events-backend/src/service/EventsPlugin.test.ts +++ b/plugins/events-backend/src/service/EventsPlugin.test.ts @@ -83,14 +83,16 @@ describe('eventsPlugin', () => { const response1 = await request(server) .post('/api/events/http/fake') + .type('application/json') .timeout(1000) - .send({ test: 'fake' }); + .send(JSON.stringify({ test: 'fake' })); expect(response1.status).toBe(202); const response2 = await request(server) .post('/api/events/http/fake-ext') + .type('application/json') .timeout(1000) - .send({ test: 'fake-ext' }); + .send(JSON.stringify({ test: 'fake-ext' })); expect(response2.status).toBe(202); expect(eventsService.published).toHaveLength(2); diff --git a/plugins/events-backend/src/service/EventsPlugin.ts b/plugins/events-backend/src/service/EventsPlugin.ts index 10af3798ec..89f50d835b 100644 --- a/plugins/events-backend/src/service/EventsPlugin.ts +++ b/plugins/events-backend/src/service/EventsPlugin.ts @@ -76,21 +76,21 @@ export const eventsPlugin = createBackendPlugin({ config: coreServices.rootConfig, events: eventsServiceRef, database: coreServices.database, + httpAuth: coreServices.httpAuth, + httpRouter: coreServices.httpRouter, + lifecycle: coreServices.lifecycle, logger: coreServices.logger, scheduler: coreServices.scheduler, - lifecycle: coreServices.lifecycle, - httpAuth: coreServices.httpAuth, - router: coreServices.httpRouter, }, async init({ config, events, database, + httpAuth, + httpRouter, + lifecycle, logger, scheduler, - lifecycle, - httpAuth, - router, }) { const ingresses = Object.fromEntries( extensionPoint.httpPostIngresses.map(ingress => [ @@ -108,18 +108,22 @@ export const eventsPlugin = createBackendPlugin({ const eventsRouter = Router(); http.bind(eventsRouter); - router.use( + // MUST be registered *before* the event bus router. + // Otherwise, it would already make use of `express.json()` + // that is used there as part of the middleware stack. + httpRouter.use(eventsRouter); + + httpRouter.use( await createEventBusRouter({ database, + lifecycle, logger, httpAuth, scheduler, - lifecycle, }), ); - router.use(eventsRouter); - router.addAuthPolicy({ + httpRouter.addAuthPolicy({ allow: 'unauthenticated', path: '/http', }); diff --git a/plugins/events-backend/src/service/http/HttpPostIngressEventPublisher.test.ts b/plugins/events-backend/src/service/http/HttpPostIngressEventPublisher.test.ts index 2bffa4e511..32a24de169 100644 --- a/plugins/events-backend/src/service/http/HttpPostIngressEventPublisher.test.ts +++ b/plugins/events-backend/src/service/http/HttpPostIngressEventPublisher.test.ts @@ -50,22 +50,25 @@ describe('HttpPostIngressEventPublisher', () => { const notFoundResponse = await request(app) .post('/http/unknown') + .type('application/json') .timeout(1000) - .send({ test: 'data' }); + .send(JSON.stringify({ test: 'data' })); expect(notFoundResponse.status).toBe(404); const response1 = await request(app) .post('/http/testA') + .type('application/json') .set('X-Custom-Header', 'test-value') .timeout(1000) - .send({ testA: 'data' }); + .send(JSON.stringify({ testA: 'data' })); expect(response1.status).toBe(202); const response2 = await request(app) .post('/http/testB') + .type('application/json') .set('X-Custom-Header', 'test-value') .timeout(1000) - .send({ testB: 'data' }); + .send(JSON.stringify({ testB: 'data' })); expect(response2.status).toBe(202); expect(events.published).toHaveLength(2); @@ -87,6 +90,124 @@ describe('HttpPostIngressEventPublisher', () => { ); }); + it('no raw body', async () => { + const config = new ConfigReader({ + events: { + http: { + topics: ['testA'], + }, + }, + }); + + const router = Router(); + router.use(express.json()); // will prevent the raw body from being available + const app = express().use(router); + const events = new TestEventsService(); + + const publisher = HttpPostIngressEventPublisher.fromConfig({ + config, + events, + logger, + }); + publisher.bind(router); + + const response = await request(app) + .post('/http/testA') + .type('application/json; charset=utf-8') + .timeout(1000) + .send(JSON.stringify({ testA: 'data' })); + expect(response.status).toBe(500); + expect(response.body).toEqual( + expect.objectContaining({ + error: { + message: + 'Failed to retrieve raw body from incoming event for topic testA; not a buffer: object', + name: 'Error', + }, + request: { method: 'POST', url: '/testA' }, + response: { statusCode: 500 }, + }), + ); + }); + + it('invalid charset', async () => { + const config = new ConfigReader({ + events: { + http: { + topics: ['testA'], + }, + }, + }); + + const router = Router(); + const app = express().use(router); + const events = new TestEventsService(); + + const publisher = HttpPostIngressEventPublisher.fromConfig({ + config, + events, + logger, + }); + publisher.bind(router); + + const response = await request(app) + .post('/http/testA') + .type('application/json; charset=invalid') + .timeout(1000) + .send(JSON.stringify({ testA: 'data' })); + expect(response.status).toBe(415); + expect(response.body).toEqual( + expect.objectContaining({ + error: { + message: 'Unsupported charset: invalid', + name: 'UnsupportedCharsetError', + statusCode: 415, + }, + request: { method: 'POST', url: '/testA' }, + response: { statusCode: 415 }, + }), + ); + }); + + it('non-JSON media type', async () => { + const config = new ConfigReader({ + events: { + http: { + topics: ['testA'], + }, + }, + }); + + const router = Router(); + const app = express().use(router); + const events = new TestEventsService(); + + const publisher = HttpPostIngressEventPublisher.fromConfig({ + config, + events, + logger, + }); + publisher.bind(router); + + const response = await request(app) + .post('/http/testA') + .type('text/plain') + .timeout(1000) + .send('Textual information'); + expect(response.status).toBe(415); + expect(response.body).toEqual( + expect.objectContaining({ + error: { + message: 'Unsupported media type: text/plain', + name: 'UnsupportedMediaTypeError', + statusCode: 415, + }, + request: { method: 'POST', url: '/testA' }, + response: { statusCode: 415 }, + }), + ); + }); + it('with validator', async () => { const config = new ConfigReader({ events: { @@ -149,43 +270,49 @@ describe('HttpPostIngressEventPublisher', () => { const response1 = await request(app) .post('/http/testA') + .type('application/json') .timeout(1000) - .send({ test: 'data' }); + .send(JSON.stringify({ test: 'data' })); expect(response1.status).toBe(202); const response2 = await request(app) .post('/http/testB') + .type('application/json') .timeout(1000) - .send({ test: 'data' }); + .send(JSON.stringify({ test: 'data' })); expect(response2.status).toBe(400); expect(response2.body).toEqual({ message: 'wrong signature' }); const response3 = await request(app) .post('/http/testB') + .type('application/json') .set('X-Test-Signature', 'wrong') .timeout(1000) - .send({ test: 'data' }); + .send(JSON.stringify({ test: 'data' })); expect(response3.status).toBe(400); expect(response3.body).toEqual({ message: 'wrong signature' }); const response4 = await request(app) .post('/http/testB') + .type('application/json') .set('X-Test-Signature', 'testB-signature') .timeout(1000) - .send({ test: 'data' }); + .send(JSON.stringify({ test: 'data' })); expect(response4.status).toBe(202); const response5 = await request(app) .post('/http/testC') + .type('application/json') .timeout(1000) - .send({ test: 'data' }); + .send(JSON.stringify({ test: 'data' })); expect(response5.status).toBe(404); expect(response5.body).toEqual({}); const response6 = await request(app) .post('/http/testD') + .type('application/json') .timeout(1000) - .send({ test: 'data' }); + .send(JSON.stringify({ test: 'data' })); expect(response6.status).toBe(403); expect(response6.body).toEqual({}); diff --git a/plugins/events-backend/src/service/http/HttpPostIngressEventPublisher.ts b/plugins/events-backend/src/service/http/HttpPostIngressEventPublisher.ts index 06dc4e463a..fe17186856 100644 --- a/plugins/events-backend/src/service/http/HttpPostIngressEventPublisher.ts +++ b/plugins/events-backend/src/service/http/HttpPostIngressEventPublisher.ts @@ -17,15 +17,35 @@ import { errorHandler } from '@backstage/backend-common'; import { LoggerService } from '@backstage/backend-plugin-api'; import { Config } from '@backstage/config'; +import { CustomErrorBase } from '@backstage/errors'; import { EventsService, HttpPostIngressOptions, RequestValidator, } from '@backstage/plugin-events-node'; +import contentType from 'content-type'; import express from 'express'; import Router from 'express-promise-router'; import { RequestValidationContextImpl } from './validation'; +class UnsupportedCharsetError extends CustomErrorBase { + name = 'UnsupportedCharsetError' as const; + statusCode = 415 as const; + + constructor(charset: string) { + super(`Unsupported charset: ${charset}`); + } +} + +class UnsupportedMediaTypeError extends CustomErrorBase { + name = 'UnsupportedMediaTypeError' as const; + statusCode = 415 as const; + + constructor(mediaType?: string) { + super(`Unsupported media type: ${mediaType ?? 'unknown'}`); + } +} + /** * Publishes events received from their origin (e.g., webhook events from an SCM system) * via HTTP POST endpoint and passes the request body as event payload to the registered subscribers. @@ -71,7 +91,7 @@ export class HttpPostIngressEventPublisher { [topic: string]: Omit; }): express.Router { const router = Router(); - router.use(express.json()); + router.use(express.raw({ type: '*/*' })); Object.keys(ingresses).forEach(topic => this.addRouteForTopic(router, topic, ingresses[topic].validator), @@ -87,25 +107,60 @@ export class HttpPostIngressEventPublisher { validator?: RequestValidator, ): void { const path = `/${topic}`; + const logger = this.logger; router.post(path, async (request, response) => { - const requestDetails = { - body: request.body, - headers: request.headers, - }; - const context = new RequestValidationContextImpl(); - await validator?.(requestDetails, context); - if (context.wasRejected()) { - response - .status(context.rejectionDetails!.status) - .json(context.rejectionDetails!.payload); - return; + const requestBody = request.body; + if (!Buffer.isBuffer(requestBody)) { + throw new Error( + `Failed to retrieve raw body from incoming event for topic ${topic}; not a buffer: ${typeof requestBody}`, + ); + } + + const bodyBuffer: Buffer = requestBody; + const parsedContentType = contentType.parse(request); + if ( + !parsedContentType.type || + parsedContentType.type !== 'application/json' + ) { + throw new UnsupportedMediaTypeError(parsedContentType.type); + } + + const encoding = parsedContentType.parameters.charset ?? 'utf-8'; + if (!Buffer.isEncoding(encoding)) { + throw new UnsupportedCharsetError(encoding); + } + + const bodyString = bodyBuffer.toString(encoding); + const bodyParsed = + parsedContentType.type === 'application/json' + ? JSON.parse(bodyString) + : bodyString; + + if (validator) { + const requestDetails = { + body: bodyParsed, + headers: request.headers, + raw: { + body: bodyBuffer, + encoding: encoding as BufferEncoding, + }, + }; + + const context = new RequestValidationContextImpl(); + await validator(requestDetails, context); + + if (context.wasRejected()) { + response + .status(context.rejectionDetails!.status) + .json(context.rejectionDetails!.payload); + return; + } } - const eventPayload = request.body; await this.events.publish({ topic, - eventPayload, + eventPayload: bodyParsed, metadata: request.headers, }); @@ -114,6 +169,6 @@ export class HttpPostIngressEventPublisher { // TODO(pjungermann): We don't really know the externally defined path prefix here, // however it is more useful for users to have it. Is there a better way? - this.logger.info(`Registered /api/events/http${path} to receive events`); + logger.info(`Registered /api/events/http${path} to receive events`); } } diff --git a/plugins/events-node/report.api.md b/plugins/events-node/report.api.md index a9e028e049..0b9c31090a 100644 --- a/plugins/events-node/report.api.md +++ b/plugins/events-node/report.api.md @@ -3,6 +3,8 @@ > Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). ```ts +/// + import { AuthService } from '@backstage/backend-plugin-api'; import { DiscoveryService } from '@backstage/backend-plugin-api'; import { LifecycleService } from '@backstage/backend-plugin-api'; @@ -114,10 +116,14 @@ export interface HttpPostIngressOptions { validator?: RequestValidator; } -// @public (undocumented) +// @public export interface RequestDetails { body: unknown; headers: Record; + raw: { + body: Buffer; + encoding: BufferEncoding; + }; } // @public diff --git a/plugins/events-node/src/api/http/validation/RequestDetails.ts b/plugins/events-node/src/api/http/validation/RequestDetails.ts index 83c2669503..fc99b6a228 100644 --- a/plugins/events-node/src/api/http/validation/RequestDetails.ts +++ b/plugins/events-node/src/api/http/validation/RequestDetails.ts @@ -15,6 +15,8 @@ */ /** + * View on an incoming request that has to be validated. + * * @public */ export interface RequestDetails { @@ -26,4 +28,18 @@ export interface RequestDetails { * Key-value pairs of header names and values. Header names are lower-cased. */ headers: Record; + /** + * Raw request details. + */ + raw: { + /** + * Raw request body (buffer). + */ + body: Buffer; + /** + * Encoding of the raw request body. + * Can be used to decode the raw request body like `raw.body.toString(raw.encoding)`. + */ + encoding: BufferEncoding; + }; } diff --git a/yarn.lock b/yarn.lock index 22aaacbd73..f57d896cba 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6599,7 +6599,9 @@ __metadata: "@backstage/plugin-events-node": "workspace:^" "@backstage/repo-tools": "workspace:^" "@backstage/types": "workspace:^" + "@types/content-type": ^1.1.8 "@types/express": ^4.17.6 + content-type: ^1.0.5 express: ^4.17.1 express-promise-router: ^4.1.0 knex: ^3.0.0 @@ -17843,6 +17845,13 @@ __metadata: languageName: node linkType: hard +"@types/content-type@npm:^1.1.8": + version: 1.1.8 + resolution: "@types/content-type@npm:1.1.8" + checksum: 2dd15e51925db7208b0d989c3a93d805a0e5e0942aa9edd70a1c3520896b772526d8280e344a674ae68a96a24aa8fce290843a07512460176f36a3020d99c792 + languageName: node + linkType: hard + "@types/cookie-parser@npm:^1.4.2": version: 1.4.7 resolution: "@types/cookie-parser@npm:1.4.7" From 5838d47e54a293c978a90cad8c3e8e0041f50d1c Mon Sep 17 00:00:00 2001 From: Benjamin Janssens Date: Fri, 25 Oct 2024 11:18:41 +0200 Subject: [PATCH 030/161] test: use extra project in tests Signed-off-by: Benjamin Janssens --- .../BitbucketCloudEntityProvider.test.ts | 37 ++++++++++++++++++- 1 file changed, 36 insertions(+), 1 deletion(-) diff --git a/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProvider.test.ts b/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProvider.test.ts index 4d5103a718..fe460b8d8b 100644 --- a/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProvider.test.ts +++ b/plugins/catalog-backend-module-bitbucket-cloud/src/providers/BitbucketCloudEntityProvider.test.ts @@ -320,6 +320,9 @@ describe('BitbucketCloudEntityProvider', () => { { key: 'TEST', }, + { + key: 'TEST2', + }, ], }; return res(ctx.json(response)); @@ -460,6 +463,27 @@ describe('BitbucketCloudEntityProvider', () => { }, locationKey: 'bitbucketCloud-provider:myProvider', }, + { + entity: { + apiVersion: 'backstage.io/v1alpha1', + kind: 'Location', + metadata: { + annotations: { + 'backstage.io/managed-by-location': `url:${url}`, + 'backstage.io/managed-by-origin-location': `url:${url}`, + 'bitbucket.org/repo-url': + 'https://bitbucket.org/test-ws/test-repo2', + }, + name: 'generated-7c2e6263b6cc2d14e69fd4d029afba601ad6dc3b', + }, + spec: { + presence: 'required', + target: `${url}`, + type: 'url', + }, + }, + locationKey: 'bitbucketCloud-provider:myProvider', + }, ]; expect(entityProviderConnection.applyMutation).toHaveBeenCalledTimes(1); @@ -526,6 +550,9 @@ describe('BitbucketCloudEntityProvider', () => { { key: 'TEST', }, + { + key: 'TEST2', + }, ], }; return res(ctx.json(response)); @@ -535,7 +562,11 @@ describe('BitbucketCloudEntityProvider', () => { `https://api.bitbucket.org/2.0/workspaces/test-ws/search/code`, (req, res, ctx) => { const query = req.url.searchParams.get('search_query'); - if (!query || !query.includes('repo:test-repo')) { + if ( + !query || + !query.includes('repo:test-repo') || + !query.includes('project:TEST') + ) { return res(ctx.json({ values: [] })); } @@ -612,6 +643,10 @@ describe('BitbucketCloudEntityProvider', () => { entity: addedModule, locationKey: 'bitbucketCloud-provider:myProvider', }, + { + entity: addedModule, + locationKey: 'bitbucketCloud-provider:myProvider', + }, ]; const removedEntities = [ { From f415c7b9c9a9ecc18b1207e636ef86c3f5cfa50b Mon Sep 17 00:00:00 2001 From: Jonathan Nagayoshi Date: Fri, 25 Oct 2024 16:22:45 -0500 Subject: [PATCH 031/161] docs(sofware-templates): improves instruction for --no-node-snapshot Signed-off-by: Jonathan Nagayoshi --- docs/features/software-templates/index.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/features/software-templates/index.md b/docs/features/software-templates/index.md index 077090743f..e12e738e72 100644 --- a/docs/features/software-templates/index.md +++ b/docs/features/software-templates/index.md @@ -25,7 +25,9 @@ locations like GitHub or GitLab. If you're running Backstage with Node 20 or later, you'll need to pass the flag `--no-node-snapshot` to Node in order to use the templates feature. One way to do this is to specify the `NODE_OPTIONS` environment variable before starting Backstage: -`export NODE_OPTIONS=--no-node-snapshot` +`export NODE_OPTIONS="$NODE_OPTIONS --no-node-snapshot"` + +> It's important to append to the existing `NODE_OPTIONS` value, if it's already set, rather than overwriting it, since some NodeJS Debugging tools may rely on this environment variable to work properly. ::: From 7fc4b8ff6bdcb9789ba89390a17b2c0700707952 Mon Sep 17 00:00:00 2001 From: Bruno Nardini Date: Fri, 25 Oct 2024 17:28:53 -0300 Subject: [PATCH 032/161] feat: add Google LDAP vendor Signed-off-by: Bruno Nardini --- plugins/catalog-backend-module-ldap/src/ldap/client.ts | 4 ++++ .../catalog-backend-module-ldap/src/ldap/vendors.ts | 10 ++++++++++ 2 files changed, 14 insertions(+) diff --git a/plugins/catalog-backend-module-ldap/src/ldap/client.ts b/plugins/catalog-backend-module-ldap/src/ldap/client.ts index 48a3eedfb8..61dd05f437 100644 --- a/plugins/catalog-backend-module-ldap/src/ldap/client.ts +++ b/plugins/catalog-backend-module-ldap/src/ldap/client.ts @@ -25,6 +25,7 @@ import { AEDirVendor, ActiveDirectoryVendor, DefaultLdapVendor, + GoogleLdapVendor, FreeIpaVendor, LdapVendor, } from './vendors'; @@ -236,6 +237,7 @@ export class LdapClient { if (this.vendor) { return this.vendor; } + const clientHost = this.client?.host || ''; this.vendor = this.getRootDSE() .then(root => { if (root && root.raw?.forestFunctionality) { @@ -244,6 +246,8 @@ export class LdapClient { return FreeIpaVendor; } else if (root && 'aeRoot' in root.raw) { return AEDirVendor; + } else if (clientHost === 'ldap.google.com') { + return GoogleLdapVendor; } return DefaultLdapVendor; }) diff --git a/plugins/catalog-backend-module-ldap/src/ldap/vendors.ts b/plugins/catalog-backend-module-ldap/src/ldap/vendors.ts index 8b84002c20..eac8481c3e 100644 --- a/plugins/catalog-backend-module-ldap/src/ldap/vendors.ts +++ b/plugins/catalog-backend-module-ldap/src/ldap/vendors.ts @@ -89,6 +89,16 @@ export const AEDirVendor: LdapVendor = { }, }; +export const GoogleLdapVendor: LdapVendor = { + dnAttributeName: 'dn', + uuidAttributeName: 'uid', + decodeStringAttribute: (entry, name) => { + return decode(entry, name, value => { + return value.toString(); + }); + }, +}; + // Decode an attribute to a consumer function decode( entry: SearchEntry, From 415aeb3803b41e3d7ee1d2c3e973cdf722f427f5 Mon Sep 17 00:00:00 2001 From: Bruno Nardini Date: Fri, 25 Oct 2024 18:56:28 -0300 Subject: [PATCH 033/161] Add Support for Google LDAP Vendor Signed-off-by: Bruno Nardini --- .changeset/heavy-phones-shave.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/heavy-phones-shave.md diff --git a/.changeset/heavy-phones-shave.md b/.changeset/heavy-phones-shave.md new file mode 100644 index 0000000000..4f268d81ac --- /dev/null +++ b/.changeset/heavy-phones-shave.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-catalog-backend-module-ldap': minor +--- + +Add Support for Google LDAP Vendor From a47c6b2d76b1423d15a7974e3d5ab6336d444273 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc=20Oro=CC=81s?= Date: Mon, 28 Oct 2024 09:45:21 +0100 Subject: [PATCH 034/161] Support for catalog-info.yaml files with multiple documents when creating a PR to register a new repository MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Marc Orós --- .../src/api/CatalogImportClient.ts | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/plugins/catalog-import/src/api/CatalogImportClient.ts b/plugins/catalog-import/src/api/CatalogImportClient.ts index 78e54ac98c..0cd1268522 100644 --- a/plugins/catalog-import/src/api/CatalogImportClient.ts +++ b/plugins/catalog-import/src/api/CatalogImportClient.ts @@ -174,14 +174,17 @@ the component will become available.\n\nFor more information, read an \ body: string; }): Promise<{ link: string; location: string }> { const { repositoryUrl, fileContent, title, body } = options; - const parseData = YAML.parse(fileContent); - const validationResponse = await this.catalogApi.validateEntity( - parseData, - `url:${repositoryUrl}`, - ); - if (!validationResponse.valid) { - throw new Error(validationResponse.errors[0].message); + const parseData = YAML.parseAllDocuments(fileContent); + + for (const document of parseData) { + const validationResponse = await this.catalogApi.validateEntity( + document.toJS(), + `url:${repositoryUrl}`, + ); + if (!validationResponse.valid) { + throw new Error(validationResponse.errors[0].message); + } } const provider = this.scmIntegrationsApi.byUrl(repositoryUrl); From ea5b7f30acf580e10d08ba4668405aebcadf1963 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc=20Oro=CC=81s?= Date: Mon, 28 Oct 2024 10:03:39 +0100 Subject: [PATCH 035/161] Added changeset MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Marc Orós --- .changeset/lucky-bananas-eat.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/lucky-bananas-eat.md diff --git a/.changeset/lucky-bananas-eat.md b/.changeset/lucky-bananas-eat.md new file mode 100644 index 0000000000..758ff95c36 --- /dev/null +++ b/.changeset/lucky-bananas-eat.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-catalog-import': patch +--- + +Fixed parsing of catalog-info.yaml when creating a PR to register a repository if the file contains more than one document From d7ec77862cf0bf46664406d885f6e0a4355c108e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc=20Oro=CC=81s?= Date: Mon, 28 Oct 2024 10:21:18 +0100 Subject: [PATCH 036/161] Added unit test for catalog-info.yaml with multiple documents MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Marc Orós --- .../src/api/CatalogImportClient.test.ts | 71 ++++++++++++++++++- 1 file changed, 70 insertions(+), 1 deletion(-) diff --git a/plugins/catalog-import/src/api/CatalogImportClient.test.ts b/plugins/catalog-import/src/api/CatalogImportClient.test.ts index fb78066ac0..4c61d4f6a0 100644 --- a/plugins/catalog-import/src/api/CatalogImportClient.test.ts +++ b/plugins/catalog-import/src/api/CatalogImportClient.test.ts @@ -61,12 +61,12 @@ import { MockFetchApi, registerMswTestHooks } from '@backstage/test-utils'; import { Octokit } from '@octokit/rest'; import { rest } from 'msw'; import { setupServer } from 'msw/node'; -import { CatalogImportClient } from './CatalogImportClient'; import { AzurePrOptions, AzurePrResult, createAzurePullRequest, } from './AzureRepoApiClient'; +import { CatalogImportClient } from './CatalogImportClient'; describe('CatalogImportClient', () => { const server = setupServer(); @@ -775,6 +775,75 @@ describe('CatalogImportClient', () => { }), ); }); + it('should create GitHub pull request and validate all documents inside the YAML file', async () => { + catalogApi.validateEntity.mockResolvedValue({ + valid: true, + }); + await expect( + catalogImportClient.submitPullRequest({ + repositoryUrl: 'https://github.com/backstage/backstage', + fileContent: `apiVersion: backstage.io/v1alpha1 +kind: Component +metadata: + name: reg-graphql-shopping + annotations: + github.com/project-slug: tkww/reg-graphql-shopping + backstage.io/techdocs-ref: dir:. +spec: + type: service + lifecycle: production + owner: registry-pandora + system: system +--- + +apiVersion: backstage.io/v1alpha1 +kind: System +metadata: + name: system +spec: + owner: registry-pandora + lifecycle: production +`, + title: 'A title/message', + body: 'A body', + }), + ).resolves.toEqual({ + link: 'http://pull/request/0', + location: + 'https://github.com/backstage/backstage/blob/main/catalog-info.yaml', + }); + expect(catalogApi.validateEntity).toHaveBeenCalledTimes(2); + expect( + (new Octokit().git.createRef as any as jest.Mock).mock.calls[0][0], + ).toEqual({ + owner: 'backstage', + repo: 'backstage', + ref: 'refs/heads/backstage-integration', + sha: 'any', + }); + expect( + (new Octokit().repos.createOrUpdateFileContents as any as jest.Mock) + .mock.calls[0][0], + ).toEqual({ + owner: 'backstage', + repo: 'backstage', + path: 'catalog-info.yaml', + message: 'A title/message', + content: + 'YXBpVmVyc2lvbjogYmFja3N0YWdlLmlvL3YxYWxwaGExCmtpbmQ6IENvbXBvbmVudAptZXRhZGF0YToKICBuYW1lOiByZWctZ3JhcGhxbC1zaG9wcGluZwogIGFubm90YXRpb25zOgogICAgZ2l0aHViLmNvbS9wcm9qZWN0LXNsdWc6IHRrd3cvcmVnLWdyYXBocWwtc2hvcHBpbmcKICAgIGJhY2tzdGFnZS5pby90ZWNoZG9jcy1yZWY6IGRpcjouCnNwZWM6CiAgdHlwZTogc2VydmljZQogIGxpZmVjeWNsZTogcHJvZHVjdGlvbgogIG93bmVyOiByZWdpc3RyeS1wYW5kb3JhCiAgc3lzdGVtOiBzeXN0ZW0KLS0tCgphcGlWZXJzaW9uOiBiYWNrc3RhZ2UuaW8vdjFhbHBoYTEKa2luZDogU3lzdGVtCm1ldGFkYXRhOgogIG5hbWU6IHN5c3RlbQpzcGVjOgogIG93bmVyOiByZWdpc3RyeS1wYW5kb3JhCiAgbGlmZWN5Y2xlOiBwcm9kdWN0aW9uCg==', + branch: 'backstage-integration', + }); + expect( + (new Octokit().pulls.create as any as jest.Mock).mock.calls[0][0], + ).toEqual({ + owner: 'backstage', + repo: 'backstage', + title: 'A title/message', + head: 'backstage-integration', + body: 'A body', + base: 'main', + }); + }); }); describe('preparePullRequest', () => { From 6c40ceba1ede00dac206260c89872154557048ff Mon Sep 17 00:00:00 2001 From: Mkolaj Kaliszewski Date: Mon, 28 Oct 2024 11:44:35 +0100 Subject: [PATCH 037/161] Update changeset message Signed-off-by: Mkolaj Kaliszewski --- .changeset/silver-kings-sort.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.changeset/silver-kings-sort.md b/.changeset/silver-kings-sort.md index 3cfbeb68ce..b59f70c401 100644 --- a/.changeset/silver-kings-sort.md +++ b/.changeset/silver-kings-sort.md @@ -2,4 +2,4 @@ '@backstage/plugin-catalog-backend-module-gitlab': minor --- -Extended the configuration with the includeArchivedRepos property, which allows including repositories when the project is archived. +Extended the configuration with the `includeArchivedRepos` property, which allows including repositories when the project is archived. From 2806868e8bdf3d617d4b31426b1a2ac5d024b385 Mon Sep 17 00:00:00 2001 From: Jonathan Nagayoshi Date: Mon, 28 Oct 2024 14:47:14 -0500 Subject: [PATCH 038/161] docs(templates): adds default value to NODE_OPTIONS Signed-off-by: Jonathan Nagayoshi --- docs/features/software-templates/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/features/software-templates/index.md b/docs/features/software-templates/index.md index e12e738e72..8018b76d91 100644 --- a/docs/features/software-templates/index.md +++ b/docs/features/software-templates/index.md @@ -25,7 +25,7 @@ locations like GitHub or GitLab. If you're running Backstage with Node 20 or later, you'll need to pass the flag `--no-node-snapshot` to Node in order to use the templates feature. One way to do this is to specify the `NODE_OPTIONS` environment variable before starting Backstage: -`export NODE_OPTIONS="$NODE_OPTIONS --no-node-snapshot"` +`export NODE_OPTIONS="${NODE_OPTIONS:-} --no-node-snapshot"` > It's important to append to the existing `NODE_OPTIONS` value, if it's already set, rather than overwriting it, since some NodeJS Debugging tools may rely on this environment variable to work properly. From db507dd9e6a86b5ff0b6f5da3e7ee4c393c35168 Mon Sep 17 00:00:00 2001 From: Stephen Glass Date: Mon, 28 Oct 2024 16:23:13 -0400 Subject: [PATCH 039/161] address comments Signed-off-by: Stephen Glass --- .changeset/lemon-gifts-crash.md | 3 +-- plugins/scaffolder-backend/src/service/router.ts | 3 +-- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/.changeset/lemon-gifts-crash.md b/.changeset/lemon-gifts-crash.md index cd473f6c58..c4ab159dc8 100644 --- a/.changeset/lemon-gifts-crash.md +++ b/.changeset/lemon-gifts-crash.md @@ -1,8 +1,7 @@ --- '@backstage/plugin-scaffolder-common': patch '@backstage/plugin-scaffolder-react': patch -'@backstage/plugin-scaffolder-backend': patch -'@backstage/plugin-scaffolder': patch +'@backstage/plugin-scaffolder': minor --- Add scaffolder permission `scaffolder.template.management` for accessing the template management features diff --git a/plugins/scaffolder-backend/src/service/router.ts b/plugins/scaffolder-backend/src/service/router.ts index 59f52af0c4..35dacf6559 100644 --- a/plugins/scaffolder-backend/src/service/router.ts +++ b/plugins/scaffolder-backend/src/service/router.ts @@ -46,7 +46,6 @@ import { taskCancelPermission, taskCreatePermission, taskReadPermission, - templateManagementPermission, templateParameterReadPermission, templateStepReadPermission, } from '@backstage/plugin-scaffolder-common/alpha'; @@ -767,7 +766,7 @@ export async function createRouter( const credentials = await httpAuth.credentials(req); await checkPermission({ credentials, - permissions: [taskCreatePermission, templateManagementPermission], + permissions: [taskCreatePermission], permissionService: permissions, }); From 636474c72b77681e2db458051a2312b0a06f55df Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 29 Oct 2024 11:06:42 +0000 Subject: [PATCH 040/161] Bump elliptic from 6.5.7 to 6.6.0 Bumps [elliptic](https://github.com/indutny/elliptic) from 6.5.7 to 6.6.0. - [Commits](https://github.com/indutny/elliptic/compare/v6.5.7...v6.6.0) --- updated-dependencies: - dependency-name: elliptic dependency-type: indirect ... Signed-off-by: dependabot[bot] --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 73e88dcf4c..9101a495ff 100644 --- a/yarn.lock +++ b/yarn.lock @@ -26051,8 +26051,8 @@ __metadata: linkType: hard "elliptic@npm:^6.0.0, elliptic@npm:^6.5.4": - version: 6.5.7 - resolution: "elliptic@npm:6.5.7" + version: 6.6.0 + resolution: "elliptic@npm:6.6.0" dependencies: bn.js: ^4.11.9 brorand: ^1.1.0 @@ -26061,7 +26061,7 @@ __metadata: inherits: ^2.0.4 minimalistic-assert: ^1.0.1 minimalistic-crypto-utils: ^1.0.1 - checksum: af0ffddffdbc2fea4eeec74388cd73e62ed5a0eac6711568fb28071566319785df529c968b0bf1250ba4bc628e074b2d64c54a633e034aa6f0c6b152ceb49ab8 + checksum: e912349b883e694bfe65005214237a470c9a098a6ba36fd24396d0ab07feb399920c0738aeed1aed6cf5dca9c64fd479e212faed3a75c9d81453671ef0de5157 languageName: node linkType: hard From eb4f001bd273c771fbd6ff9c68f6074337f54fe2 Mon Sep 17 00:00:00 2001 From: James Gentes Date: Mon, 28 Oct 2024 21:57:57 -0700 Subject: [PATCH 041/161] added catalog-webhook plugin Signed-off-by: James Gentes --- microsite/data/plugins/catalog-webhook.yaml | 10 ++++++++++ microsite/static/img/forgedapps.jpg | Bin 0 -> 210883 bytes 2 files changed, 10 insertions(+) create mode 100644 microsite/data/plugins/catalog-webhook.yaml create mode 100644 microsite/static/img/forgedapps.jpg diff --git a/microsite/data/plugins/catalog-webhook.yaml b/microsite/data/plugins/catalog-webhook.yaml new file mode 100644 index 0000000000..1b5833f5aa --- /dev/null +++ b/microsite/data/plugins/catalog-webhook.yaml @@ -0,0 +1,10 @@ +--- +title: Catalog Webhook +author: Forged Apps +authorUrl: https://forgedapps.com +category: Catalog +description: Send catalog entity changes to a remote endpoint to keep an external system in sync with Backstage. +documentation: https://github.com/ForgedApps/backstage-catalog-webhook-plugin/blob/main/README.md +iconUrl: /img/forgedapps.jpg +npmPackageName: '@forgedapps/backstage-catalog-webhook-plugin' +addedDate: '2024-10-28' \ No newline at end of file diff --git a/microsite/static/img/forgedapps.jpg b/microsite/static/img/forgedapps.jpg new file mode 100644 index 0000000000000000000000000000000000000000..67b088c629a7e5b52394b84ede32b1aa6e929f93 GIT binary patch literal 210883 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 z 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 N#{b_Mg)@If{~ryC9>4$q literal 0 HcmV?d00001 From 1eddc3551938eac12fdcbf994617994141bddd4b Mon Sep 17 00:00:00 2001 From: James Gentes Date: Tue, 29 Oct 2024 20:06:55 -0700 Subject: [PATCH 042/161] fixed newline Signed-off-by: James Gentes --- microsite/data/plugins/catalog-webhook.yaml | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/microsite/data/plugins/catalog-webhook.yaml b/microsite/data/plugins/catalog-webhook.yaml index 1b5833f5aa..5c72cdd605 100644 --- a/microsite/data/plugins/catalog-webhook.yaml +++ b/microsite/data/plugins/catalog-webhook.yaml @@ -1,10 +1,10 @@ ---- -title: Catalog Webhook -author: Forged Apps -authorUrl: https://forgedapps.com -category: Catalog -description: Send catalog entity changes to a remote endpoint to keep an external system in sync with Backstage. -documentation: https://github.com/ForgedApps/backstage-catalog-webhook-plugin/blob/main/README.md -iconUrl: /img/forgedapps.jpg -npmPackageName: '@forgedapps/backstage-catalog-webhook-plugin' -addedDate: '2024-10-28' \ No newline at end of file +--- +title: Catalog Webhook +author: Forged Apps +authorUrl: https://forgedapps.com +category: Catalog +description: Send catalog entity changes to a remote endpoint to keep an external system in sync with Backstage. +documentation: https://github.com/ForgedApps/backstage-catalog-webhook-plugin/blob/main/README.md +iconUrl: /img/forgedapps.jpg +npmPackageName: '@forgedapps/backstage-catalog-webhook-plugin' +addedDate: '2024-10-28' From c66fe900d553e54f420cc9ba3fa9b3620012a349 Mon Sep 17 00:00:00 2001 From: Ethan <182492+ethanwillis@users.noreply.github.com> Date: Wed, 30 Oct 2024 19:29:37 -0500 Subject: [PATCH 043/161] Update incorrect comments about optional app options for createApp(...) Signed-off-by: Ethan <182492+ethanwillis@users.noreply.github.com> --- packages/app-defaults/src/createApp.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/app-defaults/src/createApp.tsx b/packages/app-defaults/src/createApp.tsx index 6cac337d22..1d400aff7a 100644 --- a/packages/app-defaults/src/createApp.tsx +++ b/packages/app-defaults/src/createApp.tsx @@ -86,7 +86,7 @@ export type OptionalAppOptions = { /** * A set of components to override the default components with. * - * The override is applied for each icon individually. + * The override is applied for each app component individually. * * @public */ From e565f73e5665aecd99c22746911ad4b5764ce543 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Josip=20Antoli=C5=A1?= Date: Thu, 31 Oct 2024 13:59:25 +0100 Subject: [PATCH 044/161] Fix .webp imports by expanding webpack loader config MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Josip Antoliš --- .changeset/wise-avocados-behave.md | 5 +++++ packages/cli/config/jest.js | 2 +- packages/cli/src/lib/bundler/transforms.ts | 1 + 3 files changed, 7 insertions(+), 1 deletion(-) create mode 100644 .changeset/wise-avocados-behave.md diff --git a/.changeset/wise-avocados-behave.md b/.changeset/wise-avocados-behave.md new file mode 100644 index 0000000000..5258fb7816 --- /dev/null +++ b/.changeset/wise-avocados-behave.md @@ -0,0 +1,5 @@ +--- +'@backstage/cli': patch +--- + +Fix .webp import support by adding it to webpack loader config. diff --git a/packages/cli/config/jest.js b/packages/cli/config/jest.js index ee6f3d820d..45d744d7bc 100644 --- a/packages/cli/config/jest.js +++ b/packages/cli/config/jest.js @@ -213,7 +213,7 @@ async function getProjectConfig(targetPath, extraConfig, extraOptions) { }, }, ], - '\\.(bmp|gif|jpg|jpeg|png|ico|frag|xml|svg|eot|woff|woff2|ttf)$': + '\\.(bmp|gif|jpg|jpeg|png|ico|webp|frag|xml|svg|eot|woff|woff2|ttf)$': require.resolve('./jestFileTransform.js'), '\\.(yaml)$': require.resolve('./jestYamlTransform'), }, diff --git a/packages/cli/src/lib/bundler/transforms.ts b/packages/cli/src/lib/bundler/transforms.ts index 75099bf430..addefacd6e 100644 --- a/packages/cli/src/lib/bundler/transforms.ts +++ b/packages/cli/src/lib/bundler/transforms.ts @@ -150,6 +150,7 @@ export const transforms = (options: TransformOptions): Transforms => { { and: [/\.svg$/, { not: [/\.icon\.svg$/] }] }, /\.xml$/, /\.ico$/, + /\.webp$/, ], type: 'asset/resource', generator: { From d92ab45b3d6d22e5d902235da29fafbf1445f617 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 1 Nov 2024 14:11:02 +0000 Subject: [PATCH 045/161] chore(deps): update dependency @types/jquery to v3.5.32 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 87617f2b21..ea155c728a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -18398,11 +18398,11 @@ __metadata: linkType: hard "@types/jquery@npm:^3.3.34": - version: 3.5.31 - resolution: "@types/jquery@npm:3.5.31" + version: 3.5.32 + resolution: "@types/jquery@npm:3.5.32" dependencies: "@types/sizzle": "*" - checksum: 14a682a6a00e5b0bfe7afbb359ea2ada51b6fdbd962f8ba2b6077989935bd41f395b920581538d218d3ac81e6e3929acb86db9ccb8aa55a67066da9ed55db775 + checksum: 7fe7251bda3fc9d80417ef7c88ad963ccb591706bca2fb84ea5d9600498a8f9911c32302f28fd1910bb212c34193f38f63818757a9833b70e1f46c3a98a17625 languageName: node linkType: hard From 593df87feecbcb7693781d32490af5c49827a381 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 1 Nov 2024 14:52:23 +0000 Subject: [PATCH 046/161] chore(deps): update dependency @types/lodash to v4.17.13 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index ea155c728a..e53e6ef98c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -18524,9 +18524,9 @@ __metadata: linkType: hard "@types/lodash@npm:^4.14.151": - version: 4.17.12 - resolution: "@types/lodash@npm:4.17.12" - checksum: 7b564e4114f09ce5ae31a2e9493592baf20bb498507f3705c5d91cf838c2298b4f6a06f2d6c8dc608fcac63e210a2b7b13388c7a5e220e15688f813521030127 + version: 4.17.13 + resolution: "@types/lodash@npm:4.17.13" + checksum: d0bf8fbd950be71946e0076b30fd40d492293baea75f05931b6b5b906fd62583708c6229abdb95b30205ad24ce1ed2f48bc9d419364f682320edd03405cc0c7e languageName: node linkType: hard From ef7f373ea0af1e9fe267bb5857d34be741b5a31b Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 1 Nov 2024 15:47:59 +0000 Subject: [PATCH 047/161] chore(deps): update dependency @types/react to v18.3.12 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- storybook/yarn.lock | 6 +++--- yarn.lock | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/storybook/yarn.lock b/storybook/yarn.lock index 2b3eae2265..472470a565 100644 --- a/storybook/yarn.lock +++ b/storybook/yarn.lock @@ -1707,12 +1707,12 @@ __metadata: linkType: hard "@types/react@npm:*, @types/react@npm:^16.8.0 || ^17.0.0 || ^18.0.0, @types/react@npm:^18.0.0": - version: 18.3.11 - resolution: "@types/react@npm:18.3.11" + version: 18.3.12 + resolution: "@types/react@npm:18.3.12" dependencies: "@types/prop-types": "*" csstype: ^3.0.2 - checksum: 6cbf36673b64e758dd61b16c24139d015f58530e0d476777de26ba83f24b55e142fbf64e3b8f6b3c7b05ed9ba548551b2a62d9ffb0f95743d0a368646a619163 + checksum: 4ab1577a8c2105a5e316536f724117c90eee5f4bd5c137fc82a2253d8c1fd299dedaa07e8dfc95d6e2f04a4be3cb8b0e1b06098c6233ebd55c508d88099395b7 languageName: node linkType: hard diff --git a/yarn.lock b/yarn.lock index e53e6ef98c..e9c7ce076c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -19059,12 +19059,12 @@ __metadata: linkType: hard "@types/react@npm:^18": - version: 18.3.11 - resolution: "@types/react@npm:18.3.11" + version: 18.3.12 + resolution: "@types/react@npm:18.3.12" dependencies: "@types/prop-types": "*" csstype: ^3.0.2 - checksum: 6cbf36673b64e758dd61b16c24139d015f58530e0d476777de26ba83f24b55e142fbf64e3b8f6b3c7b05ed9ba548551b2a62d9ffb0f95743d0a368646a619163 + checksum: 4ab1577a8c2105a5e316536f724117c90eee5f4bd5c137fc82a2253d8c1fd299dedaa07e8dfc95d6e2f04a4be3cb8b0e1b06098c6233ebd55c508d88099395b7 languageName: node linkType: hard From ba1ed8db06cc24cce25c099631acf63f0bceb5fc Mon Sep 17 00:00:00 2001 From: Andre Wanlin Date: Fri, 1 Nov 2024 17:54:28 -0500 Subject: [PATCH 048/161] Updated Yarn & Node Prerequisites Signed-off-by: Andre Wanlin --- .github/vale/config/vocabularies/Backstage/accept.txt | 1 + docs/getting-started/index.md | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/vale/config/vocabularies/Backstage/accept.txt b/.github/vale/config/vocabularies/Backstage/accept.txt index 436021eb3d..a015b97a32 100644 --- a/.github/vale/config/vocabularies/Backstage/accept.txt +++ b/.github/vale/config/vocabularies/Backstage/accept.txt @@ -74,6 +74,7 @@ configmaps configs const cookiecutter +corepack Corti cron cronjobs diff --git a/docs/getting-started/index.md b/docs/getting-started/index.md index 0d5529f611..a9c5da596e 100644 --- a/docs/getting-started/index.md +++ b/docs/getting-started/index.md @@ -35,11 +35,12 @@ This guide assumes a basic understanding of working on a Linux based operating s - Using `nvm` (recommended) - [Installing nvm](https://github.com/nvm-sh/nvm#install--update-script) - [Install and change Node version with nvm](https://nodejs.org/en/download/package-manager/#nvm) + - Node 20 is a good starting point, this can be installed using `nvm install lts/iron` - [Binary Download](https://nodejs.org/en/download/) - [Package manager](https://nodejs.org/en/download/package-manager/) - [Using NodeSource packages](https://github.com/nodesource/distributions/blob/master/README.md) -- `yarn` [Installation](https://classic.yarnpkg.com/en/docs/install) - - You will need to use Yarn classic to create a new project, but it can then be [migrated to Yarn 3](../tutorials/yarn-migration.md) +- `yarn` [Installation](https://yarnpkg.com/getting-started/install) + - Backstage currently uses Yarn 4.4.1, once you've ran `corepack enable` you'll want to then run `yarn set version 4.4.1` - `docker` [installation](https://docs.docker.com/engine/install/) - `git` [installation](https://github.com/git-guides/install-git) - If the system is not directly accessible over your network the following ports From b7d0334f141f4d880b1d4428b4d9e72186d7c2ff Mon Sep 17 00:00:00 2001 From: bnechyporenko Date: Sat, 2 Nov 2024 14:13:48 +0100 Subject: [PATCH 049/161] Cleaning up event subscriptions after the max age window Signed-off-by: bnechyporenko --- .changeset/silly-kiwis-destroy.md | 5 +++++ .../events-backend/src/service/hub/DatabaseEventBusStore.ts | 4 +++- 2 files changed, 8 insertions(+), 1 deletion(-) create mode 100644 .changeset/silly-kiwis-destroy.md diff --git a/.changeset/silly-kiwis-destroy.md b/.changeset/silly-kiwis-destroy.md new file mode 100644 index 0000000000..31bdf4560b --- /dev/null +++ b/.changeset/silly-kiwis-destroy.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-events-backend': patch +--- + +Cleaning up event subscriptions after the max age window diff --git a/plugins/events-backend/src/service/hub/DatabaseEventBusStore.ts b/plugins/events-backend/src/service/hub/DatabaseEventBusStore.ts index 107dabfc27..6572bdbfc6 100644 --- a/plugins/events-backend/src/service/hub/DatabaseEventBusStore.ts +++ b/plugins/events-backend/src/service/hub/DatabaseEventBusStore.ts @@ -602,7 +602,9 @@ export class DatabaseEventBusStore implements EventBusStore { if (minId === null) { // No events left, remove all subscribers. This can happen if no events // are published within the max age window. - subscriberCount = await this.#db(TABLE_SUBSCRIPTIONS).delete(); + subscriberCount = await this.#db(TABLE_SUBSCRIPTIONS) + .where('updated_at', '<', new Date(Date.now() - this.#windowMaxAge)) + .delete(); } else { subscriberCount = await this.#db(TABLE_SUBSCRIPTIONS) .delete() From 141c237216774548f917fca0bf6b6ca0ba013a9c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Josip=20Antoli=C5=A1?= Date: Mon, 4 Nov 2024 07:43:41 +0100 Subject: [PATCH 050/161] Add webp support to build config MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Josip Antoliš --- packages/cli/src/lib/builder/config.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/cli/src/lib/builder/config.ts b/packages/cli/src/lib/builder/config.ts index 59e1cd57c3..32ee386ce4 100644 --- a/packages/cli/src/lib/builder/config.ts +++ b/packages/cli/src/lib/builder/config.ts @@ -167,6 +167,7 @@ export async function makeRollupConfigs( /\.gif$/, /\.jpg$/, /\.jpeg$/, + /\.webp$/, /\.eot$/, /\.woff$/, /\.woff2$/, From 8fda8fe6b79039ef8cf6f65504c18926ffc13172 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 4 Nov 2024 08:29:53 +0000 Subject: [PATCH 051/161] chore(deps): update dependency @types/ws to v8.5.13 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index e53e6ef98c..f7fa4100cc 100644 --- a/yarn.lock +++ b/yarn.lock @@ -19500,11 +19500,11 @@ __metadata: linkType: hard "@types/ws@npm:*, @types/ws@npm:^8.0.0, @types/ws@npm:^8.5.10, @types/ws@npm:^8.5.3, @types/ws@npm:^8.5.4": - version: 8.5.12 - resolution: "@types/ws@npm:8.5.12" + version: 8.5.13 + resolution: "@types/ws@npm:8.5.13" dependencies: "@types/node": "*" - checksum: ddefb6ad1671f70ce73b38a5f47f471d4d493864fca7c51f002a86e5993d031294201c5dced6d5018fb8905ad46888d65c7f20dd54fc165910b69f42fba9a6d0 + checksum: f17023ce7b89c6124249c90211803a4aaa02886e12bc2d0d2cd47fa665eeb058db4d871ce4397d8e423f6beea97dd56835dd3fdbb921030fe4d887601e37d609 languageName: node linkType: hard From b11f207a492e40ca9f5c934f647c46c273e27497 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Mon, 4 Nov 2024 09:44:53 +0100 Subject: [PATCH 052/161] Update .changeset/wise-avocados-behave.md Signed-off-by: Patrik Oldsberg --- .changeset/wise-avocados-behave.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.changeset/wise-avocados-behave.md b/.changeset/wise-avocados-behave.md index 5258fb7816..5d26ec0066 100644 --- a/.changeset/wise-avocados-behave.md +++ b/.changeset/wise-avocados-behave.md @@ -2,4 +2,4 @@ '@backstage/cli': patch --- -Fix .webp import support by adding it to webpack loader config. +Added support for `.webp` files in the frontend tooling. From c2515f199e45e1869e0c412aa600225078653ca3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fredrik=20Adel=C3=B6w?= Date: Mon, 4 Nov 2024 09:51:25 +0100 Subject: [PATCH 053/161] bump asyncapi/parser MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Fredrik Adelöw --- yarn.lock | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/yarn.lock b/yarn.lock index e53e6ef98c..0f7fc7ffa4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -310,8 +310,8 @@ __metadata: linkType: hard "@asyncapi/parser@npm:^3.1.0, @asyncapi/parser@npm:^3.3.0": - version: 3.3.0 - resolution: "@asyncapi/parser@npm:3.3.0" + version: 3.4.0 + resolution: "@asyncapi/parser@npm:3.4.0" dependencies: "@asyncapi/specs": ^6.8.0 "@openapi-contrib/openapi-schema-to-json-schema": ~3.2.0 @@ -330,9 +330,9 @@ __metadata: ajv-formats: ^2.1.1 avsc: ^5.7.5 js-yaml: ^4.1.0 - jsonpath-plus: ^7.2.0 + jsonpath-plus: ^10.0.0 node-fetch: 2.6.7 - checksum: c3ecf9986e22d007708843a85c69ab4b197f2c86df8610065e4498feed109be0e0067f1d513b5a2dd7bb26eb443f865128d11965fcfa42251f73895d4cc92619 + checksum: 158eab3b910258ad3c66ebbf94a86bbab4c78d6b4fb0d62980a3bef0e33358f914790e8044c59ef34f6cd25e963d2e5d37e940fc340056c8e9fe14343c8f2ee8 languageName: node linkType: hard From e27edf33f2504e0a123636e7b86663497736e60e Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 4 Nov 2024 09:14:01 +0000 Subject: [PATCH 054/161] chore(deps): update dependency @vitejs/plugin-react to v4.3.3 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index e9c7ce076c..d383687b6e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -20093,8 +20093,8 @@ __metadata: linkType: hard "@vitejs/plugin-react@npm:^4.3.1": - version: 4.3.2 - resolution: "@vitejs/plugin-react@npm:4.3.2" + version: 4.3.3 + resolution: "@vitejs/plugin-react@npm:4.3.3" dependencies: "@babel/core": ^7.25.2 "@babel/plugin-transform-react-jsx-self": ^7.24.7 @@ -20103,7 +20103,7 @@ __metadata: react-refresh: ^0.14.2 peerDependencies: vite: ^4.2.0 || ^5.0.0 - checksum: 6bd3f8ec4a5c1f9f2970217d6a7291fafb41b7760f7761b982b6835c8f9cd3874cea9eb3b6659aa75c511954fcec7707116ea32042854b1be47902ebbb781794 + checksum: 1ad449cb7934e14ad265a0044aa2461cdb47587c436c2a0324e2b6a73de1b63a34a84396de41b77988fac67ff43302bf0186674344e11a881ba50936cc4297d8 languageName: node linkType: hard From 2a2308ded80a404704089241657475bea4053155 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 4 Nov 2024 09:15:13 +0000 Subject: [PATCH 055/161] chore(deps): update dependency msw to v1.3.5 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 125 +++++++++++++++++++++++++----------------------------- 1 file changed, 58 insertions(+), 67 deletions(-) diff --git a/yarn.lock b/yarn.lock index e9c7ce076c..9180b29a4d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -10561,42 +10561,48 @@ __metadata: languageName: node linkType: hard -"@inquirer/confirm@npm:^3.0.0": - version: 3.0.0 - resolution: "@inquirer/confirm@npm:3.0.0" +"@inquirer/confirm@npm:^5.0.0": + version: 5.0.1 + resolution: "@inquirer/confirm@npm:5.0.1" dependencies: - "@inquirer/core": ^7.0.0 - "@inquirer/type": ^1.2.0 - checksum: ed16dc0e5b22115474853ca57dbe3dacdcd15bcb37cc50020e8e76ff8d0875d62d8b63b93b3092c653faeb6c83a139eac997ff05638b0f1f78ae919f29ee29d4 + "@inquirer/core": ^10.0.1 + "@inquirer/type": ^3.0.0 + peerDependencies: + "@types/node": ">=18" + checksum: da640d36ce32350e9982bbaa5a19efac4a879bc1192f93e0ec284031e6dd82e9cf26c6e0caf777c051e200581aa4bcf0a6ece4118fd05352c5d5e2f1d7160c72 languageName: node linkType: hard -"@inquirer/core@npm:^7.0.0": - version: 7.0.0 - resolution: "@inquirer/core@npm:7.0.0" +"@inquirer/core@npm:^10.0.1": + version: 10.0.1 + resolution: "@inquirer/core@npm:10.0.1" dependencies: - "@inquirer/type": ^1.2.0 - "@types/mute-stream": ^0.0.4 - "@types/node": ^20.11.16 - "@types/wrap-ansi": ^3.0.0 + "@inquirer/figures": ^1.0.7 + "@inquirer/type": ^3.0.0 ansi-escapes: ^4.3.2 - chalk: ^4.1.2 - cli-spinners: ^2.9.2 cli-width: ^4.1.0 - figures: ^3.2.0 - mute-stream: ^1.0.0 - run-async: ^3.0.0 + mute-stream: ^2.0.0 signal-exit: ^4.1.0 strip-ansi: ^6.0.1 wrap-ansi: ^6.2.0 - checksum: 9496406e24fa68f877b4715ad0c1b8465e558bf0e669dac6a2bb55e97c4d044edd99a864cb7bf1e7db8409f8057b33edd1fe154009f85aea8a7f739837d748c9 + yoctocolors-cjs: ^2.1.2 + checksum: 64341dbb5fec9065df2b1f6b13a7ab980dd07f8617e6b1542eae1c4ce2bded1113be9e1f204256399333ce3f1440f6709b8cd4797b2f404279f02d1b756f774c languageName: node linkType: hard -"@inquirer/type@npm:^1.2.0": - version: 1.2.0 - resolution: "@inquirer/type@npm:1.2.0" - checksum: 50be288696a55cf860cee8aef7e10751b3d28694f1f6f5fc9c085bb3c45aa77f43961d40626d48f16a993f16f12a83b4282b16845a173fb1791ddb79bb1f93e8 +"@inquirer/figures@npm:^1.0.7": + version: 1.0.7 + resolution: "@inquirer/figures@npm:1.0.7" + checksum: 82edc998d0ace2f147eb332177f451c02e6a4a6e829d47817f5a4b3341c12cd0850b92ee3187d483328cce5824b870ed75e868850b6ac819447b9d56501f01cb + languageName: node + linkType: hard + +"@inquirer/type@npm:^3.0.0": + version: 3.0.0 + resolution: "@inquirer/type@npm:3.0.0" + peerDependencies: + "@types/node": ">=18" + checksum: fd4c265f0ed03e8da7ae2972c4e6b81932f535d9dd1e039e9e52b027cb8b72ae3c3309a3383ba513a8d3ae626de7dd3634387775cbdcbd100155ecbcaa65a657 languageName: node linkType: hard @@ -11914,9 +11920,9 @@ __metadata: languageName: node linkType: hard -"@mswjs/interceptors@npm:^0.35.8": - version: 0.35.9 - resolution: "@mswjs/interceptors@npm:0.35.9" +"@mswjs/interceptors@npm:^0.36.5": + version: 0.36.9 + resolution: "@mswjs/interceptors@npm:0.36.9" dependencies: "@open-draft/deferred-promise": ^2.2.0 "@open-draft/logger": ^0.3.0 @@ -11924,7 +11930,7 @@ __metadata: is-node-process: ^1.2.0 outvariant: ^1.4.3 strict-event-emitter: ^0.5.1 - checksum: 35b9382b94b7e3af962dc901db80bde99385645fb0b1f4cbaf64d58ff7181adb962430437db5b7d6db9db2e82399a3d1f319378d3c98e72c7ada8245180f0979 + checksum: 9d661ac98510e93356f546b0f2412e2d294baf650b3bd297995d7aa29ae4a939807368804ade7118edf8dca49f917bb901acfc1d6bbd4182817a9d30b3757d4f languageName: node linkType: hard @@ -18643,15 +18649,6 @@ __metadata: languageName: node linkType: hard -"@types/mute-stream@npm:^0.0.4": - version: 0.0.4 - resolution: "@types/mute-stream@npm:0.0.4" - dependencies: - "@types/node": "*" - checksum: af8d83ad7b68ea05d9357985daf81b6c9b73af4feacb2f5c2693c7fd3e13e5135ef1bd083ce8d5bdc8e97acd28563b61bb32dec4e4508a8067fcd31b8a098632 - languageName: node - linkType: hard - "@types/mysql@npm:2.15.26": version: 2.15.26 resolution: "@types/mysql@npm:2.15.26" @@ -18729,7 +18726,7 @@ __metadata: languageName: node linkType: hard -"@types/node@npm:^20.1.1, @types/node@npm:^20.11.16, @types/node@npm:^20.16.0": +"@types/node@npm:^20.1.1, @types/node@npm:^20.16.0": version: 20.16.13 resolution: "@types/node@npm:20.16.13" dependencies: @@ -19492,13 +19489,6 @@ __metadata: languageName: node linkType: hard -"@types/wrap-ansi@npm:^3.0.0": - version: 3.0.0 - resolution: "@types/wrap-ansi@npm:3.0.0" - checksum: 492f0610093b5802f45ca292777679bb9b381f1f32ae939956dd9e00bf81dba7cc99979687620a2817d9a7d8b59928207698166c47a0861c6a2e5c30d4aaf1e9 - languageName: node - linkType: hard - "@types/ws@npm:*, @types/ws@npm:^8.0.0, @types/ws@npm:^8.5.10, @types/ws@npm:^8.5.3, @types/ws@npm:^8.5.4": version: 8.5.12 resolution: "@types/ws@npm:8.5.12" @@ -23402,7 +23392,7 @@ __metadata: languageName: node linkType: hard -"cli-spinners@npm:^2.5.0, cli-spinners@npm:^2.9.2": +"cli-spinners@npm:^2.5.0": version: 2.9.2 resolution: "cli-spinners@npm:2.9.2" checksum: 1bd588289b28432e4676cb5d40505cfe3e53f2e4e10fbe05c8a710a154d6fe0ce7836844b00d6858f740f2ffe67cdc36e0fce9c7b6a8430e80e6388d5aa4956c @@ -27952,7 +27942,7 @@ __metadata: languageName: node linkType: hard -"figures@npm:^3.0.0, figures@npm:^3.2.0": +"figures@npm:^3.0.0": version: 3.2.0 resolution: "figures@npm:3.2.0" dependencies: @@ -35223,8 +35213,8 @@ __metadata: linkType: hard "msw@npm:^1.0.0, msw@npm:^1.2.1, msw@npm:^1.3.0, msw@npm:^1.3.1": - version: 1.3.4 - resolution: "msw@npm:1.3.4" + version: 1.3.5 + resolution: "msw@npm:1.3.5" dependencies: "@mswjs/cookies": ^0.2.2 "@mswjs/interceptors": ^0.17.10 @@ -35241,7 +35231,7 @@ __metadata: js-levenshtein: ^1.1.6 node-fetch: ^2.6.7 outvariant: ^1.4.0 - path-to-regexp: ^6.2.0 + path-to-regexp: ^6.3.0 strict-event-emitter: ^0.4.3 type-fest: ^2.19.0 yargs: ^17.3.1 @@ -35252,19 +35242,20 @@ __metadata: optional: true bin: msw: cli/index.js - checksum: 57646ecb831e98f00387e60bad4d535e426d406ae2645340e59500c219059be225f1f02a5ff21aee9daeb7a8bdde922a00fb82930781d27e3f3fdaf6b292c25f + checksum: 5e1d96d63c0ce07db94373b2315739abecb76dac32dcc6ce116c902ced3e61ef2b1c7ff87eed3627c93fe0588002717edab9c745ebdee29437ed0da4b3beb561 languageName: node linkType: hard "msw@npm:^2.0.0, msw@npm:^2.0.8": - version: 2.4.11 - resolution: "msw@npm:2.4.11" + version: 2.6.0 + resolution: "msw@npm:2.6.0" dependencies: "@bundled-es-modules/cookie": ^2.0.0 "@bundled-es-modules/statuses": ^1.0.1 "@bundled-es-modules/tough-cookie": ^0.1.6 - "@inquirer/confirm": ^3.0.0 - "@mswjs/interceptors": ^0.35.8 + "@inquirer/confirm": ^5.0.0 + "@mswjs/interceptors": ^0.36.5 + "@open-draft/deferred-promise": ^2.2.0 "@open-draft/until": ^2.1.0 "@types/cookie": ^0.6.0 "@types/statuses": ^2.0.4 @@ -35284,7 +35275,7 @@ __metadata: optional: true bin: msw: cli/index.js - checksum: f58634f5b7e7c1b69fd7d4f0d6ca09169719b8829e01f6bf5c4517b9c3159738d4a0cbd1b8c8b080fced82bf692edf72a064b419feb863f2d7e82ec852cf694b + checksum: ce1d6d5f926d4c55992e5a7078110780f7d05f6f23bddaa99c4e6a10e1ee3de11f0dbafaa2a916b70445ddbdd8368c2c92e5e50d0c60777a5709e693996c9bc8 languageName: node linkType: hard @@ -35335,10 +35326,10 @@ __metadata: languageName: node linkType: hard -"mute-stream@npm:^1.0.0": - version: 1.0.0 - resolution: "mute-stream@npm:1.0.0" - checksum: 36fc968b0e9c9c63029d4f9dc63911950a3bdf55c9a87f58d3a266289b67180201cade911e7699f8b2fa596b34c9db43dad37649e3f7fdd13c3bb9edb0017ee7 +"mute-stream@npm:^2.0.0": + version: 2.0.0 + resolution: "mute-stream@npm:2.0.0" + checksum: d2e4fd2f5aa342b89b98134a8d899d8ef9b0a6d69274c4af9df46faa2d97aeb1f2ce83d867880d6de63643c52386579b99139801e24e7526c3b9b0a6d1e18d6c languageName: node linkType: hard @@ -37236,7 +37227,7 @@ __metadata: languageName: node linkType: hard -"path-to-regexp@npm:^6.2.0, path-to-regexp@npm:^6.3.0": +"path-to-regexp@npm:^6.3.0": version: 6.3.0 resolution: "path-to-regexp@npm:6.3.0" checksum: eca78602e6434a1b6799d511d375ec044e8d7e28f5a48aa5c28d57d8152fb52f3fc62fb1cfc5dfa2198e1f041c2a82ed14043d75740a2fe60e91b5089a153250 @@ -40696,13 +40687,6 @@ __metadata: languageName: node linkType: hard -"run-async@npm:^3.0.0": - version: 3.0.0 - resolution: "run-async@npm:3.0.0" - checksum: 280c03d5a88603f48103fc6fd69f07fb0c392a1e0d319c34ec96a2516030e07ba06f79231a563c78698b882649c2fc1fda601bc84705f57d50efcd1fa506cfc0 - languageName: node - linkType: hard - "run-parallel@npm:^1.1.9": version: 1.2.0 resolution: "run-parallel@npm:1.2.0" @@ -45918,6 +45902,13 @@ __metadata: languageName: node linkType: hard +"yoctocolors-cjs@npm:^2.1.2": + version: 2.1.2 + resolution: "yoctocolors-cjs@npm:2.1.2" + checksum: 1c474d4b30a8c130e679279c5c2c33a0d48eba9684ffa0252cc64846c121fb56c3f25457fef902edbe1e2d7a7872130073a9fc8e795299d75e13fa3f5f548f1b + languageName: node + linkType: hard + "yoga-layout-prebuilt@npm:^1.9.6": version: 1.10.0 resolution: "yoga-layout-prebuilt@npm:1.10.0" From 006266f44c76cabe7f1378a04c64edeb248ecc72 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 4 Nov 2024 09:31:56 +0000 Subject: [PATCH 056/161] chore(deps): update dependency @backstage-community/plugin-puppetdb to v0.1.22 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/yarn.lock b/yarn.lock index 5d582b1414..db9b892133 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3398,14 +3398,14 @@ __metadata: linkType: hard "@backstage-community/plugin-puppetdb@npm:^0.1.18": - version: 0.1.21 - resolution: "@backstage-community/plugin-puppetdb@npm:0.1.21" + version: 0.1.22 + resolution: "@backstage-community/plugin-puppetdb@npm:0.1.22" dependencies: "@backstage/catalog-model": ^1.7.0 - "@backstage/core-components": ^0.15.0 - "@backstage/core-plugin-api": ^1.9.4 + "@backstage/core-components": ^0.15.1 + "@backstage/core-plugin-api": ^1.10.0 "@backstage/errors": ^1.2.4 - "@backstage/plugin-catalog-react": ^1.13.1 + "@backstage/plugin-catalog-react": ^1.14.0 "@material-ui/core": ^4.12.2 "@types/react": ^16.13.1 || ^17.0.0 || ^18.0.0 react-use: ^17.2.4 @@ -3413,7 +3413,7 @@ __metadata: react: ^16.13.1 || ^17.0.0 || ^18.0.0 react-dom: ^16.13.1 || ^17.0.0 || ^18.0.0 react-router-dom: 6.0.0-beta.0 || ^6.3.0 - checksum: 35ba13300ef26f705ebd7844bfb8e6dc9bda4db5a4d92d09a9d1dbff52c73a5c4175081fd6b3ef4612cb6018250eedd4e7e1db63b9f1339f723866813dae1595 + checksum: 256a5fb944099d0a2b0c09fc25250e9c9107a0a775d7fc9fb503758b089aa72e623b8eb3ef42761ac24fe1f71abbbbede61454ed131821e003ee7532546c7961 languageName: node linkType: hard @@ -6216,7 +6216,7 @@ __metadata: languageName: unknown linkType: soft -"@backstage/plugin-catalog-react@npm:^1.13.1, @backstage/plugin-catalog-react@npm:^1.9.3": +"@backstage/plugin-catalog-react@npm:^1.14.0, @backstage/plugin-catalog-react@npm:^1.9.3": version: 1.14.0 resolution: "@backstage/plugin-catalog-react@npm:1.14.0" dependencies: From fd820ecb4a9b6b15b14becb9dc9384f6e8ac62b2 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 4 Nov 2024 09:32:40 +0000 Subject: [PATCH 057/161] chore(deps): update dependency @backstage-community/plugin-stackstorm to v0.1.20 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/yarn.lock b/yarn.lock index 5d582b1414..c48740a4ff 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3418,11 +3418,11 @@ __metadata: linkType: hard "@backstage-community/plugin-stackstorm@npm:^0.1.16": - version: 0.1.19 - resolution: "@backstage-community/plugin-stackstorm@npm:0.1.19" + version: 0.1.20 + resolution: "@backstage-community/plugin-stackstorm@npm:0.1.20" dependencies: - "@backstage/core-components": ^0.15.0 - "@backstage/core-plugin-api": ^1.9.4 + "@backstage/core-components": ^0.15.1 + "@backstage/core-plugin-api": ^1.10.0 "@backstage/errors": ^1.2.4 "@material-ui/core": ^4.12.2 "@material-ui/icons": ^4.9.1 @@ -3432,7 +3432,7 @@ __metadata: react: ^16.13.1 || ^17.0.0 || ^18.0.0 react-dom: ^16.13.1 || ^17.0.0 || ^18.0.0 react-router-dom: 6.0.0-beta.0 || ^6.3.0 - checksum: 861f59dbdc65e8ed9cb0bbcf08761ce7ae4cc5e43b548e95e99d3411930e77ff946cf6498212d8e3347b1d95feeb2df2777c02f606e9fe224ed22e261e1e2a1d + checksum: d746d02bab55cd0b9028eb7426b5082b36329ab1dfb6f01cfdacde0c02d23e9dad605ea02ccc646a03a25f931d0e73ff377be95ded0a4ef4caefb67aeeedac6f languageName: node linkType: hard From e257b130a8506aa2014255ddf14bcce5eb8e483f Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 4 Nov 2024 10:13:53 +0000 Subject: [PATCH 058/161] chore(deps): update dependency vite to v5.4.10 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- storybook/yarn.lock | 6 +++--- yarn.lock | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/storybook/yarn.lock b/storybook/yarn.lock index 472470a565..6f1eee9171 100644 --- a/storybook/yarn.lock +++ b/storybook/yarn.lock @@ -5850,8 +5850,8 @@ __metadata: linkType: hard "vite@npm:^5.4.8": - version: 5.4.9 - resolution: "vite@npm:5.4.9" + version: 5.4.10 + resolution: "vite@npm:5.4.10" dependencies: esbuild: ^0.21.3 fsevents: ~2.3.3 @@ -5888,7 +5888,7 @@ __metadata: optional: true bin: vite: bin/vite.js - checksum: d3229e0618ece284af0478ec09c474a7a70ac369920716afdb6ebed8e320fd17a17c60afddba0d436698fe4837474cccd057c3e7d8270281b57506b78c5fbb8c + checksum: 4db3b8ca3eddbc312d0a95f505d16656e74c6dfa68d3b5eb54b6d6b0f7be1df348d469c43dc69db27dadc06b802f029d654da48f392324efd665ef2c0ca9ba9e languageName: node linkType: hard diff --git a/yarn.lock b/yarn.lock index 46db284f3e..a488d1bed5 100644 --- a/yarn.lock +++ b/yarn.lock @@ -44814,8 +44814,8 @@ __metadata: linkType: hard "vite@npm:^5.0.0": - version: 5.4.9 - resolution: "vite@npm:5.4.9" + version: 5.4.10 + resolution: "vite@npm:5.4.10" dependencies: esbuild: ^0.21.3 fsevents: ~2.3.3 @@ -44852,7 +44852,7 @@ __metadata: optional: true bin: vite: bin/vite.js - checksum: d3229e0618ece284af0478ec09c474a7a70ac369920716afdb6ebed8e320fd17a17c60afddba0d436698fe4837474cccd057c3e7d8270281b57506b78c5fbb8c + checksum: 4db3b8ca3eddbc312d0a95f505d16656e74c6dfa68d3b5eb54b6d6b0f7be1df348d469c43dc69db27dadc06b802f029d654da48f392324efd665ef2c0ca9ba9e languageName: node linkType: hard From a5cd59a0e020ea42a9457ede7140e5168960d31a Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 4 Nov 2024 10:14:23 +0000 Subject: [PATCH 059/161] fix(deps): update dependency @module-federation/enhanced to v0.6.15 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 161 ++++++++++++++++++++++++++++-------------------------- 1 file changed, 85 insertions(+), 76 deletions(-) diff --git a/yarn.lock b/yarn.lock index 46db284f3e..226bbf2f62 100644 --- a/yarn.lock +++ b/yarn.lock @@ -11604,38 +11604,38 @@ __metadata: languageName: node linkType: hard -"@module-federation/bridge-react-webpack-plugin@npm:0.6.11": - version: 0.6.11 - resolution: "@module-federation/bridge-react-webpack-plugin@npm:0.6.11" +"@module-federation/bridge-react-webpack-plugin@npm:0.6.15": + version: 0.6.15 + resolution: "@module-federation/bridge-react-webpack-plugin@npm:0.6.15" dependencies: - "@module-federation/sdk": 0.6.11 + "@module-federation/sdk": 0.6.15 "@types/semver": 7.5.8 semver: 7.6.3 - checksum: 8797a7c52ec7baf8269c979a1d3f45dfa3e817a99a4c14602f53c2e891affbda1fb1a796480bb5b15e6b2df133f775d62e33df178dfec9d94bf0b1b28830cb09 + checksum: 4cdcbe4c707e08f48bb684bd4759fbc71286b1f708f555d7c2f21c9e3648ecba3fc4e603eabbb04bb648d7d3b0e30848c54f2084d2f41c9124fde82c5b5f6b2d languageName: node linkType: hard -"@module-federation/data-prefetch@npm:0.6.11": - version: 0.6.11 - resolution: "@module-federation/data-prefetch@npm:0.6.11" +"@module-federation/data-prefetch@npm:0.6.15": + version: 0.6.15 + resolution: "@module-federation/data-prefetch@npm:0.6.15" dependencies: - "@module-federation/runtime": 0.6.11 - "@module-federation/sdk": 0.6.11 + "@module-federation/runtime": 0.6.15 + "@module-federation/sdk": 0.6.15 fs-extra: 9.1.0 peerDependencies: react: ">=16.9.0" react-dom: ">=16.9.0" - checksum: ca0f62c6e5103639e42ad0bcbaabc3aa4295eda90356888482bfa58bb961172939ce4b9689c7ef2ebdbebd4c886b3b11750af3da5189ad8646501ff251b08a8b + checksum: 05585cb7b92c98e62ea24e0cf314077a6c382026cea961be986c6323c8afd2801b014a04175a43d530101ffc354d1ffb74fd79211fe592e19be90be97f32b599 languageName: node linkType: hard -"@module-federation/dts-plugin@npm:0.6.11": - version: 0.6.11 - resolution: "@module-federation/dts-plugin@npm:0.6.11" +"@module-federation/dts-plugin@npm:0.6.15": + version: 0.6.15 + resolution: "@module-federation/dts-plugin@npm:0.6.15" dependencies: - "@module-federation/managers": 0.6.11 - "@module-federation/sdk": 0.6.11 - "@module-federation/third-party-dts-extractor": 0.6.11 + "@module-federation/managers": 0.6.15 + "@module-federation/sdk": 0.6.15 + "@module-federation/third-party-dts-extractor": 0.6.15 adm-zip: ^0.5.10 ansi-colors: ^4.1.3 axios: ^1.7.4 @@ -11654,22 +11654,22 @@ __metadata: peerDependenciesMeta: vue-tsc: optional: true - checksum: 6d2aba51294f0e9ec84c4c4c05d6f589359157332ef2c4af580ea39079198d87ad9fdc3c4e666335a64d1580c4a7a01b439de2844f471404e2900562387ff7b0 + checksum: 54b2b819c4c2eeb19cb44d08cf855d48bce96aa7db4b98f24dd2aad13dd6add611d9aafed52d1ad977ee1e4af44105916acec223ce59be9b8965a3073bdc03ca languageName: node linkType: hard "@module-federation/enhanced@npm:^0.6.0": - version: 0.6.11 - resolution: "@module-federation/enhanced@npm:0.6.11" + version: 0.6.15 + resolution: "@module-federation/enhanced@npm:0.6.15" dependencies: - "@module-federation/bridge-react-webpack-plugin": 0.6.11 - "@module-federation/data-prefetch": 0.6.11 - "@module-federation/dts-plugin": 0.6.11 - "@module-federation/managers": 0.6.11 - "@module-federation/manifest": 0.6.11 - "@module-federation/rspack": 0.6.11 - "@module-federation/runtime-tools": 0.6.11 - "@module-federation/sdk": 0.6.11 + "@module-federation/bridge-react-webpack-plugin": 0.6.15 + "@module-federation/data-prefetch": 0.6.15 + "@module-federation/dts-plugin": 0.6.15 + "@module-federation/managers": 0.6.15 + "@module-federation/manifest": 0.6.15 + "@module-federation/rspack": 0.6.15 + "@module-federation/runtime-tools": 0.6.15 + "@module-federation/sdk": 0.6.15 btoa: ^1.2.1 upath: 2.0.1 peerDependencies: @@ -11683,44 +11683,44 @@ __metadata: optional: true webpack: optional: true - checksum: f36ea6a4b70436ba365e92704f5acfcf2aec5faa2cf2dd18767f0243c0b2b901c19e2daed8a118f18668839691f42633577ba52231a1e58c12c1ccc42d842673 + checksum: d4d95cae3c5802ef8815c73969468d75ba02944114793935fa892632f5186de9e28f087e14b8d8d972ec24a59d3fcc3c147d959149038b598e816b870be0200d languageName: node linkType: hard -"@module-federation/managers@npm:0.6.11": - version: 0.6.11 - resolution: "@module-federation/managers@npm:0.6.11" +"@module-federation/managers@npm:0.6.15": + version: 0.6.15 + resolution: "@module-federation/managers@npm:0.6.15" dependencies: - "@module-federation/sdk": 0.6.11 + "@module-federation/sdk": 0.6.15 find-pkg: 2.0.0 fs-extra: 9.1.0 - checksum: fdab486ca08060203c23acb078fce0402229d379e5b0666883ab0fdf204ebcd6e597a4204b023839db048809d40ddb0eaca43885bd3594bda39345c65af1522d + checksum: d2b8f92393f1a2e25f03ab61dea2739baea984c551609bf3aca48ebd41a182dd0cc3b8bf1b88d0cae7844f964e680931c70d1924f99a7e582cab0fe64b8a4bcc languageName: node linkType: hard -"@module-federation/manifest@npm:0.6.11": - version: 0.6.11 - resolution: "@module-federation/manifest@npm:0.6.11" +"@module-federation/manifest@npm:0.6.15": + version: 0.6.15 + resolution: "@module-federation/manifest@npm:0.6.15" dependencies: - "@module-federation/dts-plugin": 0.6.11 - "@module-federation/managers": 0.6.11 - "@module-federation/sdk": 0.6.11 + "@module-federation/dts-plugin": 0.6.15 + "@module-federation/managers": 0.6.15 + "@module-federation/sdk": 0.6.15 chalk: 3.0.0 find-pkg: 2.0.0 - checksum: b9f28ccfd527b676fa71d18d846ee49129a28156591c301d95f1820b6b5b2bb41b1fcb2a5d9e4d1f637c61b39e665818d7bec3444ea64058bf46e416c9b7cf09 + checksum: b244f0bd74f664d58ed264ee986d70c7f09317c584d055db1a9cd9785eeeac8fa057af098b379fae2dce723f0498966c2bd077347684337923717760a6022837 languageName: node linkType: hard -"@module-federation/rspack@npm:0.6.11": - version: 0.6.11 - resolution: "@module-federation/rspack@npm:0.6.11" +"@module-federation/rspack@npm:0.6.15": + version: 0.6.15 + resolution: "@module-federation/rspack@npm:0.6.15" dependencies: - "@module-federation/bridge-react-webpack-plugin": 0.6.11 - "@module-federation/dts-plugin": 0.6.11 - "@module-federation/managers": 0.6.11 - "@module-federation/manifest": 0.6.11 - "@module-federation/runtime-tools": 0.6.11 - "@module-federation/sdk": 0.6.11 + "@module-federation/bridge-react-webpack-plugin": 0.6.15 + "@module-federation/dts-plugin": 0.6.15 + "@module-federation/managers": 0.6.15 + "@module-federation/manifest": 0.6.15 + "@module-federation/runtime-tools": 0.6.15 + "@module-federation/sdk": 0.6.15 peerDependencies: typescript: ^4.9.0 || ^5.0.0 vue-tsc: ">=1.0.24" @@ -11729,7 +11729,7 @@ __metadata: optional: true vue-tsc: optional: true - checksum: 9e134f18fb0c5cf9fb411dd02709a2e936a630e7f39ac74f1fd07a7b8dfa231d9c001b15c52e9a8fbb8cd5688c2b58fa8594bd294ab561b47e283827a48b8656 + checksum: 7f987e8c6a0d9f245410987aefe75fae0d0aa0da177f33c5c41d210a7d4ba31a22062933c00307fef69124276ec73aff472955e11a0cacb232c2b88ea6911f29 languageName: node linkType: hard @@ -11743,13 +11743,13 @@ __metadata: languageName: node linkType: hard -"@module-federation/runtime-tools@npm:0.6.11": - version: 0.6.11 - resolution: "@module-federation/runtime-tools@npm:0.6.11" +"@module-federation/runtime-tools@npm:0.6.15": + version: 0.6.15 + resolution: "@module-federation/runtime-tools@npm:0.6.15" dependencies: - "@module-federation/runtime": 0.6.11 - "@module-federation/webpack-bundler-runtime": 0.6.11 - checksum: 15ab0bee1c4e02b0e07ee059410f2a166f0afc6b13b66293a9681e4fa9d185fa0aa232a762ebd3aa54f1c5f53ad0b367fdd09a5f6116f1b0fd6eadf4ca02a0a2 + "@module-federation/runtime": 0.6.15 + "@module-federation/webpack-bundler-runtime": 0.6.15 + checksum: 776ceabb2506f5c67dec0ef3698d76f3dc22658e9d501b0579dcc528e8ff901e84469534d898744b485965ea14e4c0701d84ac5880de6e72cd0388ee83f77e93 languageName: node linkType: hard @@ -11762,12 +11762,12 @@ __metadata: languageName: node linkType: hard -"@module-federation/runtime@npm:0.6.11": - version: 0.6.11 - resolution: "@module-federation/runtime@npm:0.6.11" +"@module-federation/runtime@npm:0.6.15": + version: 0.6.15 + resolution: "@module-federation/runtime@npm:0.6.15" dependencies: - "@module-federation/sdk": 0.6.11 - checksum: 3ddc92de3ad242177ba916f5f410b29f31017820b7c103defe8f964e8145ba8fb274b727ef8b92273c1ac4d53e1dd2cee61879c7710ea78180d8ff67387c0cf9 + "@module-federation/sdk": 0.6.15 + checksum: 624d087f48212b78a912031d7e6b60e4a56b51755744075e2f911e1958808269e6a440bfb81700b48c64fb6cb7e115bc6e67638ae33bd61bab67866172a12a9e languageName: node linkType: hard @@ -11778,21 +11778,23 @@ __metadata: languageName: node linkType: hard -"@module-federation/sdk@npm:0.6.11": - version: 0.6.11 - resolution: "@module-federation/sdk@npm:0.6.11" - checksum: d77811c08fcfce7e0922112593f1990a35eafe9e1fbfc0bdd99cb044fed29a66e33669b6f31ffafcdf7f4430b25f541dc79ca94d0e52b1f4bb0d7a7ec13ce765 +"@module-federation/sdk@npm:0.6.15": + version: 0.6.15 + resolution: "@module-federation/sdk@npm:0.6.15" + dependencies: + isomorphic-rslog: 0.0.4 + checksum: a84d392bdfaf62cc0acc444c60a5c26a303b6bb17fcc27289313aff5ec7f0b70bb2e1fa8d1e4139298d1daabfaaea3838f1671683f0a57fbc8af3e45a87bf586 languageName: node linkType: hard -"@module-federation/third-party-dts-extractor@npm:0.6.11": - version: 0.6.11 - resolution: "@module-federation/third-party-dts-extractor@npm:0.6.11" +"@module-federation/third-party-dts-extractor@npm:0.6.15": + version: 0.6.15 + resolution: "@module-federation/third-party-dts-extractor@npm:0.6.15" dependencies: find-pkg: 2.0.0 fs-extra: 9.1.0 resolve: 1.22.8 - checksum: deb3a80ff83b983b483813e40362140b486ac6a10286117270f75d66bb7c27aa4f9ec4763faeda5e351785eac1a6f1c5f82df98a737708099e9a2a5075746575 + checksum: 7a75f7efc56729d8baf3e9dd90ffce2027d478551964ff912e9b488b1981a32b006b4ccfbb277b4849ad7848c40c9fd394ad3f4189324c0c407ec7562ec0a699 languageName: node linkType: hard @@ -11806,13 +11808,13 @@ __metadata: languageName: node linkType: hard -"@module-federation/webpack-bundler-runtime@npm:0.6.11": - version: 0.6.11 - resolution: "@module-federation/webpack-bundler-runtime@npm:0.6.11" +"@module-federation/webpack-bundler-runtime@npm:0.6.15": + version: 0.6.15 + resolution: "@module-federation/webpack-bundler-runtime@npm:0.6.15" dependencies: - "@module-federation/runtime": 0.6.11 - "@module-federation/sdk": 0.6.11 - checksum: 3b4eea61b04f966d4ac74f6d59b43d75121692b2c2b7228a890646c68b356c03f7da1560cce159a1fbb5212d5ad5a6b8431b1eafeb19b4d37f38c03df2a6fb79 + "@module-federation/runtime": 0.6.15 + "@module-federation/sdk": 0.6.15 + checksum: 6fb0e412779666b523cd10500d2217130c8799ee3a9f0b72eb676cc6efc1461a391ca9beff5852e41eea7e671672b994dfa08a6efb3eb990acab5c6b3cb8b4c2 languageName: node linkType: hard @@ -31316,6 +31318,13 @@ __metadata: languageName: node linkType: hard +"isomorphic-rslog@npm:0.0.4": + version: 0.0.4 + resolution: "isomorphic-rslog@npm:0.0.4" + checksum: 8d0594fb31bbb3fbd44355294a6129f5734db58d3445344180add2b538c323cfce8961efd645fd33e6ecc6ce50065b2e917cf14517c26cdd0cd3fb9dace2d132 + languageName: node + linkType: hard + "isomorphic-timers-promises@npm:^1.0.1": version: 1.0.1 resolution: "isomorphic-timers-promises@npm:1.0.1" From a3c162d5fba1710fa8c81f36864a72c0e3618cf1 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 4 Nov 2024 11:13:05 +0000 Subject: [PATCH 060/161] chore(deps): update dependency @types/classnames to v2.3.4 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/yarn.lock b/yarn.lock index d62a20c802..25f8e3f905 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4335,7 +4335,7 @@ __metadata: languageName: node linkType: hard -"@backstage/core-components@npm:^0.15.0, @backstage/core-components@npm:^0.15.1": +"@backstage/core-components@npm:^0.15.1": version: 0.15.1 resolution: "@backstage/core-components@npm:0.15.1" dependencies: @@ -4465,7 +4465,7 @@ __metadata: languageName: unknown linkType: soft -"@backstage/core-plugin-api@^1.10.0, @backstage/core-plugin-api@^1.8.2, @backstage/core-plugin-api@^1.9.4, @backstage/core-plugin-api@workspace:^, @backstage/core-plugin-api@workspace:packages/core-plugin-api": +"@backstage/core-plugin-api@^1.10.0, @backstage/core-plugin-api@^1.8.2, @backstage/core-plugin-api@workspace:^, @backstage/core-plugin-api@workspace:packages/core-plugin-api": version: 0.0.0-use.local resolution: "@backstage/core-plugin-api@workspace:packages/core-plugin-api" dependencies: From bc460719b5754b90fa601a2cfa545e234bdc9d5a Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 4 Nov 2024 11:13:46 +0000 Subject: [PATCH 061/161] fix(deps): update dependency @smithy/node-http-handler to v3.2.5 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 56 +++++++++++++++++++++++++++---------------------------- 1 file changed, 28 insertions(+), 28 deletions(-) diff --git a/yarn.lock b/yarn.lock index d62a20c802..cf818b0c16 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4335,7 +4335,7 @@ __metadata: languageName: node linkType: hard -"@backstage/core-components@npm:^0.15.0, @backstage/core-components@npm:^0.15.1": +"@backstage/core-components@npm:^0.15.1": version: 0.15.1 resolution: "@backstage/core-components@npm:0.15.1" dependencies: @@ -4465,7 +4465,7 @@ __metadata: languageName: unknown linkType: soft -"@backstage/core-plugin-api@^1.10.0, @backstage/core-plugin-api@^1.8.2, @backstage/core-plugin-api@^1.9.4, @backstage/core-plugin-api@workspace:^, @backstage/core-plugin-api@workspace:packages/core-plugin-api": +"@backstage/core-plugin-api@^1.10.0, @backstage/core-plugin-api@^1.8.2, @backstage/core-plugin-api@workspace:^, @backstage/core-plugin-api@workspace:packages/core-plugin-api": version: 0.0.0-use.local resolution: "@backstage/core-plugin-api@workspace:packages/core-plugin-api" dependencies: @@ -15746,13 +15746,13 @@ __metadata: languageName: node linkType: hard -"@smithy/abort-controller@npm:^3.1.2, @smithy/abort-controller@npm:^3.1.5": - version: 3.1.5 - resolution: "@smithy/abort-controller@npm:3.1.5" +"@smithy/abort-controller@npm:^3.1.2, @smithy/abort-controller@npm:^3.1.6": + version: 3.1.6 + resolution: "@smithy/abort-controller@npm:3.1.6" dependencies: - "@smithy/types": ^3.5.0 + "@smithy/types": ^3.6.0 tslib: ^2.6.2 - checksum: 538c88d6dfe84d92a7dead4eb149d48bc59857df8235057727c0481e851b0ceea6aabfd5cc059c9e37e66fbadead461c85d6a7c8436e2db6681f06333e814281 + checksum: abba34cc47b6f7951402da1f94465616b84dedf55e0b0467b53f7848b9cb3e82b94869fa637278aa2f65809613e872582791053fd23299e026edada4a5ec1c1c languageName: node linkType: hard @@ -16037,15 +16037,15 @@ __metadata: linkType: hard "@smithy/node-http-handler@npm:^3.0.0, @smithy/node-http-handler@npm:^3.2.0": - version: 3.2.4 - resolution: "@smithy/node-http-handler@npm:3.2.4" + version: 3.2.5 + resolution: "@smithy/node-http-handler@npm:3.2.5" dependencies: - "@smithy/abort-controller": ^3.1.5 - "@smithy/protocol-http": ^4.1.4 - "@smithy/querystring-builder": ^3.0.7 - "@smithy/types": ^3.5.0 + "@smithy/abort-controller": ^3.1.6 + "@smithy/protocol-http": ^4.1.5 + "@smithy/querystring-builder": ^3.0.8 + "@smithy/types": ^3.6.0 tslib: ^2.6.2 - checksum: 658934366953828af04e5f8d0229f24e8ff783c1bd34b179203099321e4b41b19dfd921c3ef431d8067fc2d49a0c806d0c758fff6ea10606e092480dcf6b0f26 + checksum: ea8d4148dd760f031f9eeb2aec2480685bb1a40d7ac9c482eb3170df0316cae58433a6c803d85b046c132a19b8b4874741fae054355b5584facbd46c18889c83 languageName: node linkType: hard @@ -16059,24 +16059,24 @@ __metadata: languageName: node linkType: hard -"@smithy/protocol-http@npm:^4.1.1, @smithy/protocol-http@npm:^4.1.4": - version: 4.1.4 - resolution: "@smithy/protocol-http@npm:4.1.4" +"@smithy/protocol-http@npm:^4.1.1, @smithy/protocol-http@npm:^4.1.5": + version: 4.1.5 + resolution: "@smithy/protocol-http@npm:4.1.5" dependencies: - "@smithy/types": ^3.5.0 + "@smithy/types": ^3.6.0 tslib: ^2.6.2 - checksum: c0655e2031ec6ae96d63a125b76ca9bb46b3e4b8f4436ef0ea9bcf08303c1b6cdd4f0d17a1cd87cfdbe60bde34e5001d65f91d4e3eaa24cf560ed718967686de + checksum: 2e581594d03ff367ebc0a1ab0443e8b148f39a3ea810333861f4aed639239e5a261bedbb49f6555cfdb9682b88cd881715764c2dfe7e18a7a003385a0b6200d5 languageName: node linkType: hard -"@smithy/querystring-builder@npm:^3.0.4, @smithy/querystring-builder@npm:^3.0.7": - version: 3.0.7 - resolution: "@smithy/querystring-builder@npm:3.0.7" +"@smithy/querystring-builder@npm:^3.0.4, @smithy/querystring-builder@npm:^3.0.8": + version: 3.0.8 + resolution: "@smithy/querystring-builder@npm:3.0.8" dependencies: - "@smithy/types": ^3.5.0 + "@smithy/types": ^3.6.0 "@smithy/util-uri-escape": ^3.0.0 tslib: ^2.6.2 - checksum: 0c41ce1993ce4b7dc509bc1fa50c42000a1cb5801601fc28d9113494349c337e88f77bff998f0debf0be0eba41d67d653a6648eea0f5b3b1e0f8a3cd57229631 + checksum: b07a766fb1e94e06116aef6534a31bbd4bb1bb94844d61c67615316d19aac82f94781fab779655bc03a46d70dda9caf3ad991a3e41548fbbba92783103f4f43e languageName: node linkType: hard @@ -16148,12 +16148,12 @@ __metadata: languageName: node linkType: hard -"@smithy/types@npm:^3.4.0, @smithy/types@npm:^3.5.0": - version: 3.5.0 - resolution: "@smithy/types@npm:3.5.0" +"@smithy/types@npm:^3.4.0, @smithy/types@npm:^3.6.0": + version: 3.6.0 + resolution: "@smithy/types@npm:3.6.0" dependencies: tslib: ^2.6.2 - checksum: 5d297005549991f6928daf038e0610c959423add6e435af970b8c8dcac988bf62b0cdbf4dd5df43197d9bc7af5c290792f17af6e2f5051be2ffa40dd98ab4659 + checksum: 4f581dc1c3e2dee8e1134fafb47de2c301330ea668214eb1a81d26b85acdb48a7e52008da0d15a402e998a79bed285a74b88949a5a4a3fe0aef38c28620ab795 languageName: node linkType: hard From a79d7c8cef45fd98d507f79d262d54ad4b85b5ea Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 4 Nov 2024 12:24:42 +0000 Subject: [PATCH 062/161] fix(deps): update dependency @types/passport to v1.0.17 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index cf818b0c16..ba6436fcbb 100644 --- a/yarn.lock +++ b/yarn.lock @@ -18849,11 +18849,11 @@ __metadata: linkType: hard "@types/passport@npm:*, @types/passport@npm:^1.0.16, @types/passport@npm:^1.0.3": - version: 1.0.16 - resolution: "@types/passport@npm:1.0.16" + version: 1.0.17 + resolution: "@types/passport@npm:1.0.17" dependencies: "@types/express": "*" - checksum: e4a02fa338536eb82694ea548689a7214b1ca98df6a896080daa2b6a8859db02a1e6244eeefaf6f3cc9c268239bb4a7912049a9ed86192144a65c10e55219f80 + checksum: b131d5963576e759f972f038bb7461dcaaa1dc484a488eb093eac6a9f8d4f51c9b7adcd432ae84e3ecb68839dfba16f6d569f36664330b6af59d36ff3c4c64e2 languageName: node linkType: hard From 5e7a851e66b5fac97818f9c455334243e1cb799a Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 4 Nov 2024 12:26:13 +0000 Subject: [PATCH 063/161] fix(deps): update dependency @uiw/react-codemirror to v4.23.6 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/yarn.lock b/yarn.lock index cf818b0c16..bd2fc8a6b4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -19819,9 +19819,9 @@ __metadata: languageName: node linkType: hard -"@uiw/codemirror-extensions-basic-setup@npm:4.23.5": - version: 4.23.5 - resolution: "@uiw/codemirror-extensions-basic-setup@npm:4.23.5" +"@uiw/codemirror-extensions-basic-setup@npm:4.23.6": + version: 4.23.6 + resolution: "@uiw/codemirror-extensions-basic-setup@npm:4.23.6" dependencies: "@codemirror/autocomplete": ^6.0.0 "@codemirror/commands": ^6.0.0 @@ -19838,19 +19838,19 @@ __metadata: "@codemirror/search": ">=6.0.0" "@codemirror/state": ">=6.0.0" "@codemirror/view": ">=6.0.0" - checksum: 485fa922219c28dd31be529d8ef3a741659bc6cf3a5ab28d123dc5a8257d7c027c349c95e990a0cac0691aa1bcb8b3a3d56c5da8834984c7279fec2b41e16245 + checksum: dc5a845d80c0659883f5299150034145d9b0d1879a926d5f6a9c21d839351715ea9b5dba0272cfb869e9139d40d49e86c5df12e504874cebc8cf6e9824ec4b98 languageName: node linkType: hard "@uiw/react-codemirror@npm:^4.9.3": - version: 4.23.5 - resolution: "@uiw/react-codemirror@npm:4.23.5" + version: 4.23.6 + resolution: "@uiw/react-codemirror@npm:4.23.6" dependencies: "@babel/runtime": ^7.18.6 "@codemirror/commands": ^6.1.0 "@codemirror/state": ^6.1.1 "@codemirror/theme-one-dark": ^6.0.0 - "@uiw/codemirror-extensions-basic-setup": 4.23.5 + "@uiw/codemirror-extensions-basic-setup": 4.23.6 codemirror: ^6.0.0 peerDependencies: "@babel/runtime": ">=7.11.0" @@ -19860,7 +19860,7 @@ __metadata: codemirror: ">=6.0.0" react: ">=16.8.0" react-dom: ">=16.8.0" - checksum: 0e93d4bf1da9cfd6ccec7f76c418aed58755301a2508b905877fe5ef9f12f8c647791c48f657cbac5325b985804b92cb3dffd904a76336a969861f72dae19927 + checksum: 83ff09c6e5df919b3fef181798b138803a987efab4bebdaad09daae1701167cb4a734fa0b18adcc043d5a2fbd3a997bbda461d1a60972bfccdbbca21803e33fe languageName: node linkType: hard From d60ee096cbb90af44d0a4a6194f18414b39ef7b8 Mon Sep 17 00:00:00 2001 From: Johan Haals Date: Mon, 4 Nov 2024 13:32:44 +0100 Subject: [PATCH 064/161] Remove vacation notice Back to work! Signed-off-by: Johan Haals --- README.md | 3 --- 1 file changed, 3 deletions(-) diff --git a/README.md b/README.md index 646e310481..64a7b34b64 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,3 @@ -> [!NOTE] -> 🏖 From Monday October 28th through November 4th, maintainers and Spotify employees will be on vacation due to Wellness Week. Expect the project to move a little slower than normal, and support to be limited. Normal service will resume after that! 🏝 - [![headline](docs/assets/headline.png)](https://backstage.io/) # [Backstage](https://backstage.io) From 35b03fb3b9e5f7d1f55cd699af078843116bf792 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 4 Nov 2024 13:19:51 +0000 Subject: [PATCH 065/161] fix(deps): update dependency compression to v1.7.5 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 27 +++++++++++++++++---------- 1 file changed, 17 insertions(+), 10 deletions(-) diff --git a/yarn.lock b/yarn.lock index 1e08a256d6..ebaf85b06e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -20991,7 +20991,7 @@ __metadata: languageName: node linkType: hard -"accepts@npm:^1.3.5, accepts@npm:^1.3.7, accepts@npm:~1.3.4, accepts@npm:~1.3.5, accepts@npm:~1.3.8": +"accepts@npm:^1.3.5, accepts@npm:^1.3.7, accepts@npm:~1.3.4, accepts@npm:~1.3.8": version: 1.3.8 resolution: "accepts@npm:1.3.8" dependencies: @@ -23910,7 +23910,7 @@ __metadata: languageName: node linkType: hard -"compressible@npm:~2.0.16": +"compressible@npm:~2.0.18": version: 2.0.18 resolution: "compressible@npm:2.0.18" dependencies: @@ -23920,17 +23920,17 @@ __metadata: linkType: hard "compression@npm:^1.7.4": - version: 1.7.4 - resolution: "compression@npm:1.7.4" + version: 1.7.5 + resolution: "compression@npm:1.7.5" dependencies: - accepts: ~1.3.5 - bytes: 3.0.0 - compressible: ~2.0.16 + bytes: 3.1.2 + compressible: ~2.0.18 debug: 2.6.9 + negotiator: ~0.6.4 on-headers: ~1.0.2 - safe-buffer: 5.1.2 + safe-buffer: 5.2.1 vary: ~1.1.2 - checksum: 35c0f2eb1f28418978615dc1bc02075b34b1568f7f56c62d60f4214d4b7cc00d0f6d282b5f8a954f59872396bd770b6b15ffd8aa94c67d4bce9b8887b906999b + checksum: d624b5562492518eee82c4f1381ea36f69f1f10b4283bfc2dcafd7d4d7eeed17c3f0e8f2951798594b7064db7ac5a6198df34816bde2d56bb7c75ce1570880e9 languageName: node linkType: hard @@ -35472,13 +35472,20 @@ __metadata: languageName: node linkType: hard -"negotiator@npm:0.6.3, negotiator@npm:^0.6.2, negotiator@npm:^0.6.3": +"negotiator@npm:0.6.3": version: 0.6.3 resolution: "negotiator@npm:0.6.3" checksum: b8ffeb1e262eff7968fc90a2b6767b04cfd9842582a9d0ece0af7049537266e7b2506dfb1d107a32f06dd849ab2aea834d5830f7f4d0e5cb7d36e1ae55d021d9 languageName: node linkType: hard +"negotiator@npm:^0.6.2, negotiator@npm:^0.6.3, negotiator@npm:~0.6.4": + version: 0.6.4 + resolution: "negotiator@npm:0.6.4" + checksum: 7ded10aa02a0707d1d12a9973fdb5954f98547ca7beb60e31cb3a403cc6e8f11138db7a3b0128425cf836fc85d145ec4ce983b2bdf83dca436af879c2d683510 + languageName: node + linkType: hard + "neo-async@npm:^2.5.0, neo-async@npm:^2.6.2": version: 2.6.2 resolution: "neo-async@npm:2.6.2" From 015437535ffd6f209773464ceb017f5cd77718d3 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 4 Nov 2024 13:21:05 +0000 Subject: [PATCH 066/161] fix(deps): update dependency cron to v3.1.8 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/yarn.lock b/yarn.lock index 1e08a256d6..45677ea3ca 100644 --- a/yarn.lock +++ b/yarn.lock @@ -24457,12 +24457,12 @@ __metadata: linkType: hard "cron@npm:^3.0.0": - version: 3.1.7 - resolution: "cron@npm:3.1.7" + version: 3.1.8 + resolution: "cron@npm:3.1.8" dependencies: "@types/luxon": ~3.4.0 - luxon: ~3.4.0 - checksum: d98ee5297543c138221d96dd49270bf6576db80134e6041f4ce4a3c0cb6060863d76910209b34fee66fbf134461449ec3bd283d6a76d1c50da220cde7fc10c65 + luxon: ~3.5.0 + checksum: 470ada23ae25b64fe9d529d3421df1d9a18716693c710e617ba79263a7883d7d5292f9ef0e067fd47b82019b9fa313a461dacd381c8feadb136849b460ddee4c languageName: node linkType: hard @@ -33718,20 +33718,13 @@ __metadata: languageName: node linkType: hard -"luxon@npm:^3.0.0, luxon@npm:^3.2.1, luxon@npm:^3.4.3, luxon@npm:^3.5.0": +"luxon@npm:^3.0.0, luxon@npm:^3.2.1, luxon@npm:^3.4.3, luxon@npm:^3.5.0, luxon@npm:~3.5.0": version: 3.5.0 resolution: "luxon@npm:3.5.0" checksum: f290fe5788c8e51e748744f05092160d4be12150dca70f9fadc0d233e53d60ce86acd82e7d909a114730a136a77e56f0d3ebac6141bbb82fd310969a4704825b languageName: node linkType: hard -"luxon@npm:~3.4.0": - version: 3.4.4 - resolution: "luxon@npm:3.4.4" - checksum: 36c1f99c4796ee4bfddf7dc94fa87815add43ebc44c8934c924946260a58512f0fd2743a629302885df7f35ccbd2d13f178c15df046d0e3b6eb71db178f1c60c - languageName: node - linkType: hard - "lz-string@npm:^1.5.0": version: 1.5.0 resolution: "lz-string@npm:1.5.0" From a92d219f08ff64262325efc29557fd3bc7a02a64 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 4 Nov 2024 14:15:16 +0000 Subject: [PATCH 067/161] fix(deps): update dependency eslint-plugin-jsx-a11y to v6.10.2 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 108 ++++++++++++++---------------------------------------- 1 file changed, 27 insertions(+), 81 deletions(-) diff --git a/yarn.lock b/yarn.lock index ebaf85b06e..d5ea3d9142 100644 --- a/yarn.lock +++ b/yarn.lock @@ -21546,7 +21546,7 @@ __metadata: languageName: node linkType: hard -"aria-query@npm:5.3.0, aria-query@npm:^5.0.0": +"aria-query@npm:5.3.0": version: 5.3.0 resolution: "aria-query@npm:5.3.0" dependencies: @@ -21555,16 +21555,14 @@ __metadata: languageName: node linkType: hard -"aria-query@npm:~5.1.3": - version: 5.1.3 - resolution: "aria-query@npm:5.1.3" - dependencies: - deep-equal: ^2.0.5 - checksum: 929ff95f02857b650fb4cbcd2f41072eee2f46159a6605ea03bf63aa572e35ffdff43d69e815ddc462e16e07de8faba3978afc2813650b4448ee18c9895d982b +"aria-query@npm:^5.0.0, aria-query@npm:^5.3.2": + version: 5.3.2 + resolution: "aria-query@npm:5.3.2" + checksum: d971175c85c10df0f6d14adfe6f1292409196114ab3c62f238e208b53103686f46cc70695a4f775b73bc65f6a09b6a092fd963c4f3a5a7d690c8fc5094925717 languageName: node linkType: hard -"array-buffer-byte-length@npm:^1.0.0, array-buffer-byte-length@npm:^1.0.1": +"array-buffer-byte-length@npm:^1.0.1": version: 1.0.1 resolution: "array-buffer-byte-length@npm:1.0.1" dependencies: @@ -25212,32 +25210,6 @@ __metadata: languageName: node linkType: hard -"deep-equal@npm:^2.0.5": - version: 2.2.3 - resolution: "deep-equal@npm:2.2.3" - dependencies: - array-buffer-byte-length: ^1.0.0 - call-bind: ^1.0.5 - es-get-iterator: ^1.1.3 - get-intrinsic: ^1.2.2 - is-arguments: ^1.1.1 - is-array-buffer: ^3.0.2 - is-date-object: ^1.0.5 - is-regex: ^1.1.4 - is-shared-array-buffer: ^1.0.2 - isarray: ^2.0.5 - object-is: ^1.1.5 - object-keys: ^1.1.1 - object.assign: ^4.1.4 - regexp.prototype.flags: ^1.5.1 - side-channel: ^1.0.4 - which-boxed-primitive: ^1.0.2 - which-collection: ^1.0.1 - which-typed-array: ^1.1.13 - checksum: ee8852f23e4d20a5626c13b02f415ba443a1b30b4b3d39eaf366d59c4a85e6545d7ec917db44d476a85ae5a86064f7e5f7af7479f38f113995ba869f3a1ddc53 - languageName: node - linkType: hard - "deep-equal@npm:~1.0.1": version: 1.0.1 resolution: "deep-equal@npm:1.0.1" @@ -26303,24 +26275,7 @@ __metadata: languageName: node linkType: hard -"es-get-iterator@npm:^1.1.3": - version: 1.1.3 - resolution: "es-get-iterator@npm:1.1.3" - dependencies: - call-bind: ^1.0.2 - get-intrinsic: ^1.1.3 - has-symbols: ^1.0.3 - is-arguments: ^1.1.1 - is-map: ^2.0.2 - is-set: ^2.0.2 - is-string: ^1.0.7 - isarray: ^2.0.5 - stop-iteration-iterator: ^1.0.0 - checksum: 8fa118da42667a01a7c7529f8a8cca514feeff243feec1ce0bb73baaa3514560bd09d2b3438873cf8a5aaec5d52da248131de153b28e2638a061b6e4df13267d - languageName: node - linkType: hard - -"es-iterator-helpers@npm:^1.0.19, es-iterator-helpers@npm:^1.1.0": +"es-iterator-helpers@npm:^1.1.0": version: 1.1.0 resolution: "es-iterator-helpers@npm:1.1.0" dependencies: @@ -26822,10 +26777,10 @@ __metadata: linkType: hard "eslint-plugin-jsx-a11y@npm:^6.5.1": - version: 6.10.0 - resolution: "eslint-plugin-jsx-a11y@npm:6.10.0" + version: 6.10.2 + resolution: "eslint-plugin-jsx-a11y@npm:6.10.2" dependencies: - aria-query: ~5.1.3 + aria-query: ^5.3.2 array-includes: ^3.1.8 array.prototype.flatmap: ^1.3.2 ast-types-flow: ^0.0.8 @@ -26833,17 +26788,16 @@ __metadata: axobject-query: ^4.1.0 damerau-levenshtein: ^1.0.8 emoji-regex: ^9.2.2 - es-iterator-helpers: ^1.0.19 hasown: ^2.0.2 jsx-ast-utils: ^3.3.5 language-tags: ^1.0.9 minimatch: ^3.1.2 object.fromentries: ^2.0.8 safe-regex-test: ^1.0.3 - string.prototype.includes: ^2.0.0 + string.prototype.includes: ^2.0.1 peerDependencies: eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9 - checksum: 1009deca12ddbe3624586bc5fc3534ca98d00a5841a2563cb6abd9339b984f0a99075dc2a703a517f4087eb84d659c87e60beda17645883de2ba1d86f2b20c96 + checksum: 0cc861398fa26ada61ed5703eef5b335495fcb96253263dcd5e399488ff019a2636372021baacc040e3560d1a34bfcd5d5ad9f1754f44cd0509c956f7df94050 languageName: node linkType: hard @@ -28706,7 +28660,7 @@ __metadata: languageName: node linkType: hard -"get-intrinsic@npm:^1.1.1, get-intrinsic@npm:^1.1.3, get-intrinsic@npm:^1.2.1, get-intrinsic@npm:^1.2.2, get-intrinsic@npm:^1.2.3, get-intrinsic@npm:^1.2.4": +"get-intrinsic@npm:^1.1.1, get-intrinsic@npm:^1.1.3, get-intrinsic@npm:^1.2.1, get-intrinsic@npm:^1.2.3, get-intrinsic@npm:^1.2.4": version: 1.2.4 resolution: "get-intrinsic@npm:1.2.4" dependencies: @@ -30411,7 +30365,7 @@ __metadata: languageName: node linkType: hard -"internal-slot@npm:^1.0.4, internal-slot@npm:^1.0.7": +"internal-slot@npm:^1.0.7": version: 1.0.7 resolution: "internal-slot@npm:1.0.7" dependencies: @@ -30553,7 +30507,7 @@ __metadata: languageName: node linkType: hard -"is-arguments@npm:^1.0.4, is-arguments@npm:^1.1.1": +"is-arguments@npm:^1.0.4": version: 1.1.1 resolution: "is-arguments@npm:1.1.1" dependencies: @@ -30563,7 +30517,7 @@ __metadata: languageName: node linkType: hard -"is-array-buffer@npm:^3.0.2, is-array-buffer@npm:^3.0.4": +"is-array-buffer@npm:^3.0.4": version: 3.0.4 resolution: "is-array-buffer@npm:3.0.4" dependencies: @@ -30847,7 +30801,7 @@ __metadata: languageName: node linkType: hard -"is-map@npm:^2.0.1, is-map@npm:^2.0.2": +"is-map@npm:^2.0.1": version: 2.0.3 resolution: "is-map@npm:2.0.3" checksum: e6ce5f6380f32b141b3153e6ba9074892bbbbd655e92e7ba5ff195239777e767a976dcd4e22f864accaf30e53ebf961ab1995424aef91af68788f0591b7396cc @@ -31050,7 +31004,7 @@ __metadata: languageName: node linkType: hard -"is-set@npm:^2.0.1, is-set@npm:^2.0.2": +"is-set@npm:^2.0.1": version: 2.0.3 resolution: "is-set@npm:2.0.3" checksum: 36e3f8c44bdbe9496c9689762cc4110f6a6a12b767c5d74c0398176aa2678d4467e3bf07595556f2dba897751bde1422480212b97d973c7b08a343100b0c0dfe @@ -39955,7 +39909,7 @@ __metadata: languageName: node linkType: hard -"regexp.prototype.flags@npm:^1.5.1, regexp.prototype.flags@npm:^1.5.2": +"regexp.prototype.flags@npm:^1.5.2": version: 1.5.2 resolution: "regexp.prototype.flags@npm:1.5.2" dependencies: @@ -41954,15 +41908,6 @@ __metadata: languageName: node linkType: hard -"stop-iteration-iterator@npm:^1.0.0": - version: 1.0.0 - resolution: "stop-iteration-iterator@npm:1.0.0" - dependencies: - internal-slot: ^1.0.4 - checksum: d04173690b2efa40e24ab70e5e51a3ff31d56d699550cfad084104ab3381390daccb36652b25755e420245f3b0737de66c1879eaa2a8d4fc0a78f9bf892fcb42 - languageName: node - linkType: hard - "stoppable@npm:^1.1.0": version: 1.1.0 resolution: "stoppable@npm:1.1.0" @@ -42180,13 +42125,14 @@ __metadata: languageName: node linkType: hard -"string.prototype.includes@npm:^2.0.0": - version: 2.0.0 - resolution: "string.prototype.includes@npm:2.0.0" +"string.prototype.includes@npm:^2.0.1": + version: 2.0.1 + resolution: "string.prototype.includes@npm:2.0.1" dependencies: - define-properties: ^1.1.3 - es-abstract: ^1.17.5 - checksum: cf413e7f603b0414b65fdf1e7e3670ba85fd992b31c7eadfbdd9a484b86d265f0260431e7558cdb44a318dcadd1da8442b7bb8193b9ddd0aea3c376d2a559859 + call-bind: ^1.0.7 + define-properties: ^1.2.1 + es-abstract: ^1.23.3 + checksum: ed4b7058b092f30d41c4df1e3e805eeea92479d2c7a886aa30f42ae32fde8924a10cc99cccc99c29b8e18c48216608a0fe6bf887f8b4aadf9559096a758f313a languageName: node linkType: hard @@ -45318,7 +45264,7 @@ __metadata: languageName: node linkType: hard -"which-typed-array@npm:^1.1.13, which-typed-array@npm:^1.1.14, which-typed-array@npm:^1.1.15, which-typed-array@npm:^1.1.2, which-typed-array@npm:^1.1.9": +"which-typed-array@npm:^1.1.14, which-typed-array@npm:^1.1.15, which-typed-array@npm:^1.1.2, which-typed-array@npm:^1.1.9": version: 1.1.15 resolution: "which-typed-array@npm:1.1.15" dependencies: From bd9478c10926eebeca9f5ca1fe2264a5ac1abf91 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 4 Nov 2024 14:16:36 +0000 Subject: [PATCH 068/161] fix(deps): update dependency express-openapi-validator to v5.3.9 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index ebaf85b06e..6701557baf 100644 --- a/yarn.lock +++ b/yarn.lock @@ -27560,8 +27560,8 @@ __metadata: linkType: hard "express-openapi-validator@npm:^5.0.4": - version: 5.3.7 - resolution: "express-openapi-validator@npm:5.3.7" + version: 5.3.9 + resolution: "express-openapi-validator@npm:5.3.9" dependencies: "@apidevtools/json-schema-ref-parser": ^11.7.0 "@types/multer": ^1.4.12 @@ -27578,7 +27578,7 @@ __metadata: path-to-regexp: ^8.1.0 peerDependencies: express: "*" - checksum: 28be61484f68bbad3f2ec8304bf310e1c962ceefd21b9feea5e52187670715257a30e1d87173c773e36b1a182a10760ca16987f16649bf0b91f4bcca0b58cfbd + checksum: 0469b383b769f070dfad9c9148b18857c5aaa9aa14c596e1ada155dac63e1c355e455d42f3c81af62c4aefd3db4ad8b892d34a432e170e4eb7af73d7dbd2f644 languageName: node linkType: hard From 2d03b725a4a6945e86c43d704e6a6d83eff340db Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 4 Nov 2024 15:13:16 +0000 Subject: [PATCH 069/161] fix(deps): update dependency html-webpack-plugin to v5.6.3 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 7dee44a60a..c4822d4d73 100644 --- a/yarn.lock +++ b/yarn.lock @@ -29707,8 +29707,8 @@ __metadata: linkType: hard "html-webpack-plugin@npm:^5.3.1": - version: 5.6.2 - resolution: "html-webpack-plugin@npm:5.6.2" + version: 5.6.3 + resolution: "html-webpack-plugin@npm:5.6.3" dependencies: "@types/html-minifier-terser": ^6.0.0 html-minifier-terser: ^6.0.2 @@ -29723,7 +29723,7 @@ __metadata: optional: true webpack: optional: true - checksum: c579ce8b34ef1cd903829402aa6a62a6c92fe1cdfcd81d17ebc87f39eaab1381438b9d805a63457b255238db8f2865d71f48cd382375aa28718881e3ab2d2f9a + checksum: 59e7d971b0cfd9ba34c7acaa3c161e43c62596474dd8cd35d7b690498ff5891f21296de0aa1d2e7810348caa657e938461267155dda47913b5eeca7124406270 languageName: node linkType: hard From ce8dd8b80f0bbb146d978f36c83e7570837ad3f6 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 4 Nov 2024 15:13:44 +0000 Subject: [PATCH 070/161] fix(deps): update dependency isbinaryfile to v5.0.4 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 7dee44a60a..e1cd9c3e0e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -31194,9 +31194,9 @@ __metadata: linkType: hard "isbinaryfile@npm:^5.0.0": - version: 5.0.3 - resolution: "isbinaryfile@npm:5.0.3" - checksum: 950820d813a664a5c17dcb52e9a10454da4f51918369388be428de47a33f51de38637df2cff91a95f212551170c8045c2156c99bab23a042ab3ef1a775bee1b9 + version: 5.0.4 + resolution: "isbinaryfile@npm:5.0.4" + checksum: d88982a889369d83a5937b4b4d2288ed3b3dbbcee8fc74db40058f3c089a2c7beb9e5305b7177e82d87ff38fb62be8d60960f7a2d669ca08240ef31c1435b884 languageName: node linkType: hard From 93a091cdf8aba795b9446034f673f8d2e517a2cd Mon Sep 17 00:00:00 2001 From: Harsha Teja Kanna Date: Mon, 4 Nov 2024 10:10:28 -0500 Subject: [PATCH 071/161] Upgraded microsite to Docusaurus 3.6 Signed-off-by: Harsha Teja Kanna --- microsite/docusaurus.config.ts | 3 + microsite/package.json | 13 +- microsite/yarn.lock | 3059 +++++++++++++++++--------------- 3 files changed, 1642 insertions(+), 1433 deletions(-) diff --git a/microsite/docusaurus.config.ts b/microsite/docusaurus.config.ts index 43bde19e35..7795e9f8a5 100644 --- a/microsite/docusaurus.config.ts +++ b/microsite/docusaurus.config.ts @@ -444,5 +444,8 @@ const config: Config = { ], }, } satisfies Preset.ThemeConfig, + future: { + experimental_faster: true, + }, }; export default config; diff --git a/microsite/package.json b/microsite/package.json index fc3405c744..ee5652416a 100644 --- a/microsite/package.json +++ b/microsite/package.json @@ -19,10 +19,10 @@ }, "prettier": "@spotify/prettier-config", "dependencies": { - "@docusaurus/core": "^3.1.1", - "@docusaurus/plugin-client-redirects": "^3.1.1", - "@docusaurus/preset-classic": "^3.1.1", - "@docusaurus/types": "^3.1.1", + "@docusaurus/core": "^3.6.0", + "@docusaurus/plugin-client-redirects": "^3.6.0", + "@docusaurus/preset-classic": "^3.6.0", + "@docusaurus/types": "^3.6.0", "@mdx-js/react": "^3.0.0", "@swc/core": "^1.3.46", "clsx": "^2.0.0", @@ -36,8 +36,9 @@ "swc-loader": "^0.2.3" }, "devDependencies": { - "@docusaurus/module-type-aliases": "^3.1.1", - "@docusaurus/tsconfig": "^3.1.1", + "@docusaurus/faster": "^3.6.0", + "@docusaurus/module-type-aliases": "^3.6.0", + "@docusaurus/tsconfig": "^3.6.0", "@spotify/prettier-config": "^15.0.0", "@types/luxon": "^3.0.0", "@types/webpack-env": "^1.18.0", diff --git a/microsite/yarn.lock b/microsite/yarn.lock index ece055ff60..79ad721c09 100644 --- a/microsite/yarn.lock +++ b/microsite/yarn.lock @@ -197,132 +197,119 @@ __metadata: languageName: node linkType: hard -"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.16.0, @babel/code-frame@npm:^7.24.7, @babel/code-frame@npm:^7.8.3": - version: 7.24.7 - resolution: "@babel/code-frame@npm:7.24.7" +"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.16.0, @babel/code-frame@npm:^7.25.9, @babel/code-frame@npm:^7.26.0, @babel/code-frame@npm:^7.8.3": + version: 7.26.2 + resolution: "@babel/code-frame@npm:7.26.2" dependencies: - "@babel/highlight": ^7.24.7 + "@babel/helper-validator-identifier": ^7.25.9 + js-tokens: ^4.0.0 picocolors: ^1.0.0 - checksum: 830e62cd38775fdf84d612544251ce773d544a8e63df667728cc9e0126eeef14c6ebda79be0f0bc307e8318316b7f58c27ce86702e0a1f5c321d842eb38ffda4 + checksum: db13f5c42d54b76c1480916485e6900748bbcb0014a8aca87f50a091f70ff4e0d0a6db63cade75eb41fcc3d2b6ba0a7f89e343def4f96f00269b41b8ab8dd7b8 languageName: node linkType: hard -"@babel/compat-data@npm:^7.22.6, @babel/compat-data@npm:^7.25.2, @babel/compat-data@npm:^7.25.4": - version: 7.25.4 - resolution: "@babel/compat-data@npm:7.25.4" - checksum: b12a91d27c3731a4b0bdc9312a50b1911f41f7f728aaf0d4b32486e2257fd2cb2d3ea1a295e98449600c48f2c7883a3196ca77cda1cef7d97a10c2e83d037974 +"@babel/compat-data@npm:^7.22.6, @babel/compat-data@npm:^7.25.9, @babel/compat-data@npm:^7.26.0": + version: 7.26.2 + resolution: "@babel/compat-data@npm:7.26.2" + checksum: d52fae9b0dc59b409d6005ae6b172e89329f46d68136130065ebe923a156fc633e0f1c8600b3e319b9e0f99fd948f64991a5419e2e9431d00d9d235d5f7a7618 languageName: node linkType: hard -"@babel/core@npm:^7.21.3, @babel/core@npm:^7.23.3": - version: 7.25.2 - resolution: "@babel/core@npm:7.25.2" +"@babel/core@npm:^7.21.3, @babel/core@npm:^7.25.9": + version: 7.26.0 + resolution: "@babel/core@npm:7.26.0" dependencies: "@ampproject/remapping": ^2.2.0 - "@babel/code-frame": ^7.24.7 - "@babel/generator": ^7.25.0 - "@babel/helper-compilation-targets": ^7.25.2 - "@babel/helper-module-transforms": ^7.25.2 - "@babel/helpers": ^7.25.0 - "@babel/parser": ^7.25.0 - "@babel/template": ^7.25.0 - "@babel/traverse": ^7.25.2 - "@babel/types": ^7.25.2 + "@babel/code-frame": ^7.26.0 + "@babel/generator": ^7.26.0 + "@babel/helper-compilation-targets": ^7.25.9 + "@babel/helper-module-transforms": ^7.26.0 + "@babel/helpers": ^7.26.0 + "@babel/parser": ^7.26.0 + "@babel/template": ^7.25.9 + "@babel/traverse": ^7.25.9 + "@babel/types": ^7.26.0 convert-source-map: ^2.0.0 debug: ^4.1.0 gensync: ^1.0.0-beta.2 json5: ^2.2.3 semver: ^6.3.1 - checksum: 9a1ef604a7eb62195f70f9370cec45472a08114e3934e3eaaedee8fd754edf0730e62347c7b4b5e67d743ce57b5bb8cf3b92459482ca94d06e06246ef021390a + checksum: b296084cfd818bed8079526af93b5dfa0ba70282532d2132caf71d4060ab190ba26d3184832a45accd82c3c54016985a4109ab9118674347a7e5e9bc464894e6 languageName: node linkType: hard -"@babel/generator@npm:^7.23.3, @babel/generator@npm:^7.25.0, @babel/generator@npm:^7.25.4": - version: 7.25.5 - resolution: "@babel/generator@npm:7.25.5" +"@babel/generator@npm:^7.25.9, @babel/generator@npm:^7.26.0": + version: 7.26.2 + resolution: "@babel/generator@npm:7.26.2" dependencies: - "@babel/types": ^7.25.4 + "@babel/parser": ^7.26.2 + "@babel/types": ^7.26.0 "@jridgewell/gen-mapping": ^0.3.5 "@jridgewell/trace-mapping": ^0.3.25 - jsesc: ^2.5.1 - checksum: d7713f02536a8144eca810e9b13ae854b05fec462348eaf52e7b50df2c0a312bc43bfff0e8e10d6dd982e8986d61175ac8e67d7358a8b4dad9db4d6733bf0c9c + jsesc: ^3.0.2 + checksum: 6ff850b7d6082619f8c2f518d993cf7254cfbaa20b026282cbef5c9b2197686d076a432b18e36c4d1a42721c016df4f77a8f62c67600775d9683621d534b91b4 languageName: node linkType: hard -"@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" +"@babel/helper-annotate-as-pure@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-annotate-as-pure@npm:7.25.9" dependencies: - "@babel/types": ^7.24.7 - checksum: 6178566099a6a0657db7a7fa601a54fb4731ca0b8614fbdccfd8e523c210c13963649bc8fdfd53ce7dd14d05e3dda2fb22dea5b30113c488b9eb1a906d60212e + "@babel/types": ^7.25.9 + checksum: 41edda10df1ae106a9b4fe617bf7c6df77db992992afd46192534f5cff29f9e49a303231733782dd65c5f9409714a529f215325569f14282046e9d3b7a1ffb6c languageName: node linkType: hard -"@babel/helper-builder-binary-assignment-operator-visitor@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/helper-builder-binary-assignment-operator-visitor@npm:7.24.7" +"@babel/helper-builder-binary-assignment-operator-visitor@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-builder-binary-assignment-operator-visitor@npm:7.25.9" dependencies: - "@babel/traverse": ^7.24.7 - "@babel/types": ^7.24.7 - checksum: 71a6158a9fdebffb82fdc400d5555ba8f2e370cea81a0d578155877bdc4db7d5252b75c43b2fdf3f72b3f68348891f99bd35ae315542daad1b7ace8322b1abcb + "@babel/traverse": ^7.25.9 + "@babel/types": ^7.25.9 + checksum: e1bb465b3b0155702d82cfef09e3813e87a6d777cdd2c513796861eac14953340491eafea1d4109278bf4ceb48b54074c45758f042c0544d00c498090bee5a6f languageName: node linkType: hard -"@babel/helper-compilation-targets@npm:^7.22.6, @babel/helper-compilation-targets@npm:^7.24.7, @babel/helper-compilation-targets@npm:^7.24.8, @babel/helper-compilation-targets@npm:^7.25.2": - version: 7.25.2 - resolution: "@babel/helper-compilation-targets@npm:7.25.2" +"@babel/helper-compilation-targets@npm:^7.22.6, @babel/helper-compilation-targets@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-compilation-targets@npm:7.25.9" dependencies: - "@babel/compat-data": ^7.25.2 - "@babel/helper-validator-option": ^7.24.8 - browserslist: ^4.23.1 + "@babel/compat-data": ^7.25.9 + "@babel/helper-validator-option": ^7.25.9 + browserslist: ^4.24.0 lru-cache: ^5.1.1 semver: ^6.3.1 - checksum: aed33c5496cb9db4b5e2d44e26bf8bc474074cc7f7bb5ebe1d4a20fdeb362cb3ba9e1596ca18c7484bcd6e5c3a155ab975e420d520c0ae60df81f9de04d0fd16 + checksum: 3af536e2db358b38f968abdf7d512d425d1018fef2f485d6f131a57a7bcaed32c606b4e148bb230e1508fa42b5b2ac281855a68eb78270f54698c48a83201b9b languageName: node linkType: hard -"@babel/helper-create-class-features-plugin@npm:^7.24.7, @babel/helper-create-class-features-plugin@npm:^7.25.0, @babel/helper-create-class-features-plugin@npm:^7.25.4": - version: 7.25.4 - resolution: "@babel/helper-create-class-features-plugin@npm:7.25.4" +"@babel/helper-create-class-features-plugin@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-create-class-features-plugin@npm:7.25.9" dependencies: - "@babel/helper-annotate-as-pure": ^7.24.7 - "@babel/helper-member-expression-to-functions": ^7.24.8 - "@babel/helper-optimise-call-expression": ^7.24.7 - "@babel/helper-replace-supers": ^7.25.0 - "@babel/helper-skip-transparent-expression-wrappers": ^7.24.7 - "@babel/traverse": ^7.25.4 + "@babel/helper-annotate-as-pure": ^7.25.9 + "@babel/helper-member-expression-to-functions": ^7.25.9 + "@babel/helper-optimise-call-expression": ^7.25.9 + "@babel/helper-replace-supers": ^7.25.9 + "@babel/helper-skip-transparent-expression-wrappers": ^7.25.9 + "@babel/traverse": ^7.25.9 semver: ^6.3.1 peerDependencies: "@babel/core": ^7.0.0 - checksum: 4544ebda4516eb25efdebd47ca024bd7bdb1eb6e7cc3ad89688c8ef8e889734c2f4411ed78981899c641394f013f246f2af63d92a0e9270f6c453309b4cb89ba + checksum: 91dd5f203ed04568c70b052e2f26dfaac7c146447196c00b8ecbb6d3d2f3b517abadb985d3321a19d143adaed6fe17f7f79f8f50e0c20e9d8ad83e1027b42424 languageName: node linkType: hard -"@babel/helper-create-regexp-features-plugin@npm:^7.18.6, @babel/helper-create-regexp-features-plugin@npm:^7.24.7, @babel/helper-create-regexp-features-plugin@npm:^7.25.0, @babel/helper-create-regexp-features-plugin@npm:^7.25.2": - version: 7.25.2 - resolution: "@babel/helper-create-regexp-features-plugin@npm:7.25.2" +"@babel/helper-create-regexp-features-plugin@npm:^7.18.6, @babel/helper-create-regexp-features-plugin@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-create-regexp-features-plugin@npm:7.25.9" dependencies: - "@babel/helper-annotate-as-pure": ^7.24.7 - regexpu-core: ^5.3.1 + "@babel/helper-annotate-as-pure": ^7.25.9 + regexpu-core: ^6.1.1 semver: ^6.3.1 peerDependencies: "@babel/core": ^7.0.0 - checksum: df55fdc6a1f3090dd37d91347df52d9322d52affa239543808dc142f8fe35e6787e67d8612337668198fac85826fafa9e6772e6c28b7d249ec94e6fafae5da6e - languageName: node - linkType: hard - -"@babel/helper-define-polyfill-provider@npm:^0.4.2": - version: 0.4.2 - resolution: "@babel/helper-define-polyfill-provider@npm:0.4.2" - dependencies: - "@babel/helper-compilation-targets": ^7.22.6 - "@babel/helper-plugin-utils": ^7.22.5 - debug: ^4.1.1 - lodash.debounce: ^4.0.8 - resolve: ^1.14.2 - peerDependencies: - "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0 - checksum: 1f6dec0c5d0876d278fe15b71238eccc5f74c4e2efa2c78aaafa8bc2cc96336b8e68d94cd1a78497356c96e8b91b8c1f4452179820624d1702aee2f9832e6569 + checksum: 563ed361ceed3d7a9d64dd58616bf6f0befcc23620ab22d31dd6d8b751d3f99d6d210487b1a5a1e209ab4594df67bacfab7445cbfa092bfe2b719cd42ae1ba6f languageName: node linkType: hard @@ -341,223 +328,210 @@ __metadata: languageName: node linkType: hard -"@babel/helper-member-expression-to-functions@npm:^7.24.8": - version: 7.24.8 - resolution: "@babel/helper-member-expression-to-functions@npm:7.24.8" +"@babel/helper-member-expression-to-functions@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-member-expression-to-functions@npm:7.25.9" dependencies: - "@babel/traverse": ^7.24.8 - "@babel/types": ^7.24.8 - checksum: bf923d05d81b06857f4ca4fe9c528c9c447a58db5ea39595bb559eae2fce01a8266173db0fd6a2ec129d7bbbb9bb22f4e90008252f7c66b422c76630a878a4bc + "@babel/traverse": ^7.25.9 + "@babel/types": ^7.25.9 + checksum: 8e2f1979b6d596ac2a8cbf17f2cf709180fefc274ac3331408b48203fe19134ed87800774ef18838d0275c3965130bae22980d90caed756b7493631d4b2cf961 languageName: node linkType: hard -"@babel/helper-module-imports@npm:^7.22.15, @babel/helper-module-imports@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/helper-module-imports@npm:7.24.7" +"@babel/helper-module-imports@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-module-imports@npm:7.25.9" dependencies: - "@babel/traverse": ^7.24.7 - "@babel/types": ^7.24.7 - checksum: 8ac15d96d262b8940bc469052a048e06430bba1296369be695fabdf6799f201dd0b00151762b56012a218464e706bc033f27c07f6cec20c6f8f5fd6543c67054 + "@babel/traverse": ^7.25.9 + "@babel/types": ^7.25.9 + checksum: 1b411ce4ca825422ef7065dffae7d8acef52023e51ad096351e3e2c05837e9bf9fca2af9ca7f28dc26d596a588863d0fedd40711a88e350b736c619a80e704e6 languageName: node linkType: hard -"@babel/helper-module-transforms@npm:^7.24.7, @babel/helper-module-transforms@npm:^7.24.8, @babel/helper-module-transforms@npm:^7.25.0, @babel/helper-module-transforms@npm:^7.25.2": - version: 7.25.2 - resolution: "@babel/helper-module-transforms@npm:7.25.2" +"@babel/helper-module-transforms@npm:^7.25.9, @babel/helper-module-transforms@npm:^7.26.0": + version: 7.26.0 + resolution: "@babel/helper-module-transforms@npm:7.26.0" dependencies: - "@babel/helper-module-imports": ^7.24.7 - "@babel/helper-simple-access": ^7.24.7 - "@babel/helper-validator-identifier": ^7.24.7 - "@babel/traverse": ^7.25.2 + "@babel/helper-module-imports": ^7.25.9 + "@babel/helper-validator-identifier": ^7.25.9 + "@babel/traverse": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0 - checksum: 282d4e3308df6746289e46e9c39a0870819630af5f84d632559171e4fae6045684d771a65f62df3d569e88ccf81dc2def78b8338a449ae3a94bb421aa14fc367 + checksum: 942eee3adf2b387443c247a2c190c17c4fd45ba92a23087abab4c804f40541790d51ad5277e4b5b1ed8d5ba5b62de73857446b7742f835c18ebd350384e63917 languageName: node linkType: hard -"@babel/helper-optimise-call-expression@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/helper-optimise-call-expression@npm:7.24.7" +"@babel/helper-optimise-call-expression@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-optimise-call-expression@npm:7.25.9" dependencies: - "@babel/types": ^7.24.7 - checksum: 280654eaf90e92bf383d7eed49019573fb35a98c9e992668f701ad099957246721044be2068cf6840cb2299e0ad393705a1981c88c23a1048096a8d59e5f79a3 + "@babel/types": ^7.25.9 + checksum: f09d0ad60c0715b9a60c31841b3246b47d67650c512ce85bbe24a3124f1a4d66377df793af393273bc6e1015b0a9c799626c48e53747581c1582b99167cc65dc 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.22.5, @babel/helper-plugin-utils@npm:^7.24.7, @babel/helper-plugin-utils@npm:^7.24.8, @babel/helper-plugin-utils@npm:^7.8.0, @babel/helper-plugin-utils@npm:^7.8.3": - version: 7.24.8 - resolution: "@babel/helper-plugin-utils@npm:7.24.8" - checksum: 73b1a83ba8bcee21dc94de2eb7323207391715e4369fd55844bb15cf13e3df6f3d13a40786d990e6370bf0f571d94fc31f70dec96c1d1002058258c35ca3767a +"@babel/helper-plugin-utils@npm:^7.0.0, @babel/helper-plugin-utils@npm:^7.18.6, @babel/helper-plugin-utils@npm:^7.22.5, @babel/helper-plugin-utils@npm:^7.24.8, @babel/helper-plugin-utils@npm:^7.25.9, @babel/helper-plugin-utils@npm:^7.8.0": + version: 7.25.9 + resolution: "@babel/helper-plugin-utils@npm:7.25.9" + checksum: e19ec8acf0b696756e6d84531f532c5fe508dce57aa68c75572a77798bd04587a844a9a6c8ea7d62d673e21fdc174d091c9097fb29aea1c1b49f9c6eaa80f022 languageName: node linkType: hard -"@babel/helper-remap-async-to-generator@npm:^7.24.7, @babel/helper-remap-async-to-generator@npm:^7.25.0": - version: 7.25.0 - resolution: "@babel/helper-remap-async-to-generator@npm:7.25.0" +"@babel/helper-remap-async-to-generator@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-remap-async-to-generator@npm:7.25.9" dependencies: - "@babel/helper-annotate-as-pure": ^7.24.7 - "@babel/helper-wrap-function": ^7.25.0 - "@babel/traverse": ^7.25.0 + "@babel/helper-annotate-as-pure": ^7.25.9 + "@babel/helper-wrap-function": ^7.25.9 + "@babel/traverse": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0 - checksum: 47f3065e43fe9d6128ddb4291ffb9cf031935379265fd13de972b5f241943121f7583efb69cd2e1ecf39e3d0f76f047547d56c3fcc2c853b326fad5465da0bd7 + checksum: ea37ad9f8f7bcc27c109963b8ebb9d22bac7a5db2a51de199cb560e251d5593fe721e46aab2ca7d3e7a24b0aa4aff0eaf9c7307af9c2fd3a1d84268579073052 languageName: node linkType: hard -"@babel/helper-replace-supers@npm:^7.24.7, @babel/helper-replace-supers@npm:^7.25.0": - version: 7.25.0 - resolution: "@babel/helper-replace-supers@npm:7.25.0" +"@babel/helper-replace-supers@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-replace-supers@npm:7.25.9" dependencies: - "@babel/helper-member-expression-to-functions": ^7.24.8 - "@babel/helper-optimise-call-expression": ^7.24.7 - "@babel/traverse": ^7.25.0 + "@babel/helper-member-expression-to-functions": ^7.25.9 + "@babel/helper-optimise-call-expression": ^7.25.9 + "@babel/traverse": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0 - checksum: f669fc2487c22d40b808f94b9c3ee41129484d5ef0ba689bdd70f216ff91e10b6b021d2f8cd37e7bdd700235a2a6ae6622526344f064528190383bf661ac65f8 + checksum: 84f40e12520b7023e52d289bf9d569a06284879fe23bbbacad86bec5d978b2669769f11b073fcfeb1567d8c547168323005fda88607a4681ecaeb4a5cdd48bb9 languageName: node linkType: hard -"@babel/helper-simple-access@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/helper-simple-access@npm:7.24.7" +"@babel/helper-simple-access@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-simple-access@npm:7.25.9" dependencies: - "@babel/traverse": ^7.24.7 - "@babel/types": ^7.24.7 - checksum: ddbf55f9dea1900213f2a1a8500fabfd21c5a20f44dcfa957e4b0d8638c730f88751c77f678644f754f1a1dc73f4eb8b766c300deb45a9daad000e4247957819 + "@babel/traverse": ^7.25.9 + "@babel/types": ^7.25.9 + checksum: 6d96c94b88e8288d15e5352c1221486bd4f62de8c7dc7c7b9f5b107ce2c79f67fec5ed71a0476e146f1fefbbbf1d69abe35dc821d80ce01fc7f472286c342421 languageName: node linkType: hard -"@babel/helper-skip-transparent-expression-wrappers@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/helper-skip-transparent-expression-wrappers@npm:7.24.7" +"@babel/helper-skip-transparent-expression-wrappers@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-skip-transparent-expression-wrappers@npm:7.25.9" dependencies: - "@babel/traverse": ^7.24.7 - "@babel/types": ^7.24.7 - checksum: 11b28fe534ce2b1a67c4d8e51a7b5711a2a0a0cae802f74614eee54cca58c744d9a62f6f60103c41759e81c537d270bfd665bf368a6bea214c6052f2094f8407 + "@babel/traverse": ^7.25.9 + "@babel/types": ^7.25.9 + checksum: fdbb5248932198bc26daa6abf0d2ac42cab9c2dbb75b7e9f40d425c8f28f09620b886d40e7f9e4e08ffc7aaa2cefe6fc2c44be7c20e81f7526634702fb615bdc languageName: node linkType: hard -"@babel/helper-string-parser@npm:^7.24.8": - version: 7.24.8 - resolution: "@babel/helper-string-parser@npm:7.24.8" - checksum: 39b03c5119216883878655b149148dc4d2e284791e969b19467a9411fccaa33f7a713add98f4db5ed519535f70ad273cdadfd2eb54d47ebbdeac5083351328ce +"@babel/helper-string-parser@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-string-parser@npm:7.25.9" + checksum: 6435ee0849e101681c1849868278b5aee82686ba2c1e27280e5e8aca6233af6810d39f8e4e693d2f2a44a3728a6ccfd66f72d71826a94105b86b731697cdfa99 languageName: node linkType: hard -"@babel/helper-validator-identifier@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/helper-validator-identifier@npm:7.24.7" - checksum: 6799ab117cefc0ecd35cd0b40ead320c621a298ecac88686a14cffceaac89d80cdb3c178f969861bf5fa5e4f766648f9161ea0752ecfe080d8e89e3147270257 +"@babel/helper-validator-identifier@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-validator-identifier@npm:7.25.9" + checksum: 5b85918cb1a92a7f3f508ea02699e8d2422fe17ea8e82acd445006c0ef7520fbf48e3dbcdaf7b0a1d571fc3a2715a29719e5226636cb6042e15fe6ed2a590944 languageName: node linkType: hard -"@babel/helper-validator-option@npm:^7.22.15, @babel/helper-validator-option@npm:^7.24.7, @babel/helper-validator-option@npm:^7.24.8": - version: 7.24.8 - resolution: "@babel/helper-validator-option@npm:7.24.8" - checksum: a52442dfa74be6719c0608fee3225bd0493c4057459f3014681ea1a4643cd38b68ff477fe867c4b356da7330d085f247f0724d300582fa4ab9a02efaf34d107c +"@babel/helper-validator-option@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-validator-option@npm:7.25.9" + checksum: 9491b2755948ebbdd68f87da907283698e663b5af2d2b1b02a2765761974b1120d5d8d49e9175b167f16f72748ffceec8c9cf62acfbee73f4904507b246e2b3d languageName: node linkType: hard -"@babel/helper-wrap-function@npm:^7.25.0": - version: 7.25.0 - resolution: "@babel/helper-wrap-function@npm:7.25.0" +"@babel/helper-wrap-function@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-wrap-function@npm:7.25.9" dependencies: - "@babel/template": ^7.25.0 - "@babel/traverse": ^7.25.0 - "@babel/types": ^7.25.0 - checksum: 0095b4741704066d1687f9bbd5370bb88c733919e4275e49615f70c180208148ff5f24ab58d186ce92f8f5d28eab034ec6617e9264590cc4744c75302857629c + "@babel/template": ^7.25.9 + "@babel/traverse": ^7.25.9 + "@babel/types": ^7.25.9 + checksum: 8ec1701e60ae004415800c4a7a188f5564c73b4e4f3fdf58dd3f34a3feaa9753173f39bbd6d02e7ecc974f48155efc7940e62584435b3092c07728ee46a604ea languageName: node linkType: hard -"@babel/helpers@npm:^7.25.0": - version: 7.25.0 - resolution: "@babel/helpers@npm:7.25.0" +"@babel/helpers@npm:^7.26.0": + version: 7.26.0 + resolution: "@babel/helpers@npm:7.26.0" dependencies: - "@babel/template": ^7.25.0 - "@babel/types": ^7.25.0 - checksum: 739e3704ff41a30f5eaac469b553f4d3ab02be6ced083f5925851532dfbd9efc5c347728e77b754ed0b262a4e5e384e60932a62c192d338db7e4b7f3adf9f4a7 + "@babel/template": ^7.25.9 + "@babel/types": ^7.26.0 + checksum: d77fe8d45033d6007eadfa440355c1355eed57902d5a302f450827ad3d530343430a21210584d32eef2f216ae463d4591184c6fc60cf205bbf3a884561469200 languageName: node linkType: hard -"@babel/highlight@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/highlight@npm:7.24.7" +"@babel/parser@npm:^7.25.9, @babel/parser@npm:^7.26.0, @babel/parser@npm:^7.26.2": + version: 7.26.2 + resolution: "@babel/parser@npm:7.26.2" dependencies: - "@babel/helper-validator-identifier": ^7.24.7 - chalk: ^2.4.2 - js-tokens: ^4.0.0 - picocolors: ^1.0.0 - checksum: 5cd3a89f143671c4ac129960024ba678b669e6fc673ce078030f5175002d1d3d52bc10b22c5b916a6faf644b5028e9a4bd2bb264d053d9b05b6a98690f1d46f1 - languageName: node - linkType: hard - -"@babel/parser@npm:^7.25.0, @babel/parser@npm:^7.25.4": - version: 7.25.4 - resolution: "@babel/parser@npm:7.25.4" - dependencies: - "@babel/types": ^7.25.4 + "@babel/types": ^7.26.0 bin: parser: ./bin/babel-parser.js - checksum: fe4f083d4ad34f019dd7fad672cd007003004fb0a3df9b7315a5da9a5e8e56c1fed95acab6862e7d76cfccb2e8e364bcc307e9117718e6bb6dfb2e87ad065abf + checksum: c88b5ea0adf357ef909cdc2c31e284a154943edc59f63f6e8a4c20bf773a1b2f3d8c2205e59c09ca7cdad91e7466300114548876529277a80651b6436a48d5d9 languageName: node linkType: hard -"@babel/plugin-bugfix-firefox-class-in-computed-class-key@npm:^7.25.3": - version: 7.25.3 - resolution: "@babel/plugin-bugfix-firefox-class-in-computed-class-key@npm:7.25.3" +"@babel/plugin-bugfix-firefox-class-in-computed-class-key@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-bugfix-firefox-class-in-computed-class-key@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.24.8 - "@babel/traverse": ^7.25.3 + "@babel/helper-plugin-utils": ^7.25.9 + "@babel/traverse": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0 - checksum: d3dba60f360defe70eb43e35a1b17ea9dd4a99e734249e15be3d5c288019644f96f88d7ff51990118fda0845b4ad50f6d869e0382232b1d8b054d113d4eea7e2 + checksum: b33d37dacf98a9c74f53959999adc37a258057668b62dba557e6865689433c53764673109eaba9102bf73b2ac4db162f0d9b89a6cca6f1b71d12f5908ec11da9 languageName: node linkType: hard -"@babel/plugin-bugfix-safari-class-field-initializer-scope@npm:^7.25.0": - version: 7.25.0 - resolution: "@babel/plugin-bugfix-safari-class-field-initializer-scope@npm:7.25.0" +"@babel/plugin-bugfix-safari-class-field-initializer-scope@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-bugfix-safari-class-field-initializer-scope@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.24.8 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0 - checksum: fd56d1e6435f2c008ca9050ea906ff7eedcbec43f532f2bf2e7e905d8bf75bf5e4295ea9593f060394e2c8e45737266ccbf718050bad2dd7be4e7613c60d1b5b + checksum: d3e14ab1cb9cb50246d20cab9539f2fbd1e7ef1ded73980c8ad7c0561b4d5e0b144d362225f0976d47898e04cbd40f2000e208b0913bd788346cf7791b96af91 languageName: node linkType: hard -"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@npm:^7.25.0": - version: 7.25.0 - resolution: "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@npm:7.25.0" +"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.24.8 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0 - checksum: 13ed301b108d85867d64226bbc4032b07dd1a23aab68e9e32452c4fe3930f2198bb65bdae9c262c4104bd5e45647bc1830d25d43d356ee9a137edd8d5fab8350 + checksum: a9d1ee3fd100d3eb6799a2f2bbd785296f356c531d75c9369f71541811fa324270258a374db103ce159156d006da2f33370330558d0133e6f7584152c34997ca languageName: node linkType: hard -"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:7.24.7" +"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.24.7 - "@babel/helper-skip-transparent-expression-wrappers": ^7.24.7 - "@babel/plugin-transform-optional-chaining": ^7.24.7 + "@babel/helper-plugin-utils": ^7.25.9 + "@babel/helper-skip-transparent-expression-wrappers": ^7.25.9 + "@babel/plugin-transform-optional-chaining": ^7.25.9 peerDependencies: "@babel/core": ^7.13.0 - checksum: 07b92878ac58a98ea1fdf6a8b4ec3413ba4fa66924e28b694d63ec5b84463123fbf4d7153b56cf3cedfef4a3482c082fe3243c04f8fb2c041b32b0e29b4a9e21 + checksum: 5b298b28e156f64de51cdb03a2c5b80c7f978815ef1026f3ae8b9fc48d28bf0a83817d8fbecb61ef8fb94a7201f62cca5103cc6e7b9e8f28e38f766d7905b378 languageName: node linkType: hard -"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@npm:^7.25.0": - version: 7.25.0 - resolution: "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@npm:7.25.0" +"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.24.8 - "@babel/traverse": ^7.25.0 + "@babel/helper-plugin-utils": ^7.25.9 + "@babel/traverse": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0 - checksum: c8d08b8d6cc71451ad2a50cf7db72ab5b41c1e5e2e4d56cf6837a25a61270abd682c6b8881ab025f11a552d2024b3780519bb051459ebb71c27aed13d9917663 + checksum: c684593952ab1b40dfa4e64e98a07e7227c6db175c21bd0e6d71d2ad5d240fef4e4a984d56f05a494876542a022244fe1c1098f4116109fd90d06615e8a269b1 languageName: node linkType: hard @@ -570,39 +544,6 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-syntax-async-generators@npm:^7.8.4": - version: 7.8.4 - resolution: "@babel/plugin-syntax-async-generators@npm:7.8.4" - dependencies: - "@babel/helper-plugin-utils": ^7.8.0 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 7ed1c1d9b9e5b64ef028ea5e755c0be2d4e5e4e3d6cf7df757b9a8c4cfa4193d268176d0f1f7fbecdda6fe722885c7fda681f480f3741d8a2d26854736f05367 - languageName: node - linkType: hard - -"@babel/plugin-syntax-class-properties@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/plugin-syntax-class-properties@npm:7.12.13" - dependencies: - "@babel/helper-plugin-utils": ^7.12.13 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 24f34b196d6342f28d4bad303612d7ff566ab0a013ce89e775d98d6f832969462e7235f3e7eaf17678a533d4be0ba45d3ae34ab4e5a9dcbda5d98d49e5efa2fc - languageName: node - linkType: hard - -"@babel/plugin-syntax-class-static-block@npm:^7.14.5": - version: 7.14.5 - resolution: "@babel/plugin-syntax-class-static-block@npm:7.14.5" - dependencies: - "@babel/helper-plugin-utils": ^7.14.5 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 3e80814b5b6d4fe17826093918680a351c2d34398a914ce6e55d8083d72a9bdde4fbaf6a2dcea0e23a03de26dc2917ae3efd603d27099e2b98380345703bf948 - languageName: node - linkType: hard - "@babel/plugin-syntax-dynamic-import@npm:^7.8.3": version: 7.8.3 resolution: "@babel/plugin-syntax-dynamic-import@npm:7.8.3" @@ -614,168 +555,47 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-syntax-export-namespace-from@npm:^7.8.3": - version: 7.8.3 - resolution: "@babel/plugin-syntax-export-namespace-from@npm:7.8.3" +"@babel/plugin-syntax-import-assertions@npm:^7.26.0": + version: 7.26.0 + resolution: "@babel/plugin-syntax-import-assertions@npm:7.26.0" dependencies: - "@babel/helper-plugin-utils": ^7.8.3 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 85740478be5b0de185228e7814451d74ab8ce0a26fcca7613955262a26e99e8e15e9da58f60c754b84515d4c679b590dbd3f2148f0f58025f4ae706f1c5a5d4a + checksum: b58f2306df4a690ca90b763d832ec05202c50af787158ff8b50cdf3354359710bce2e1eb2b5135fcabf284756ac8eadf09ca74764aa7e76d12a5cac5f6b21e67 languageName: node linkType: hard -"@babel/plugin-syntax-import-assertions@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-syntax-import-assertions@npm:7.24.7" +"@babel/plugin-syntax-import-attributes@npm:^7.26.0": + version: 7.26.0 + resolution: "@babel/plugin-syntax-import-attributes@npm:7.26.0" dependencies: - "@babel/helper-plugin-utils": ^7.24.7 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: c4d67be4eb1d4637e361477dbe01f5b392b037d17c1f861cfa0faa120030e137aab90a9237931b8040fd31d1e5d159e11866fa1165f78beef7a3be876a391a17 + checksum: c122aa577166c80ee67f75aebebeef4150a132c4d3109d25d7fc058bf802946f883e330f20b78c1d3e3a5ada631c8780c263d2d01b5dbaecc69efefeedd42916 languageName: node linkType: hard -"@babel/plugin-syntax-import-attributes@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-syntax-import-attributes@npm:7.24.7" +"@babel/plugin-syntax-jsx@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-syntax-jsx@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.24.7 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 590dbb5d1a15264f74670b427b8d18527672c3d6c91d7bae7e65f80fd810edbc83d90e68065088644cbad3f2457ed265a54a9956fb789fcb9a5b521822b3a275 + checksum: bb609d1ffb50b58f0c1bac8810d0e46a4f6c922aa171c458f3a19d66ee545d36e782d3bffbbc1fed0dc65a558bdce1caf5279316583c0fff5a2c1658982a8563 languageName: node linkType: hard -"@babel/plugin-syntax-import-meta@npm:^7.10.4": - version: 7.10.4 - resolution: "@babel/plugin-syntax-import-meta@npm:7.10.4" +"@babel/plugin-syntax-typescript@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-syntax-typescript@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.10.4 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 166ac1125d10b9c0c430e4156249a13858c0366d38844883d75d27389621ebe651115cb2ceb6dc011534d5055719fa1727b59f39e1ab3ca97820eef3dcab5b9b - languageName: node - linkType: hard - -"@babel/plugin-syntax-json-strings@npm:^7.8.3": - version: 7.8.3 - resolution: "@babel/plugin-syntax-json-strings@npm:7.8.3" - dependencies: - "@babel/helper-plugin-utils": ^7.8.0 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: bf5aea1f3188c9a507e16efe030efb996853ca3cadd6512c51db7233cc58f3ac89ff8c6bdfb01d30843b161cfe7d321e1bf28da82f7ab8d7e6bc5464666f354a - languageName: node - linkType: hard - -"@babel/plugin-syntax-jsx@npm:^7.22.5, @babel/plugin-syntax-jsx@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-syntax-jsx@npm:7.24.7" - dependencies: - "@babel/helper-plugin-utils": ^7.24.7 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 7a5ca629d8ca1e1ee78705a78e58c12920d07ed8006d7e7232b31296a384ff5e41d7b649bde5561196041037bbb9f9715be1d1c20975df87ca204f34ad15b965 - languageName: node - linkType: hard - -"@babel/plugin-syntax-logical-assignment-operators@npm:^7.10.4": - version: 7.10.4 - resolution: "@babel/plugin-syntax-logical-assignment-operators@npm:7.10.4" - dependencies: - "@babel/helper-plugin-utils": ^7.10.4 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: aff33577037e34e515911255cdbb1fd39efee33658aa00b8a5fd3a4b903585112d037cce1cc9e4632f0487dc554486106b79ccd5ea63a2e00df4363f6d4ff886 - languageName: node - linkType: hard - -"@babel/plugin-syntax-nullish-coalescing-operator@npm:^7.8.3": - version: 7.8.3 - resolution: "@babel/plugin-syntax-nullish-coalescing-operator@npm:7.8.3" - dependencies: - "@babel/helper-plugin-utils": ^7.8.0 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 87aca4918916020d1fedba54c0e232de408df2644a425d153be368313fdde40d96088feed6c4e5ab72aac89be5d07fef2ddf329a15109c5eb65df006bf2580d1 - languageName: node - linkType: hard - -"@babel/plugin-syntax-numeric-separator@npm:^7.10.4": - version: 7.10.4 - resolution: "@babel/plugin-syntax-numeric-separator@npm:7.10.4" - dependencies: - "@babel/helper-plugin-utils": ^7.10.4 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 01ec5547bd0497f76cc903ff4d6b02abc8c05f301c88d2622b6d834e33a5651aa7c7a3d80d8d57656a4588f7276eba357f6b7e006482f5b564b7a6488de493a1 - languageName: node - linkType: hard - -"@babel/plugin-syntax-object-rest-spread@npm:^7.8.3": - version: 7.8.3 - resolution: "@babel/plugin-syntax-object-rest-spread@npm:7.8.3" - dependencies: - "@babel/helper-plugin-utils": ^7.8.0 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: fddcf581a57f77e80eb6b981b10658421bc321ba5f0a5b754118c6a92a5448f12a0c336f77b8abf734841e102e5126d69110a306eadb03ca3e1547cab31f5cbf - languageName: node - linkType: hard - -"@babel/plugin-syntax-optional-catch-binding@npm:^7.8.3": - version: 7.8.3 - resolution: "@babel/plugin-syntax-optional-catch-binding@npm:7.8.3" - dependencies: - "@babel/helper-plugin-utils": ^7.8.0 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 910d90e72bc90ea1ce698e89c1027fed8845212d5ab588e35ef91f13b93143845f94e2539d831dc8d8ededc14ec02f04f7bd6a8179edd43a326c784e7ed7f0b9 - languageName: node - linkType: hard - -"@babel/plugin-syntax-optional-chaining@npm:^7.8.3": - version: 7.8.3 - resolution: "@babel/plugin-syntax-optional-chaining@npm:7.8.3" - dependencies: - "@babel/helper-plugin-utils": ^7.8.0 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: eef94d53a1453361553c1f98b68d17782861a04a392840341bc91780838dd4e695209c783631cf0de14c635758beafb6a3a65399846ffa4386bff90639347f30 - languageName: node - linkType: hard - -"@babel/plugin-syntax-private-property-in-object@npm:^7.14.5": - version: 7.14.5 - resolution: "@babel/plugin-syntax-private-property-in-object@npm:7.14.5" - dependencies: - "@babel/helper-plugin-utils": ^7.14.5 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: b317174783e6e96029b743ccff2a67d63d38756876e7e5d0ba53a322e38d9ca452c13354a57de1ad476b4c066dbae699e0ca157441da611117a47af88985ecda - languageName: node - linkType: hard - -"@babel/plugin-syntax-top-level-await@npm:^7.14.5": - version: 7.14.5 - resolution: "@babel/plugin-syntax-top-level-await@npm:7.14.5" - dependencies: - "@babel/helper-plugin-utils": ^7.14.5 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: bbd1a56b095be7820029b209677b194db9b1d26691fe999856462e66b25b281f031f3dfd91b1619e9dcf95bebe336211833b854d0fb8780d618e35667c2d0d7e - languageName: node - linkType: hard - -"@babel/plugin-syntax-typescript@npm:^7.24.7": - version: 7.25.4 - resolution: "@babel/plugin-syntax-typescript@npm:7.25.4" - dependencies: - "@babel/helper-plugin-utils": ^7.24.8 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 9b89b8930cd5983f64251d75c9fcdc17a8dc73837d6de12220ff972888ecff4054a6467cf0c423cad242aa96c0f0564a39a0823073728cc02239b80d13f02230 + checksum: 0e9821e8ba7d660c36c919654e4144a70546942ae184e85b8102f2322451eae102cbfadbcadd52ce077a2b44b400ee52394c616feab7b5b9f791b910e933fd33 languageName: node linkType: hard @@ -791,466 +611,454 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-arrow-functions@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-arrow-functions@npm:7.24.7" +"@babel/plugin-transform-arrow-functions@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-arrow-functions@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.24.7 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 707c209b5331c7dc79bd326128c6a6640dbd62a78da1653c844db20c4f36bf7b68454f1bc4d2d051b3fde9136fa291f276ec03a071bb00ee653069ff82f91010 + checksum: c29f081224859483accf55fb4d091db2aac0dcd0d7954bac5ca889030cc498d3f771aa20eb2e9cd8310084ec394d85fa084b97faf09298b6bc9541182b3eb5bb languageName: node linkType: hard -"@babel/plugin-transform-async-generator-functions@npm:^7.25.4": - version: 7.25.4 - resolution: "@babel/plugin-transform-async-generator-functions@npm:7.25.4" +"@babel/plugin-transform-async-generator-functions@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-async-generator-functions@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.24.8 - "@babel/helper-remap-async-to-generator": ^7.25.0 - "@babel/plugin-syntax-async-generators": ^7.8.4 - "@babel/traverse": ^7.25.4 + "@babel/helper-plugin-utils": ^7.25.9 + "@babel/helper-remap-async-to-generator": ^7.25.9 + "@babel/traverse": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 4235444735a1946f8766fe56564a8134c2c36c73e6cf83b3f2ed5624ebc84ff5979506a6a5b39acdb23aa09d442a6af471710ed408ccce533a2c4d2990b9df6a + checksum: 41e02c18c2a57de9f274fa2c5a1bf81a20ab5f321db29cc3051512b9c5bdf3f1a8c42f1fc282cb62343c6d50849f992eede954d5f7fb5e7df48ae0c59ea7e054 languageName: node linkType: hard -"@babel/plugin-transform-async-to-generator@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-async-to-generator@npm:7.24.7" +"@babel/plugin-transform-async-to-generator@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-async-to-generator@npm:7.25.9" dependencies: - "@babel/helper-module-imports": ^7.24.7 - "@babel/helper-plugin-utils": ^7.24.7 - "@babel/helper-remap-async-to-generator": ^7.24.7 + "@babel/helper-module-imports": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 + "@babel/helper-remap-async-to-generator": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 13704fb3b83effc868db2b71bfb2c77b895c56cb891954fc362e95e200afd523313b0e7cf04ce02f45b05e76017c5b5fa8070c92613727a35131bb542c253a36 + checksum: b3ad50fb93c171644d501864620ed23952a46648c4df10dc9c62cc9ad08031b66bd272cfdd708faeee07c23b6251b16f29ce0350473e4c79f0c32178d38ce3a6 languageName: node linkType: hard -"@babel/plugin-transform-block-scoped-functions@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-block-scoped-functions@npm:7.24.7" +"@babel/plugin-transform-block-scoped-functions@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-block-scoped-functions@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.24.7 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 249cdcbff4e778b177245f9652b014ea4f3cd245d83297f10a7bf6d97790074089aa62bcde8c08eb299c5e68f2faed346b587d3ebac44d625ba9a83a4ee27028 + checksum: bf31896556b33a80f017af3d445ceb532ec0f5ca9d69bc211a963ac92514d172d5c24c5ac319f384d9dfa7f1a4d8dc23032c2fe3e74f98a59467ecd86f7033ae languageName: node linkType: hard -"@babel/plugin-transform-block-scoping@npm:^7.25.0": - version: 7.25.0 - resolution: "@babel/plugin-transform-block-scoping@npm:7.25.0" +"@babel/plugin-transform-block-scoping@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-block-scoping@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.24.8 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: b1a8f932f69ad2a47ae3e02b4cedd2a876bfc2ac9cf72a503fd706cdc87272646fe9eed81e068c0fc639647033de29f7fa0c21cddd1da0026f83dbaac97316a8 + checksum: e869500cfb1995e06e64c9608543b56468639809febfcdd6fcf683bc0bf1be2431cacf2981a168a1a14f4766393e37bc9f7c96d25bc5b5f39a64a8a8ad0bf8e0 languageName: node linkType: hard -"@babel/plugin-transform-class-properties@npm:^7.25.4": - version: 7.25.4 - resolution: "@babel/plugin-transform-class-properties@npm:7.25.4" +"@babel/plugin-transform-class-properties@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-class-properties@npm:7.25.9" dependencies: - "@babel/helper-create-class-features-plugin": ^7.25.4 - "@babel/helper-plugin-utils": ^7.24.8 + "@babel/helper-create-class-features-plugin": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: b73f7d968639c6c2dfc13f4c5a8fe45cefd260f0faa7890ae12e65d41211072544ff5e128c8b61a86887b29ffd3df8422dbdfbf61648488e71d4bb599c41f4a5 + checksum: a8d69e2c285486b63f49193cbcf7a15e1d3a5f632c1c07d7a97f65306df7f554b30270b7378dde143f8b557d1f8f6336c643377943dec8ec405e4cd11e90b9ea languageName: node linkType: hard -"@babel/plugin-transform-class-static-block@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-class-static-block@npm:7.24.7" +"@babel/plugin-transform-class-static-block@npm:^7.26.0": + version: 7.26.0 + resolution: "@babel/plugin-transform-class-static-block@npm:7.26.0" dependencies: - "@babel/helper-create-class-features-plugin": ^7.24.7 - "@babel/helper-plugin-utils": ^7.24.7 - "@babel/plugin-syntax-class-static-block": ^7.14.5 + "@babel/helper-create-class-features-plugin": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.12.0 - checksum: 324049263504f18416f1c3e24033baebfafd05480fdd885c8ebe6f2b415b0fc8e0b98d719360f9e30743cc78ac387fabc0b3c6606d2b54135756ffb92963b382 + checksum: d779d4d3a6f8d363f67fcbd928c15baa72be8d3b86c6d05e0300b50e66e2c4be9e99398b803d13064bc79d90ae36e37a505e3dc8af11904459804dec07660246 languageName: node linkType: hard -"@babel/plugin-transform-classes@npm:^7.25.4": - version: 7.25.4 - resolution: "@babel/plugin-transform-classes@npm:7.25.4" +"@babel/plugin-transform-classes@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-classes@npm:7.25.9" dependencies: - "@babel/helper-annotate-as-pure": ^7.24.7 - "@babel/helper-compilation-targets": ^7.25.2 - "@babel/helper-plugin-utils": ^7.24.8 - "@babel/helper-replace-supers": ^7.25.0 - "@babel/traverse": ^7.25.4 + "@babel/helper-annotate-as-pure": ^7.25.9 + "@babel/helper-compilation-targets": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 + "@babel/helper-replace-supers": ^7.25.9 + "@babel/traverse": ^7.25.9 globals: ^11.1.0 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 0bf20e46eeb691bd60cee5d1b01950fc37accec88018ecace25099f7c8d8509c1ac54d11b8caf9f2157c6945969520642a3bc421159c1a14e80224dc9a7611de + checksum: d12584f72125314cc0fa8c77586ece2888d677788ac75f7393f5da574dfe4e45a556f7e3488fab29c8777ab3e5856d7a2d79f6df02834083aaa9d766440e3c68 languageName: node linkType: hard -"@babel/plugin-transform-computed-properties@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-computed-properties@npm:7.24.7" +"@babel/plugin-transform-computed-properties@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-computed-properties@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.24.7 - "@babel/template": ^7.24.7 + "@babel/helper-plugin-utils": ^7.25.9 + "@babel/template": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 0cf8c1b1e4ea57dec8d4612460d84fd4cdbf71a7499bb61ee34632cf89018a59eee818ffca88a8d99ee7057c20a4257044d7d463fda6daef9bf1db9fa81563cb + checksum: f77fa4bc0c1e0031068172df28852388db6b0f91c268d037905f459607cf1e8ebab00015f9f179f4ad96e11c5f381b635cd5dc4e147a48c7ac79d195ae7542de languageName: node linkType: hard -"@babel/plugin-transform-destructuring@npm:^7.24.8": - version: 7.24.8 - resolution: "@babel/plugin-transform-destructuring@npm:7.24.8" +"@babel/plugin-transform-destructuring@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-destructuring@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.24.8 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 0b4bd3d608979a1e5bd97d9d42acd5ad405c7fffa61efac4c7afd8e86ea6c2d91ab2d94b6a98d63919571363fe76e0b03c4ff161f0f60241b895842596e4a999 + checksum: 965f63077a904828f4adee91393f83644098533442b8217d5a135c23a759a4c252c714074c965676a60d2c33f610f579a4eeb59ffd783724393af61c0ca45fef languageName: node linkType: hard -"@babel/plugin-transform-dotall-regex@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-dotall-regex@npm:7.24.7" +"@babel/plugin-transform-dotall-regex@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-dotall-regex@npm:7.25.9" dependencies: - "@babel/helper-create-regexp-features-plugin": ^7.24.7 - "@babel/helper-plugin-utils": ^7.24.7 + "@babel/helper-create-regexp-features-plugin": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 67b10fc6abb1f61f0e765288eb4c6d63d1d0f9fc0660e69f6f2170c56fa16bc74e49857afc644beda112b41771cd90cf52df0940d11e97e52617c77c7dcff171 + checksum: 8bdf1bb9e6e3a2cc8154ae88a3872faa6dc346d6901994505fb43ac85f858728781f1219f40b67f7bb0687c507450236cb7838ac68d457e65637f98500aa161b languageName: node linkType: hard -"@babel/plugin-transform-duplicate-keys@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-duplicate-keys@npm:7.24.7" +"@babel/plugin-transform-duplicate-keys@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-duplicate-keys@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.24.7 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: d1da2ff85ecb56a63f4ccfd9dc9ae69400d85f0dadf44ecddd9e71c6e5c7a9178e74e3a9637555f415a2bb14551e563f09f98534ab54f53d25e8439fdde6ba2d + checksum: b553eebc328797ead6be5ba5bdaf2f1222cea8a5bd33fb4ed625975d4f9b510bfb0d688d97e314cd4b4a48b279bea7b3634ad68c1b41ee143c3082db0ae74037 languageName: node linkType: hard -"@babel/plugin-transform-duplicate-named-capturing-groups-regex@npm:^7.25.0": - version: 7.25.0 - resolution: "@babel/plugin-transform-duplicate-named-capturing-groups-regex@npm:7.25.0" +"@babel/plugin-transform-duplicate-named-capturing-groups-regex@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-duplicate-named-capturing-groups-regex@npm:7.25.9" dependencies: - "@babel/helper-create-regexp-features-plugin": ^7.25.0 - "@babel/helper-plugin-utils": ^7.24.8 + "@babel/helper-create-regexp-features-plugin": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0 - checksum: 608d6b0e77341189508880fd1a9f605a38d0803dd6f678ea3920ab181b17b377f6d5221ae8cf0104c7a044d30d4ddb0366bd064447695671d78457a656bb264f + checksum: f7233cf596be8c6843d31951afaf2464a62a610cb89c72c818c044765827fab78403ab8a7d3a6386f838c8df574668e2a48f6c206b1d7da965aff9c6886cb8e6 languageName: node linkType: hard -"@babel/plugin-transform-dynamic-import@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-dynamic-import@npm:7.24.7" +"@babel/plugin-transform-dynamic-import@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-dynamic-import@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.24.7 - "@babel/plugin-syntax-dynamic-import": ^7.8.3 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 776509ff62ab40c12be814a342fc56a5cc09b91fb63032b2633414b635875fd7da03734657be0f6db2891fe6e3033b75d5ddb6f2baabd1a02e4443754a785002 + checksum: aaca1ccda819be9b2b85af47ba08ddd2210ff2dbea222f26e4cd33f97ab020884bf81a66197e50872721e9daf36ceb5659502c82199884ea74d5d75ecda5c58b languageName: node linkType: hard -"@babel/plugin-transform-exponentiation-operator@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-exponentiation-operator@npm:7.24.7" +"@babel/plugin-transform-exponentiation-operator@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-exponentiation-operator@npm:7.25.9" dependencies: - "@babel/helper-builder-binary-assignment-operator-visitor": ^7.24.7 - "@babel/helper-plugin-utils": ^7.24.7 + "@babel/helper-builder-binary-assignment-operator-visitor": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 23c84a23eb56589fdd35a3540f9a1190615be069110a2270865223c03aee3ba4e0fc68fe14850800cf36f0712b26e4964d3026235261f58f0405a29fe8dac9b1 + checksum: 57e1bb4135dd16782fe84b49dd360cce8f9bf5f62eb10424dcdaf221e54a8bacdf50f2541c5ac01dea9f833a6c628613d71be915290938a93454389cba4de06b languageName: node linkType: hard -"@babel/plugin-transform-export-namespace-from@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-export-namespace-from@npm:7.24.7" +"@babel/plugin-transform-export-namespace-from@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-export-namespace-from@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.24.7 - "@babel/plugin-syntax-export-namespace-from": ^7.8.3 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 3bd3a10038f10ae0dea1ee42137f3edcf7036b5e9e570a0d1cbd0865f03658990c6c2d84fa2475f87a754e7dc5b46766c16f7ce5c9b32c3040150b6a21233a80 + checksum: 4dfe8df86c5b1d085d591290874bb2d78a9063090d71567ed657a418010ad333c3f48af2c974b865f53bbb718987a065f89828d43279a7751db1a56c9229078d languageName: node linkType: hard -"@babel/plugin-transform-for-of@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-for-of@npm:7.24.7" +"@babel/plugin-transform-for-of@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-for-of@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.24.7 - "@babel/helper-skip-transparent-expression-wrappers": ^7.24.7 + "@babel/helper-plugin-utils": ^7.25.9 + "@babel/helper-skip-transparent-expression-wrappers": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: a53b42dc93ab4b7d1ebd3c695b52be22b3d592f6a3dbdb3dc2fea2c8e0a7e1508fe919864c455cde552aec44ce7518625fccbb70c7063373ca228d884f4f49ea + checksum: 41b56e70256a29fc26ed7fb95ece062d7ec2f3b6ea8f0686349ffd004cd4816132085ee21165b89c502ee7161cb7cfb12510961638851357945dc7bc546475b7 languageName: node linkType: hard -"@babel/plugin-transform-function-name@npm:^7.25.1": - version: 7.25.1 - resolution: "@babel/plugin-transform-function-name@npm:7.25.1" +"@babel/plugin-transform-function-name@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-function-name@npm:7.25.9" dependencies: - "@babel/helper-compilation-targets": ^7.24.8 - "@babel/helper-plugin-utils": ^7.24.8 - "@babel/traverse": ^7.25.1 + "@babel/helper-compilation-targets": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 + "@babel/traverse": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 743f3ea03bbc5a90944849d5a880b6bd9243dddbde581a46952da76e53a0b74c1e2424133fe8129d7a152c1f8c872bcd27e0b6728d7caadabd1afa7bb892e1e0 + checksum: a8d7c8d019a6eb57eab5ca1be3e3236f175557d55b1f3b11f8ad7999e3fbb1cf37905fd8cb3a349bffb4163a558e9f33b63f631597fdc97c858757deac1b2fd7 languageName: node linkType: hard -"@babel/plugin-transform-json-strings@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-json-strings@npm:7.24.7" +"@babel/plugin-transform-json-strings@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-json-strings@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.24.7 - "@babel/plugin-syntax-json-strings": ^7.8.3 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 88874d0b7a1ddea66c097fc0abb68801ffae194468aa44b828dde9a0e20ac5d8647943793de86092eabaa2911c96f67a6b373793d4bb9c932ef81b2711c06c2e + checksum: e2498d84761cfd05aaea53799933d55af309c9d6204e66b38778792d171e4d1311ad34f334259a3aa3407dd0446f6bd3e390a1fcb8ce2e42fe5aabed0e41bee1 languageName: node linkType: hard -"@babel/plugin-transform-literals@npm:^7.25.2": - version: 7.25.2 - resolution: "@babel/plugin-transform-literals@npm:7.25.2" +"@babel/plugin-transform-literals@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-literals@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.24.8 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 70c9bb40e377a306bd8f500899fb72127e527517914466e95dc6bb53fa7a0f51479db244a54a771b5780fc1eab488fedd706669bf11097b81a23c81ab7423eb1 + checksum: 3cca75823a38aab599bc151b0fa4d816b5e1b62d6e49c156aa90436deb6e13649f5505973151a10418b64f3f9d1c3da53e38a186402e0ed7ad98e482e70c0c14 languageName: node linkType: hard -"@babel/plugin-transform-logical-assignment-operators@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-logical-assignment-operators@npm:7.24.7" +"@babel/plugin-transform-logical-assignment-operators@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-logical-assignment-operators@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.24.7 - "@babel/plugin-syntax-logical-assignment-operators": ^7.10.4 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 3367ce0be243704dc6fce23e86a592c4380f01998ee5dd9f94c54b1ef7b971ac6f8a002901eb51599ac6cbdc0d067af8d1a720224fca1c40fde8bb8aab804aac + checksum: 8c6febb4ac53852314d28b5e2c23d5dbbff7bf1e57d61f9672e0d97531ef7778b3f0ad698dcf1179f5486e626c77127508916a65eb846a89e98a92f70ed3537b languageName: node linkType: hard -"@babel/plugin-transform-member-expression-literals@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-member-expression-literals@npm:7.24.7" +"@babel/plugin-transform-member-expression-literals@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-member-expression-literals@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.24.7 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 2720c57aa3bf70576146ba7d6ea03227f4611852122d76d237924f7b008dafc952e6ae61a19e5024f26c665f44384bbd378466f01b6bd1305b3564a3b7fb1a5d + checksum: db92041ae87b8f59f98b50359e0bb172480f6ba22e5e76b13bdfe07122cbf0daa9cd8ad2e78dcb47939938fed88ad57ab5989346f64b3a16953fc73dea3a9b1f languageName: node linkType: hard -"@babel/plugin-transform-modules-amd@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-modules-amd@npm:7.24.7" +"@babel/plugin-transform-modules-amd@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-modules-amd@npm:7.25.9" dependencies: - "@babel/helper-module-transforms": ^7.24.7 - "@babel/helper-plugin-utils": ^7.24.7 + "@babel/helper-module-transforms": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: f1dd0fb2f46c0f8f21076b8c7ccd5b33a85ce6dcb31518ea4c648d9a5bb2474cd4bd87c9b1b752e68591e24b022e334ba0d07631fef2b6b4d8a4b85cf3d581f5 + checksum: baad1f6fd0e0d38e9a9c1086a06abdc014c4c653fd452337cadfe23fb5bd8bf4368d1bc433a5ac8e6421bc0732ebb7c044cf3fb39c1b7ebe967d66e26c4e5cec languageName: node linkType: hard -"@babel/plugin-transform-modules-commonjs@npm:^7.24.7, @babel/plugin-transform-modules-commonjs@npm:^7.24.8": - version: 7.24.8 - resolution: "@babel/plugin-transform-modules-commonjs@npm:7.24.8" +"@babel/plugin-transform-modules-commonjs@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-modules-commonjs@npm:7.25.9" dependencies: - "@babel/helper-module-transforms": ^7.24.8 - "@babel/helper-plugin-utils": ^7.24.8 - "@babel/helper-simple-access": ^7.24.7 + "@babel/helper-module-transforms": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 + "@babel/helper-simple-access": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: a4cf95b1639c33382064b44558f73ee5fac023f2a94d16e549d2bb55ceebd5cbc10fcddd505d08cd5bc97f5a64af9fd155512358b7dcf7b1a0082e8945cf21c5 + checksum: 4f101f0ea4a57d1d27a7976d668c63a7d0bbb0d9c1909d8ac43c785fd1496c31e6552ffd9673730c088873df1bc64f1cc4aad7c3c90413ac5e80b33e336d80e4 languageName: node linkType: hard -"@babel/plugin-transform-modules-systemjs@npm:^7.25.0": - version: 7.25.0 - resolution: "@babel/plugin-transform-modules-systemjs@npm:7.25.0" +"@babel/plugin-transform-modules-systemjs@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-modules-systemjs@npm:7.25.9" dependencies: - "@babel/helper-module-transforms": ^7.25.0 - "@babel/helper-plugin-utils": ^7.24.8 - "@babel/helper-validator-identifier": ^7.24.7 - "@babel/traverse": ^7.25.0 + "@babel/helper-module-transforms": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 + "@babel/helper-validator-identifier": ^7.25.9 + "@babel/traverse": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: fe673bec08564e491847324bb80a1e6edfb229f5c37e58a094d51e95306e7b098e1d130fc43e992d22debd93b9beac74441ffc3f6ea5d78f6b2535896efa0728 + checksum: bf446202f372ba92dc0db32b24b56225b6e3ad3b227e31074de8b86fdec01c273ae2536873e38dbe3ceb1cd0894209343adeaa37df208e3fa88c0c7dffec7924 languageName: node linkType: hard -"@babel/plugin-transform-modules-umd@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-modules-umd@npm:7.24.7" +"@babel/plugin-transform-modules-umd@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-modules-umd@npm:7.25.9" dependencies: - "@babel/helper-module-transforms": ^7.24.7 - "@babel/helper-plugin-utils": ^7.24.7 + "@babel/helper-module-transforms": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 9ff1c464892efe042952ba778468bda6131b196a2729615bdcc3f24cdc94014f016a4616ee5643c5845bade6ba698f386833e61056d7201314b13a7fd69fac88 + checksum: 946db66be5f04ab9ee56c424b00257276ec094aa2f148508927e6085239f76b00304fa1e33026d29eccdbe312efea15ca3d92e74a12689d7f0cdd9a7ba1a6c54 languageName: node linkType: hard -"@babel/plugin-transform-named-capturing-groups-regex@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-named-capturing-groups-regex@npm:7.24.7" +"@babel/plugin-transform-named-capturing-groups-regex@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-named-capturing-groups-regex@npm:7.25.9" dependencies: - "@babel/helper-create-regexp-features-plugin": ^7.24.7 - "@babel/helper-plugin-utils": ^7.24.7 + "@babel/helper-create-regexp-features-plugin": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0 - checksum: f1c6c7b5d60a86b6d7e4dd098798e1d393d55e993a0b57a73b53640c7a94985b601a96bdacee063f809a9a700bcea3a2ff18e98fa561554484ac56b761d774bd + checksum: 434346ba05cf74e3f4704b3bdd439287b95cd2a8676afcdc607810b8c38b6f4798cd69c1419726b2e4c7204e62e4a04d31b0360e91ca57a930521c9211e07789 languageName: node linkType: hard -"@babel/plugin-transform-new-target@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-new-target@npm:7.24.7" +"@babel/plugin-transform-new-target@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-new-target@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.24.7 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 3cb94cd1076b270f768f91fdcf9dd2f6d487f8dbfff3df7ca8d07b915900b86d02769a35ba1407d16fe49499012c8f055e1741299e2c880798b953d942a8fa1b + checksum: f8113539919aafce52f07b2bd182c771a476fe1d5d96d813460b33a16f173f038929369c595572cadc1f7bd8cb816ce89439d056e007770ddd7b7a0878e7895f languageName: node linkType: hard -"@babel/plugin-transform-nullish-coalescing-operator@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-nullish-coalescing-operator@npm:7.24.7" +"@babel/plugin-transform-nullish-coalescing-operator@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-nullish-coalescing-operator@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.24.7 - "@babel/plugin-syntax-nullish-coalescing-operator": ^7.8.3 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 4a9221356401d87762afbc37a9e8e764afc2daf09c421117537820f8cfbed6876888372ad3a7bcfae2d45c95f026651f050ab4020b777be31d3ffb00908dbdd3 + checksum: 26e03b1c2c0408cc300e46d8f8cb639653ff3a7b03456d0d8afbb53c44f33a89323f51d99991dade3a5676921119bbdf869728bb7911799b5ef99ffafa2cdd24 languageName: node linkType: hard -"@babel/plugin-transform-numeric-separator@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-numeric-separator@npm:7.24.7" +"@babel/plugin-transform-numeric-separator@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-numeric-separator@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.24.7 - "@babel/plugin-syntax-numeric-separator": ^7.10.4 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 561b5f1d08b2c3f92ce849f092751558b5e6cfeb7eb55c79e7375c34dd9c3066dce5e630bb439affef6adcf202b6cbcaaa23870070276fa5bb429c8f5b8c7514 + checksum: 0528ef041ed88e8c3f51624ee87b8182a7f246fe4013f0572788e0727d20795b558f2b82e3989b5dd416cbd339500f0d88857de41b6d3b6fdacb1d5344bcc5b1 languageName: node linkType: hard -"@babel/plugin-transform-object-rest-spread@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-object-rest-spread@npm:7.24.7" +"@babel/plugin-transform-object-rest-spread@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-object-rest-spread@npm:7.25.9" dependencies: - "@babel/helper-compilation-targets": ^7.24.7 - "@babel/helper-plugin-utils": ^7.24.7 - "@babel/plugin-syntax-object-rest-spread": ^7.8.3 - "@babel/plugin-transform-parameters": ^7.24.7 + "@babel/helper-compilation-targets": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 + "@babel/plugin-transform-parameters": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 169d257b9800c13e1feb4c37fb05dae84f702e58b342bb76e19e82e6692b7b5337c9923ee89e3916a97c0dd04a3375bdeca14f5e126f110bbacbeb46d1886ca2 + checksum: a8ff73e1c46a03056b3a2236bafd6b3a4b83da93afe7ee24a50d0a8088150bf85bc5e5977daa04e66ff5fb7613d02d63ad49b91ebb64cf3f3022598d722e3a7a languageName: node linkType: hard -"@babel/plugin-transform-object-super@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-object-super@npm:7.24.7" +"@babel/plugin-transform-object-super@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-object-super@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.24.7 - "@babel/helper-replace-supers": ^7.24.7 + "@babel/helper-plugin-utils": ^7.25.9 + "@babel/helper-replace-supers": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: f71e607a830ee50a22fa1a2686524d3339440cf9dea63032f6efbd865cfe4e35000e1e3f3492459e5c986f7c0c07dc36938bf3ce61fc9ba5f8ab732d0b64ab37 + checksum: 1817b5d8b80e451ae1ad9080cca884f4f16df75880a158947df76a2ed8ab404d567a7dce71dd8051ef95f90fbe3513154086a32aba55cc76027f6cbabfbd7f98 languageName: node linkType: hard -"@babel/plugin-transform-optional-catch-binding@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-optional-catch-binding@npm:7.24.7" +"@babel/plugin-transform-optional-catch-binding@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-optional-catch-binding@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.24.7 - "@babel/plugin-syntax-optional-catch-binding": ^7.8.3 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 7229f3a5a4facaab40f4fdfc7faabc157dc38a67d66bed7936599f4bc509e0bff636f847ac2aa45294881fce9cf8a0a460b85d2a465b7b977de9739fce9b18f6 + checksum: b46a8d1e91829f3db5c252583eb00d05a779b4660abeea5500fda0f8ffa3584fd18299443c22f7fddf0ed9dfdb73c782c43b445dc468d4f89803f2356963b406 languageName: node linkType: hard -"@babel/plugin-transform-optional-chaining@npm:^7.24.7, @babel/plugin-transform-optional-chaining@npm:^7.24.8": - version: 7.24.8 - resolution: "@babel/plugin-transform-optional-chaining@npm:7.24.8" +"@babel/plugin-transform-optional-chaining@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-optional-chaining@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.24.8 - "@babel/helper-skip-transparent-expression-wrappers": ^7.24.7 - "@babel/plugin-syntax-optional-chaining": ^7.8.3 + "@babel/helper-plugin-utils": ^7.25.9 + "@babel/helper-skip-transparent-expression-wrappers": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 45e55e3a2fffb89002d3f89aef59c141610f23b60eee41e047380bffc40290b59f64fc649aa7ec5281f73d41b2065410d788acc6afaad2a9f44cad6e8af04442 + checksum: f1642a7094456067e82b176e1e9fd426fda7ed9df54cb6d10109fc512b622bf4b3c83acc5875125732b8622565107fdbe2d60fe3ec8685e1d1c22c38c1b57782 languageName: node linkType: hard -"@babel/plugin-transform-parameters@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-parameters@npm:7.24.7" +"@babel/plugin-transform-parameters@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-parameters@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.24.7 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: ab534b03ac2eff94bc79342b8f39a4584666f5305a6c63c1964afda0b1b004e6b861e49d1683548030defe248e3590d3ff6338ee0552cb90c064f7e1479968c3 + checksum: d7ba2a7d05edbc85aed741289b0ff3d6289a1c25d82ac4be32c565f88a66391f46631aad59ceeed40824037f7eeaa7a0de1998db491f50e65a565cd964f78786 languageName: node linkType: hard -"@babel/plugin-transform-private-methods@npm:^7.25.4": - version: 7.25.4 - resolution: "@babel/plugin-transform-private-methods@npm:7.25.4" +"@babel/plugin-transform-private-methods@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-private-methods@npm:7.25.9" dependencies: - "@babel/helper-create-class-features-plugin": ^7.25.4 - "@babel/helper-plugin-utils": ^7.24.8 + "@babel/helper-create-class-features-plugin": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: cb1dabfc03e2977990263d65bc8f43a9037dffbb5d9a5f825c00d05447ff68015099408c1531d9dd88f18a41a90f5062dc48f3a1d52b415d2d2ee4827dedff09 + checksum: 6e3671b352c267847c53a170a1937210fa8151764d70d25005e711ef9b21969aaf422acc14f9f7fb86bc0e4ec43e7aefcc0ad9196ae02d262ec10f509f126a58 languageName: node linkType: hard -"@babel/plugin-transform-private-property-in-object@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-private-property-in-object@npm:7.24.7" +"@babel/plugin-transform-private-property-in-object@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-private-property-in-object@npm:7.25.9" dependencies: - "@babel/helper-annotate-as-pure": ^7.24.7 - "@babel/helper-create-class-features-plugin": ^7.24.7 - "@babel/helper-plugin-utils": ^7.24.7 - "@babel/plugin-syntax-private-property-in-object": ^7.14.5 + "@babel/helper-annotate-as-pure": ^7.25.9 + "@babel/helper-create-class-features-plugin": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 8cee9473095305cc787bb653fd681719b49363281feabf677db8a552e8e41c94441408055d7e5fd5c7d41b315e634fa70b145ad0c7c54456216049df4ed57350 + checksum: 9ce3e983fea9b9ba677c192aa065c0b42ebdc7774be4c02135df09029ad92a55c35b004650c75952cb64d650872ed18f13ab64422c6fc891d06333762caa8a0a languageName: node linkType: hard -"@babel/plugin-transform-property-literals@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-property-literals@npm:7.24.7" +"@babel/plugin-transform-property-literals@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-property-literals@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.24.7 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 9aeefc3aab6c6bf9d1fae1cf3a2d38c7d886fd3c6c81b7c608c477f5758aee2e7abf52f32724310fe861da61af934ee2508b78a5b5f234b9740c9134e1c14437 + checksum: 436046ab07d54a9b44a384eeffec701d4e959a37a7547dda72e069e751ca7ff753d1782a8339e354b97c78a868b49ea97bf41bf5a44c6d7a3c0a05ad40eeb49c languageName: node linkType: hard @@ -1265,302 +1073,300 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-react-display-name@npm:^7.22.5": - version: 7.22.5 - resolution: "@babel/plugin-transform-react-display-name@npm:7.22.5" +"@babel/plugin-transform-react-display-name@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-react-display-name@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.22.5 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: a12bfd1e4e93055efca3ace3c34722571bda59d9740dca364d225d9c6e3ca874f134694d21715c42cc63d79efd46db9665bd4a022998767f9245f1e29d5d204d + checksum: cd7020494e6f31c287834e8929e6a718d5b0ace21232fa30feb48622c2312045504c34b347dcff9e88145c349882b296a7d6b6cc3d3447d8c85502f16471747c languageName: node linkType: hard -"@babel/plugin-transform-react-jsx-development@npm:^7.22.5": - version: 7.22.5 - resolution: "@babel/plugin-transform-react-jsx-development@npm:7.22.5" +"@babel/plugin-transform-react-jsx-development@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-react-jsx-development@npm:7.25.9" dependencies: - "@babel/plugin-transform-react-jsx": ^7.22.5 + "@babel/plugin-transform-react-jsx": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 36bc3ff0b96bb0ef4723070a50cfdf2e72cfd903a59eba448f9fe92fea47574d6f22efd99364413719e1f3fb3c51b6c9b2990b87af088f8486a84b2a5f9e4560 + checksum: 537d38369537f1eb56041c4b770bc0733fde1801a7f5ffef40a1217ea448f33ee2fa8e6098a58a82fd00e432c1b9426a66849496da419020c9eca3b1b1a23779 languageName: node linkType: hard -"@babel/plugin-transform-react-jsx@npm:^7.22.15, @babel/plugin-transform-react-jsx@npm:^7.22.5": - version: 7.22.15 - resolution: "@babel/plugin-transform-react-jsx@npm:7.22.15" +"@babel/plugin-transform-react-jsx@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-react-jsx@npm:7.25.9" dependencies: - "@babel/helper-annotate-as-pure": ^7.22.5 - "@babel/helper-module-imports": ^7.22.15 - "@babel/helper-plugin-utils": ^7.22.5 - "@babel/plugin-syntax-jsx": ^7.22.5 - "@babel/types": ^7.22.15 + "@babel/helper-annotate-as-pure": ^7.25.9 + "@babel/helper-module-imports": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 + "@babel/plugin-syntax-jsx": ^7.25.9 + "@babel/types": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 3899054e89550c3a0ef041af7c47ee266e2e934f498ee80fefeda778a6aa177b48aa8b4d2a8bf5848de977fec564571699ab952d9fa089c4c19b45ddb121df09 + checksum: 5c6523c3963e3c6cf4c3cc2768a3766318af05b8f6c17aff52a4010e2c170e87b2fcdc94e9c9223ae12158664df4852ce81b9c8d042c15ea8fd83d6375f9f30f languageName: node linkType: hard -"@babel/plugin-transform-react-pure-annotations@npm:^7.22.5": - version: 7.22.5 - resolution: "@babel/plugin-transform-react-pure-annotations@npm:7.22.5" +"@babel/plugin-transform-react-pure-annotations@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-react-pure-annotations@npm:7.25.9" dependencies: - "@babel/helper-annotate-as-pure": ^7.22.5 - "@babel/helper-plugin-utils": ^7.22.5 + "@babel/helper-annotate-as-pure": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 092021c4f404e267002099ec20b3f12dd730cb90b0d83c5feed3dc00dbe43b9c42c795a18e7c6c7d7bddea20c7dd56221b146aec81b37f2e7eb5137331c61120 + checksum: 9995c0fc7c25d3aaaa0ce84233de02eab2564ea111d0813ec5baa538eb21520402879cc787ad1ad4c2061b99cebc3beb09910e64c9592e8ccb42ae62d9e4fd9a languageName: node linkType: hard -"@babel/plugin-transform-regenerator@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-regenerator@npm:7.24.7" +"@babel/plugin-transform-regenerator@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-regenerator@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.24.7 + "@babel/helper-plugin-utils": ^7.25.9 regenerator-transform: ^0.15.2 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 20c6c3fb6fc9f407829087316653388d311e8c1816b007609bb09aeef254092a7157adace8b3aaa8f34be752503717cb85c88a5fe482180a9b11bcbd676063be + checksum: 1c09e8087b476c5967282c9790fb8710e065eda77c60f6cb5da541edd59ded9d003d96f8ef640928faab4a0b35bf997673499a194973da4f0c97f0935807a482 languageName: node linkType: hard -"@babel/plugin-transform-reserved-words@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-reserved-words@npm:7.24.7" +"@babel/plugin-transform-regexp-modifiers@npm:^7.26.0": + version: 7.26.0 + resolution: "@babel/plugin-transform-regexp-modifiers@npm:7.26.0" dependencies: - "@babel/helper-plugin-utils": ^7.24.7 + "@babel/helper-create-regexp-features-plugin": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 726deca486bbd4b176f8a966eb0f4aabc19d9def3b8dabb8b3a656778eca0df1fda3f3c92b213aa5a184232fdafd5b7bd73b4e24ca4345c498ef6baff2bda4e1 + languageName: node + linkType: hard + +"@babel/plugin-transform-reserved-words@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-reserved-words@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 3d5876954d5914d7270819479504f30c4bf5452a65c677f44e2dab2db50b3c9d4b47793c45dfad7abf4f377035dd79e4b3f554ae350df9f422201d370ce9f8dd + checksum: 8beda04481b25767acbd1f6b9ef7b3a9c12fbd9dcb24df45a6ad120e1dc4b247c073db60ac742f9093657d6d8c050501fc0606af042f81a3bb6a3ff862cddc47 languageName: node linkType: hard -"@babel/plugin-transform-runtime@npm:^7.22.9": - version: 7.22.15 - resolution: "@babel/plugin-transform-runtime@npm:7.22.15" +"@babel/plugin-transform-runtime@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-runtime@npm:7.25.9" dependencies: - "@babel/helper-module-imports": ^7.22.15 - "@babel/helper-plugin-utils": ^7.22.5 - babel-plugin-polyfill-corejs2: ^0.4.5 - babel-plugin-polyfill-corejs3: ^0.8.3 - babel-plugin-polyfill-regenerator: ^0.5.2 + "@babel/helper-module-imports": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 + babel-plugin-polyfill-corejs2: ^0.4.10 + babel-plugin-polyfill-corejs3: ^0.10.6 + babel-plugin-polyfill-regenerator: ^0.6.1 semver: ^6.3.1 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 7edf20b13d02f856276221624abf3b8084daa3f265a6e5c70ee0d0c63087fcf726dc8756a9c8bb3d25a1ce8697ab66ec8cdd15be992c21aed9971cb5bfe80a5b + checksum: db7f20a7a7324dbfe3b43a09f0095c69dadcf8b08567fa7c7fa6e245d97c66cdcdc330e97733b7589261c0e1046bc5cc36741b932ac5dd7757374495b57e7b02 languageName: node linkType: hard -"@babel/plugin-transform-shorthand-properties@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-shorthand-properties@npm:7.24.7" +"@babel/plugin-transform-shorthand-properties@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-shorthand-properties@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.24.7 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 7b524245814607188212b8eb86d8c850e5974203328455a30881b4a92c364b93353fae14bc2af5b614ef16300b75b8c1d3b8f3a08355985b4794a7feb240adc3 + checksum: f774995d58d4e3a992b732cf3a9b8823552d471040e280264dd15e0735433d51b468fef04d75853d061309389c66bda10ce1b298297ce83999220eb0ad62741d languageName: node linkType: hard -"@babel/plugin-transform-spread@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-spread@npm:7.24.7" +"@babel/plugin-transform-spread@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-spread@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.24.7 - "@babel/helper-skip-transparent-expression-wrappers": ^7.24.7 + "@babel/helper-plugin-utils": ^7.25.9 + "@babel/helper-skip-transparent-expression-wrappers": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 4c4254c8b9cceb1a8f975fa9b92257ddb08380a35c0a3721b8f4b9e13a3d82e403af2e0fba577b9f2452dd8f06bc3dea71cc53b1e2c6af595af5db52a13429d6 + checksum: 2403a5d49171b7714d5e5ecb1f598c61575a4dbe5e33e5a5f08c0ea990b75e693ca1ea983b6a96b2e3e5e7da48c8238333f525e47498c53b577c5d094d964c06 languageName: node linkType: hard -"@babel/plugin-transform-sticky-regex@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-sticky-regex@npm:7.24.7" +"@babel/plugin-transform-sticky-regex@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-sticky-regex@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.24.7 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 118fc7a7ebf7c20411b670c8a030535fdfe4a88bc5643bb625a584dbc4c8a468da46430a20e6bf78914246962b0f18f1b9d6a62561a7762c4f34a038a5a77179 + checksum: 7454b00844dbe924030dd15e2b3615b36e196500c4c47e98dabc6b37a054c5b1038ecd437e910aabf0e43bf56b973cb148d3437d50f6e2332d8309568e3e979b languageName: node linkType: hard -"@babel/plugin-transform-template-literals@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-template-literals@npm:7.24.7" +"@babel/plugin-transform-template-literals@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-template-literals@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.24.7 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: ad44e5826f5a98c1575832dbdbd033adfe683cdff195e178528ead62507564bf02f479b282976cfd3caebad8b06d5fd7349c1cdb880dec3c56daea4f1f179619 + checksum: 92eb1d6e2d95bd24abbb74fa7640d02b66ff6214e0bb616d7fda298a7821ce15132a4265d576a3502a347a3c9e94b6c69ed265bb0784664592fa076785a3d16a languageName: node linkType: hard -"@babel/plugin-transform-typeof-symbol@npm:^7.24.8": - version: 7.24.8 - resolution: "@babel/plugin-transform-typeof-symbol@npm:7.24.8" +"@babel/plugin-transform-typeof-symbol@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-typeof-symbol@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.24.8 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 8663a8e7347cedf181001d99c88cf794b6598c3d82f324098510fe8fb8bd22113995526a77aa35a3cc5d70ffd0617a59dd0d10311a9bf0e1a3a7d3e59b900c00 + checksum: 3f9458840d96f61502f0e9dfaae3efe8325fa0b2151e24ea0d41307f28cdd166905419f5a43447ce0f1ae4bfd001f3906b658839a60269c254168164090b4c73 languageName: node linkType: hard -"@babel/plugin-transform-typescript@npm:^7.24.7": - version: 7.25.2 - resolution: "@babel/plugin-transform-typescript@npm:7.25.2" +"@babel/plugin-transform-typescript@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-typescript@npm:7.25.9" dependencies: - "@babel/helper-annotate-as-pure": ^7.24.7 - "@babel/helper-create-class-features-plugin": ^7.25.0 - "@babel/helper-plugin-utils": ^7.24.8 - "@babel/helper-skip-transparent-expression-wrappers": ^7.24.7 - "@babel/plugin-syntax-typescript": ^7.24.7 + "@babel/helper-annotate-as-pure": ^7.25.9 + "@babel/helper-create-class-features-plugin": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 + "@babel/helper-skip-transparent-expression-wrappers": ^7.25.9 + "@babel/plugin-syntax-typescript": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: b0267128d93560a4350919f7230a3b497e20fb8611d9f04bb3560d6b38877305ccad4c40903160263361c6930a84dbcb5b21b8ea923531bda51f67bffdc2dd0b + checksum: 6dd1303f1b9f314e22c6c54568a8b9709a081ce97be757d4004f960e3e73d6b819e6b49cee6cf1fc8455511e41127a8b580fa34602de62d17ab8a0b2d0ccf183 languageName: node linkType: hard -"@babel/plugin-transform-unicode-escapes@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-unicode-escapes@npm:7.24.7" +"@babel/plugin-transform-unicode-escapes@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-unicode-escapes@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.24.7 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 4af0a193e1ddea6ff82b2b15cc2501b872728050bd625740b813c8062fec917d32d530ff6b41de56c15e7296becdf3336a58db81f5ca8e7c445c1306c52f3e01 + checksum: be067e07488d804e3e82d7771f23666539d2ae5af03bf6eb8480406adf3dabd776e60c1fd5c6078dc5714b73cd80bbaca70e71d4f5d154c5c57200581602ca2f languageName: node linkType: hard -"@babel/plugin-transform-unicode-property-regex@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-unicode-property-regex@npm:7.24.7" +"@babel/plugin-transform-unicode-property-regex@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-unicode-property-regex@npm:7.25.9" dependencies: - "@babel/helper-create-regexp-features-plugin": ^7.24.7 - "@babel/helper-plugin-utils": ^7.24.7 + "@babel/helper-create-regexp-features-plugin": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: aae13350c50973f5802ca7906d022a6a0cc0e3aebac9122d0450bbd51e78252d4c2032ad69385e2759fcbdd3aac5d571bd7e26258907f51f8e1a51b53be626c2 + checksum: 201f6f46c1beb399e79aa208b94c5d54412047511795ce1e790edcd189cef73752e6a099fdfc01b3ad12205f139ae344143b62f21f44bbe02338a95e8506a911 languageName: node linkType: hard -"@babel/plugin-transform-unicode-regex@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-unicode-regex@npm:7.24.7" +"@babel/plugin-transform-unicode-regex@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-unicode-regex@npm:7.25.9" dependencies: - "@babel/helper-create-regexp-features-plugin": ^7.24.7 - "@babel/helper-plugin-utils": ^7.24.7 + "@babel/helper-create-regexp-features-plugin": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 1cb4e70678906e431da0a05ac3f8350025fee290304ad7482d9cfaa1ca67b2e898654de537c9268efbdad5b80d3ebadf42b4a88ea84609bd8a4cce7b11b48afd + checksum: e8baae867526e179467c6ef5280d70390fa7388f8763a19a27c21302dd59b121032568be080749514b097097ceb9af716bf4b90638f1b3cf689aa837ba20150f languageName: node linkType: hard -"@babel/plugin-transform-unicode-sets-regex@npm:^7.25.4": - version: 7.25.4 - resolution: "@babel/plugin-transform-unicode-sets-regex@npm:7.25.4" +"@babel/plugin-transform-unicode-sets-regex@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-unicode-sets-regex@npm:7.25.9" dependencies: - "@babel/helper-create-regexp-features-plugin": ^7.25.2 - "@babel/helper-plugin-utils": ^7.24.8 + "@babel/helper-create-regexp-features-plugin": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0 - checksum: 6d1a7e9fdde4ffc9a81c0e3f261b96a9a0dfe65da282ec96fe63b36c597a7389feac638f1df2a8a4f8c9128337bba8e984f934e9f19077930f33abf1926759ea + checksum: 4445ef20de687cb4dcc95169742a8d9013d680aa5eee9186d8e25875bbfa7ee5e2de26a91177ccf70b1db518e36886abcd44750d28db5d7a9539f0efa6839f4b languageName: node linkType: hard -"@babel/preset-env@npm:^7.20.2, @babel/preset-env@npm:^7.22.9": - version: 7.25.4 - resolution: "@babel/preset-env@npm:7.25.4" +"@babel/preset-env@npm:^7.20.2, @babel/preset-env@npm:^7.25.9": + version: 7.26.0 + resolution: "@babel/preset-env@npm:7.26.0" dependencies: - "@babel/compat-data": ^7.25.4 - "@babel/helper-compilation-targets": ^7.25.2 - "@babel/helper-plugin-utils": ^7.24.8 - "@babel/helper-validator-option": ^7.24.8 - "@babel/plugin-bugfix-firefox-class-in-computed-class-key": ^7.25.3 - "@babel/plugin-bugfix-safari-class-field-initializer-scope": ^7.25.0 - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": ^7.25.0 - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": ^7.24.7 - "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": ^7.25.0 + "@babel/compat-data": ^7.26.0 + "@babel/helper-compilation-targets": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 + "@babel/helper-validator-option": ^7.25.9 + "@babel/plugin-bugfix-firefox-class-in-computed-class-key": ^7.25.9 + "@babel/plugin-bugfix-safari-class-field-initializer-scope": ^7.25.9 + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": ^7.25.9 + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": ^7.25.9 + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": ^7.25.9 "@babel/plugin-proposal-private-property-in-object": 7.21.0-placeholder-for-preset-env.2 - "@babel/plugin-syntax-async-generators": ^7.8.4 - "@babel/plugin-syntax-class-properties": ^7.12.13 - "@babel/plugin-syntax-class-static-block": ^7.14.5 - "@babel/plugin-syntax-dynamic-import": ^7.8.3 - "@babel/plugin-syntax-export-namespace-from": ^7.8.3 - "@babel/plugin-syntax-import-assertions": ^7.24.7 - "@babel/plugin-syntax-import-attributes": ^7.24.7 - "@babel/plugin-syntax-import-meta": ^7.10.4 - "@babel/plugin-syntax-json-strings": ^7.8.3 - "@babel/plugin-syntax-logical-assignment-operators": ^7.10.4 - "@babel/plugin-syntax-nullish-coalescing-operator": ^7.8.3 - "@babel/plugin-syntax-numeric-separator": ^7.10.4 - "@babel/plugin-syntax-object-rest-spread": ^7.8.3 - "@babel/plugin-syntax-optional-catch-binding": ^7.8.3 - "@babel/plugin-syntax-optional-chaining": ^7.8.3 - "@babel/plugin-syntax-private-property-in-object": ^7.14.5 - "@babel/plugin-syntax-top-level-await": ^7.14.5 + "@babel/plugin-syntax-import-assertions": ^7.26.0 + "@babel/plugin-syntax-import-attributes": ^7.26.0 "@babel/plugin-syntax-unicode-sets-regex": ^7.18.6 - "@babel/plugin-transform-arrow-functions": ^7.24.7 - "@babel/plugin-transform-async-generator-functions": ^7.25.4 - "@babel/plugin-transform-async-to-generator": ^7.24.7 - "@babel/plugin-transform-block-scoped-functions": ^7.24.7 - "@babel/plugin-transform-block-scoping": ^7.25.0 - "@babel/plugin-transform-class-properties": ^7.25.4 - "@babel/plugin-transform-class-static-block": ^7.24.7 - "@babel/plugin-transform-classes": ^7.25.4 - "@babel/plugin-transform-computed-properties": ^7.24.7 - "@babel/plugin-transform-destructuring": ^7.24.8 - "@babel/plugin-transform-dotall-regex": ^7.24.7 - "@babel/plugin-transform-duplicate-keys": ^7.24.7 - "@babel/plugin-transform-duplicate-named-capturing-groups-regex": ^7.25.0 - "@babel/plugin-transform-dynamic-import": ^7.24.7 - "@babel/plugin-transform-exponentiation-operator": ^7.24.7 - "@babel/plugin-transform-export-namespace-from": ^7.24.7 - "@babel/plugin-transform-for-of": ^7.24.7 - "@babel/plugin-transform-function-name": ^7.25.1 - "@babel/plugin-transform-json-strings": ^7.24.7 - "@babel/plugin-transform-literals": ^7.25.2 - "@babel/plugin-transform-logical-assignment-operators": ^7.24.7 - "@babel/plugin-transform-member-expression-literals": ^7.24.7 - "@babel/plugin-transform-modules-amd": ^7.24.7 - "@babel/plugin-transform-modules-commonjs": ^7.24.8 - "@babel/plugin-transform-modules-systemjs": ^7.25.0 - "@babel/plugin-transform-modules-umd": ^7.24.7 - "@babel/plugin-transform-named-capturing-groups-regex": ^7.24.7 - "@babel/plugin-transform-new-target": ^7.24.7 - "@babel/plugin-transform-nullish-coalescing-operator": ^7.24.7 - "@babel/plugin-transform-numeric-separator": ^7.24.7 - "@babel/plugin-transform-object-rest-spread": ^7.24.7 - "@babel/plugin-transform-object-super": ^7.24.7 - "@babel/plugin-transform-optional-catch-binding": ^7.24.7 - "@babel/plugin-transform-optional-chaining": ^7.24.8 - "@babel/plugin-transform-parameters": ^7.24.7 - "@babel/plugin-transform-private-methods": ^7.25.4 - "@babel/plugin-transform-private-property-in-object": ^7.24.7 - "@babel/plugin-transform-property-literals": ^7.24.7 - "@babel/plugin-transform-regenerator": ^7.24.7 - "@babel/plugin-transform-reserved-words": ^7.24.7 - "@babel/plugin-transform-shorthand-properties": ^7.24.7 - "@babel/plugin-transform-spread": ^7.24.7 - "@babel/plugin-transform-sticky-regex": ^7.24.7 - "@babel/plugin-transform-template-literals": ^7.24.7 - "@babel/plugin-transform-typeof-symbol": ^7.24.8 - "@babel/plugin-transform-unicode-escapes": ^7.24.7 - "@babel/plugin-transform-unicode-property-regex": ^7.24.7 - "@babel/plugin-transform-unicode-regex": ^7.24.7 - "@babel/plugin-transform-unicode-sets-regex": ^7.25.4 + "@babel/plugin-transform-arrow-functions": ^7.25.9 + "@babel/plugin-transform-async-generator-functions": ^7.25.9 + "@babel/plugin-transform-async-to-generator": ^7.25.9 + "@babel/plugin-transform-block-scoped-functions": ^7.25.9 + "@babel/plugin-transform-block-scoping": ^7.25.9 + "@babel/plugin-transform-class-properties": ^7.25.9 + "@babel/plugin-transform-class-static-block": ^7.26.0 + "@babel/plugin-transform-classes": ^7.25.9 + "@babel/plugin-transform-computed-properties": ^7.25.9 + "@babel/plugin-transform-destructuring": ^7.25.9 + "@babel/plugin-transform-dotall-regex": ^7.25.9 + "@babel/plugin-transform-duplicate-keys": ^7.25.9 + "@babel/plugin-transform-duplicate-named-capturing-groups-regex": ^7.25.9 + "@babel/plugin-transform-dynamic-import": ^7.25.9 + "@babel/plugin-transform-exponentiation-operator": ^7.25.9 + "@babel/plugin-transform-export-namespace-from": ^7.25.9 + "@babel/plugin-transform-for-of": ^7.25.9 + "@babel/plugin-transform-function-name": ^7.25.9 + "@babel/plugin-transform-json-strings": ^7.25.9 + "@babel/plugin-transform-literals": ^7.25.9 + "@babel/plugin-transform-logical-assignment-operators": ^7.25.9 + "@babel/plugin-transform-member-expression-literals": ^7.25.9 + "@babel/plugin-transform-modules-amd": ^7.25.9 + "@babel/plugin-transform-modules-commonjs": ^7.25.9 + "@babel/plugin-transform-modules-systemjs": ^7.25.9 + "@babel/plugin-transform-modules-umd": ^7.25.9 + "@babel/plugin-transform-named-capturing-groups-regex": ^7.25.9 + "@babel/plugin-transform-new-target": ^7.25.9 + "@babel/plugin-transform-nullish-coalescing-operator": ^7.25.9 + "@babel/plugin-transform-numeric-separator": ^7.25.9 + "@babel/plugin-transform-object-rest-spread": ^7.25.9 + "@babel/plugin-transform-object-super": ^7.25.9 + "@babel/plugin-transform-optional-catch-binding": ^7.25.9 + "@babel/plugin-transform-optional-chaining": ^7.25.9 + "@babel/plugin-transform-parameters": ^7.25.9 + "@babel/plugin-transform-private-methods": ^7.25.9 + "@babel/plugin-transform-private-property-in-object": ^7.25.9 + "@babel/plugin-transform-property-literals": ^7.25.9 + "@babel/plugin-transform-regenerator": ^7.25.9 + "@babel/plugin-transform-regexp-modifiers": ^7.26.0 + "@babel/plugin-transform-reserved-words": ^7.25.9 + "@babel/plugin-transform-shorthand-properties": ^7.25.9 + "@babel/plugin-transform-spread": ^7.25.9 + "@babel/plugin-transform-sticky-regex": ^7.25.9 + "@babel/plugin-transform-template-literals": ^7.25.9 + "@babel/plugin-transform-typeof-symbol": ^7.25.9 + "@babel/plugin-transform-unicode-escapes": ^7.25.9 + "@babel/plugin-transform-unicode-property-regex": ^7.25.9 + "@babel/plugin-transform-unicode-regex": ^7.25.9 + "@babel/plugin-transform-unicode-sets-regex": ^7.25.9 "@babel/preset-modules": 0.1.6-no-external-plugins babel-plugin-polyfill-corejs2: ^0.4.10 babel-plugin-polyfill-corejs3: ^0.10.6 babel-plugin-polyfill-regenerator: ^0.6.1 - core-js-compat: ^3.37.1 + core-js-compat: ^3.38.1 semver: ^6.3.1 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 752be43f0b78a2eefe5007076aed3d21b505e1c09d134b61e7de8838f1bbb1e7af81023d39adb14b6eae23727fb5a9fd23f8115a44df043319be22319be17913 + checksum: 0c3e2b3758cc0347dcf5551b5209db702764183dce66ff20bffceff6486c090bef9175f5f7d1e68cfe5584f0d817b2aab25ab5992058a7998f061f244c8caf5f languageName: node linkType: hard @@ -1577,97 +1383,89 @@ __metadata: languageName: node linkType: hard -"@babel/preset-react@npm:^7.18.6, @babel/preset-react@npm:^7.22.5": - version: 7.22.15 - resolution: "@babel/preset-react@npm:7.22.15" +"@babel/preset-react@npm:^7.18.6, @babel/preset-react@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/preset-react@npm:7.25.9" dependencies: - "@babel/helper-plugin-utils": ^7.22.5 - "@babel/helper-validator-option": ^7.22.15 - "@babel/plugin-transform-react-display-name": ^7.22.5 - "@babel/plugin-transform-react-jsx": ^7.22.15 - "@babel/plugin-transform-react-jsx-development": ^7.22.5 - "@babel/plugin-transform-react-pure-annotations": ^7.22.5 + "@babel/helper-plugin-utils": ^7.25.9 + "@babel/helper-validator-option": ^7.25.9 + "@babel/plugin-transform-react-display-name": ^7.25.9 + "@babel/plugin-transform-react-jsx": ^7.25.9 + "@babel/plugin-transform-react-jsx-development": ^7.25.9 + "@babel/plugin-transform-react-pure-annotations": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: c3ef99dfa2e9f57d2e08603e883aa20f47630a826c8e413888a93ae6e0084b5016871e463829be125329d40a1ba0a89f7c43d77b6dab52083c225cb43e63d10e + checksum: b5650c07a744ab4024c04fae002c9043235b4ad8687de8bf759135b9c6186553f4f53fde0a4583ce4c019560b79c176f39c745cdf77645af07071d26d8ba84ce languageName: node linkType: hard -"@babel/preset-typescript@npm:^7.21.0, @babel/preset-typescript@npm:^7.22.5": - version: 7.24.7 - resolution: "@babel/preset-typescript@npm:7.24.7" +"@babel/preset-typescript@npm:^7.21.0, @babel/preset-typescript@npm:^7.25.9": + version: 7.26.0 + resolution: "@babel/preset-typescript@npm:7.26.0" dependencies: - "@babel/helper-plugin-utils": ^7.24.7 - "@babel/helper-validator-option": ^7.24.7 - "@babel/plugin-syntax-jsx": ^7.24.7 - "@babel/plugin-transform-modules-commonjs": ^7.24.7 - "@babel/plugin-transform-typescript": ^7.24.7 + "@babel/helper-plugin-utils": ^7.25.9 + "@babel/helper-validator-option": ^7.25.9 + "@babel/plugin-syntax-jsx": ^7.25.9 + "@babel/plugin-transform-modules-commonjs": ^7.25.9 + "@babel/plugin-transform-typescript": ^7.25.9 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 12929b24757f3bd6548103475f86478eda4c872bc7cefd920b29591eee8f4a4f350561d888e133d632d0c9402b8615fdcec9138e5127a6567dcb22f804ff207f + checksum: 6d8641fa6efd0e10eec5e8f92cd164b916a06d57131cfa5216c281404289c87d2b4995140a1c1d9c3bad171ff6ef2226be5f0585e09577ffff349706e991ec71 languageName: node linkType: hard -"@babel/regjsgen@npm:^0.8.0": - version: 0.8.0 - resolution: "@babel/regjsgen@npm:0.8.0" - checksum: 89c338fee774770e5a487382170711014d49a68eb281e74f2b5eac88f38300a4ad545516a7786a8dd5702e9cf009c94c2f582d200f077ac5decd74c56b973730 - languageName: node - linkType: hard - -"@babel/runtime-corejs3@npm:^7.22.6": - version: 7.23.1 - resolution: "@babel/runtime-corejs3@npm:7.23.1" +"@babel/runtime-corejs3@npm:^7.25.9": + version: 7.26.0 + resolution: "@babel/runtime-corejs3@npm:7.26.0" dependencies: core-js-pure: ^3.30.2 regenerator-runtime: ^0.14.0 - checksum: 5d52b0cc8b5d243e67cf29c584d15acdc0c89b64de4a3fe1cb8a83b84b64a5621802e36931f93ca696cb637884abd11c8514615d890a4edf057ec4464f73915d + checksum: c6c5adac03e33aa4b5bb636a677aa2a6e400b91d91aac5674448d20af4100b80a8bedfb742338e4236e22c092d3edeb27210efdf48bd13ec353bd899f097ff41 languageName: node linkType: hard -"@babel/runtime@npm:^7.1.2, @babel/runtime@npm:^7.10.3, @babel/runtime@npm:^7.12.13, @babel/runtime@npm:^7.12.5, @babel/runtime@npm:^7.22.6, @babel/runtime@npm:^7.8.4": - version: 7.23.1 - resolution: "@babel/runtime@npm:7.23.1" +"@babel/runtime@npm:^7.1.2, @babel/runtime@npm:^7.10.3, @babel/runtime@npm:^7.12.13, @babel/runtime@npm:^7.12.5, @babel/runtime@npm:^7.25.9, @babel/runtime@npm:^7.8.4": + version: 7.26.0 + resolution: "@babel/runtime@npm:7.26.0" dependencies: regenerator-runtime: ^0.14.0 - checksum: 0cd0d43e6e7dc7f9152fda8c8312b08321cda2f56ef53d6c22ebdd773abdc6f5d0a69008de90aa41908d00e2c1facb24715ff121274e689305c858355ff02c70 + checksum: c8e2c0504ab271b3467a261a8f119bf2603eb857a0d71e37791f4e3fae00f681365073cc79f141ddaa90c6077c60ba56448004ad5429d07ac73532be9f7cf28a languageName: node linkType: hard -"@babel/template@npm:^7.24.7, @babel/template@npm:^7.25.0": - version: 7.25.0 - resolution: "@babel/template@npm:7.25.0" +"@babel/template@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/template@npm:7.25.9" dependencies: - "@babel/code-frame": ^7.24.7 - "@babel/parser": ^7.25.0 - "@babel/types": ^7.25.0 - checksum: 3f2db568718756d0daf2a16927b78f00c425046b654cd30b450006f2e84bdccaf0cbe6dc04994aa1f5f6a4398da2f11f3640a4d3ee31722e43539c4c919c817b + "@babel/code-frame": ^7.25.9 + "@babel/parser": ^7.25.9 + "@babel/types": ^7.25.9 + checksum: 103641fea19c7f4e82dc913aa6b6ac157112a96d7c724d513288f538b84bae04fb87b1f1e495ac1736367b1bc30e10f058b30208fb25f66038e1f1eb4e426472 languageName: node linkType: hard -"@babel/traverse@npm:^7.22.8, @babel/traverse@npm:^7.24.7, @babel/traverse@npm:^7.24.8, @babel/traverse@npm:^7.25.0, @babel/traverse@npm:^7.25.1, @babel/traverse@npm:^7.25.2, @babel/traverse@npm:^7.25.3, @babel/traverse@npm:^7.25.4": - version: 7.25.4 - resolution: "@babel/traverse@npm:7.25.4" +"@babel/traverse@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/traverse@npm:7.25.9" dependencies: - "@babel/code-frame": ^7.24.7 - "@babel/generator": ^7.25.4 - "@babel/parser": ^7.25.4 - "@babel/template": ^7.25.0 - "@babel/types": ^7.25.4 + "@babel/code-frame": ^7.25.9 + "@babel/generator": ^7.25.9 + "@babel/parser": ^7.25.9 + "@babel/template": ^7.25.9 + "@babel/types": ^7.25.9 debug: ^4.3.1 globals: ^11.1.0 - checksum: 3b6d879b9d843b119501585269b3599f047011ae21eb7820d00aef62fc3a2bcdaf6f4cdf2679795a2d7c0b6b5d218974916e422f08dea08613dc42188ef21e4b + checksum: 901d325662ff1dd9bc51de00862e01055fa6bc374f5297d7e3731f2f0e268bbb1d2141f53fa82860aa308ee44afdcf186a948f16c83153927925804b95a9594d languageName: node linkType: hard -"@babel/types@npm:^7.21.3, @babel/types@npm:^7.22.15, @babel/types@npm:^7.24.7, @babel/types@npm:^7.24.8, @babel/types@npm:^7.25.0, @babel/types@npm:^7.25.2, @babel/types@npm:^7.25.4, @babel/types@npm:^7.4.4": - version: 7.25.4 - resolution: "@babel/types@npm:7.25.4" +"@babel/types@npm:^7.21.3, @babel/types@npm:^7.25.9, @babel/types@npm:^7.26.0, @babel/types@npm:^7.4.4": + version: 7.26.0 + resolution: "@babel/types@npm:7.26.0" dependencies: - "@babel/helper-string-parser": ^7.24.8 - "@babel/helper-validator-identifier": ^7.24.7 - to-fast-properties: ^2.0.0 - checksum: 497f8b583c54a92a59c3ec542144695064cd5c384fcca46ba1aa301d5e5dd6c1d011f312ca024cb0f9c956da07ae82fb4c348c31a30afa31a074c027720d2aa8 + "@babel/helper-string-parser": ^7.25.9 + "@babel/helper-validator-identifier": ^7.25.9 + checksum: a3dd37dabac693018872da96edb8c1843a605c1bfacde6c3f504fba79b972426a6f24df70aa646356c0c1b19bdd2c722c623c684a996c002381071680602280d languageName: node linkType: hard @@ -1718,57 +1516,96 @@ __metadata: languageName: node linkType: hard -"@docusaurus/core@npm:3.5.2, @docusaurus/core@npm:^3.1.1": - version: 3.5.2 - resolution: "@docusaurus/core@npm:3.5.2" +"@docusaurus/babel@npm:3.6.0": + version: 3.6.0 + resolution: "@docusaurus/babel@npm:3.6.0" dependencies: - "@babel/core": ^7.23.3 - "@babel/generator": ^7.23.3 + "@babel/core": ^7.25.9 + "@babel/generator": ^7.25.9 "@babel/plugin-syntax-dynamic-import": ^7.8.3 - "@babel/plugin-transform-runtime": ^7.22.9 - "@babel/preset-env": ^7.22.9 - "@babel/preset-react": ^7.22.5 - "@babel/preset-typescript": ^7.22.5 - "@babel/runtime": ^7.22.6 - "@babel/runtime-corejs3": ^7.22.6 - "@babel/traverse": ^7.22.8 - "@docusaurus/cssnano-preset": 3.5.2 - "@docusaurus/logger": 3.5.2 - "@docusaurus/mdx-loader": 3.5.2 - "@docusaurus/utils": 3.5.2 - "@docusaurus/utils-common": 3.5.2 - "@docusaurus/utils-validation": 3.5.2 - autoprefixer: ^10.4.14 - babel-loader: ^9.1.3 + "@babel/plugin-transform-runtime": ^7.25.9 + "@babel/preset-env": ^7.25.9 + "@babel/preset-react": ^7.25.9 + "@babel/preset-typescript": ^7.25.9 + "@babel/runtime": ^7.25.9 + "@babel/runtime-corejs3": ^7.25.9 + "@babel/traverse": ^7.25.9 + "@docusaurus/logger": 3.6.0 + "@docusaurus/utils": 3.6.0 babel-plugin-dynamic-import-node: ^2.3.3 - boxen: ^6.2.1 - chalk: ^4.1.2 - chokidar: ^3.5.3 + fs-extra: ^11.1.1 + tslib: ^2.6.0 + checksum: 4e1d8ff4b065508d26cd62a3f95fd94d00c450d41cef568d65696aee764e95e7f7d3e4849b441315fde18a1be5d891a28eef93c770910723a9f003eddeb0449c + languageName: node + linkType: hard + +"@docusaurus/bundler@npm:3.6.0": + version: 3.6.0 + resolution: "@docusaurus/bundler@npm:3.6.0" + dependencies: + "@babel/core": ^7.25.9 + "@docusaurus/babel": 3.6.0 + "@docusaurus/cssnano-preset": 3.6.0 + "@docusaurus/logger": 3.6.0 + "@docusaurus/types": 3.6.0 + "@docusaurus/utils": 3.6.0 + autoprefixer: ^10.4.14 + babel-loader: ^9.2.1 clean-css: ^5.3.2 - cli-table3: ^0.6.3 - combine-promises: ^1.1.0 - commander: ^5.1.0 copy-webpack-plugin: ^11.0.0 - core-js: ^3.31.1 css-loader: ^6.8.1 css-minimizer-webpack-plugin: ^5.0.1 cssnano: ^6.1.2 + file-loader: ^6.2.0 + html-minifier-terser: ^7.2.0 + mini-css-extract-plugin: ^2.9.1 + null-loader: ^4.0.1 + postcss: ^8.4.26 + postcss-loader: ^7.3.3 + react-dev-utils: ^12.0.1 + terser-webpack-plugin: ^5.3.9 + tslib: ^2.6.0 + url-loader: ^4.1.1 + webpack: ^5.95.0 + webpackbar: ^6.0.1 + peerDependencies: + "@docusaurus/faster": 3.5.2 + peerDependenciesMeta: + "@docusaurus/faster": + optional: true + checksum: 410d1ea38b3f788f17ac07c6e6ecfae7c47d235a467d9ebf7111e5945f574b12f61ce25d59c2197d7143ce7f8f4fb388d52ec4cd25b0ff23bece0a6ad6fad840 + languageName: node + linkType: hard + +"@docusaurus/core@npm:3.6.0, @docusaurus/core@npm:^3.6.0": + version: 3.6.0 + resolution: "@docusaurus/core@npm:3.6.0" + dependencies: + "@docusaurus/babel": 3.6.0 + "@docusaurus/bundler": 3.6.0 + "@docusaurus/logger": 3.6.0 + "@docusaurus/mdx-loader": 3.6.0 + "@docusaurus/utils": 3.6.0 + "@docusaurus/utils-common": 3.6.0 + "@docusaurus/utils-validation": 3.6.0 + boxen: ^6.2.1 + chalk: ^4.1.2 + chokidar: ^3.5.3 + cli-table3: ^0.6.3 + combine-promises: ^1.1.0 + commander: ^5.1.0 + core-js: ^3.31.1 del: ^6.1.1 detect-port: ^1.5.1 escape-html: ^1.0.3 eta: ^2.2.0 eval: ^0.1.8 - file-loader: ^6.2.0 fs-extra: ^11.1.1 - html-minifier-terser: ^7.2.0 html-tags: ^3.3.1 - html-webpack-plugin: ^5.5.3 + html-webpack-plugin: ^5.6.0 leven: ^3.1.0 lodash: ^4.17.21 - mini-css-extract-plugin: ^2.7.6 p-map: ^4.0.0 - postcss: ^8.4.26 - postcss-loader: ^7.3.3 prompts: ^2.4.2 react-dev-utils: ^12.0.1 react-helmet-async: ^1.3.0 @@ -1779,56 +1616,71 @@ __metadata: react-router-dom: ^5.3.4 rtl-detect: ^1.0.4 semver: ^7.5.4 - serve-handler: ^6.1.5 + serve-handler: ^6.1.6 shelljs: ^0.8.5 - terser-webpack-plugin: ^5.3.9 tslib: ^2.6.0 update-notifier: ^6.0.2 - url-loader: ^4.1.1 - webpack: ^5.88.1 - webpack-bundle-analyzer: ^4.9.0 - webpack-dev-server: ^4.15.1 - webpack-merge: ^5.9.0 - webpackbar: ^5.0.2 + webpack: ^5.95.0 + webpack-bundle-analyzer: ^4.10.2 + webpack-dev-server: ^4.15.2 + webpack-merge: ^6.0.1 peerDependencies: "@mdx-js/react": ^3.0.0 react: ^18.0.0 react-dom: ^18.0.0 bin: docusaurus: bin/docusaurus.mjs - checksum: 6c6282a75931f0f8f8f8768232b4436ff8679ae12b619f7bd01e0d83aa346e24ab0d9cecac034f9dc95c55059997efdd963d052d3e429583bfb8d3b54ab750d3 + checksum: cbf28e5c3d710c8e24da2e434347417789bea058aab56efa6b33e43555b84ab168eaf79f947c86edf3e417fa3e2607212c8585559d1fa099f19fc018d437a912 languageName: node linkType: hard -"@docusaurus/cssnano-preset@npm:3.5.2": - version: 3.5.2 - resolution: "@docusaurus/cssnano-preset@npm:3.5.2" +"@docusaurus/cssnano-preset@npm:3.6.0": + version: 3.6.0 + resolution: "@docusaurus/cssnano-preset@npm:3.6.0" dependencies: cssnano-preset-advanced: ^6.1.2 postcss: ^8.4.38 postcss-sort-media-queries: ^5.2.0 tslib: ^2.6.0 - checksum: 4bb1fae3741e14cbbdb64c1b0707435970838bf219831234a70cf382e6811ffac1cadf733d5e1fe7c278e7b2a9e533bfa802a5212b22ec46edd703208cf49f92 + checksum: 957c646df1b8593292d667e1b5e4abdce8d3bef484050885a88533560dffb778dafbb355c1a7fc30c4fe0f2be0321c518eb00e982db10ca1db067692c523f1be languageName: node linkType: hard -"@docusaurus/logger@npm:3.5.2": - version: 3.5.2 - resolution: "@docusaurus/logger@npm:3.5.2" +"@docusaurus/faster@npm:^3.6.0": + version: 3.6.0 + resolution: "@docusaurus/faster@npm:3.6.0" + dependencies: + "@rspack/core": ^1.0.14 + "@swc/core": ^1.7.39 + "@swc/html": ^1.7.39 + browserslist: ^4.24.2 + lightningcss: ^1.27.0 + swc-loader: ^0.2.6 + tslib: ^2.6.0 + webpack: ^5.95.0 + peerDependencies: + "@docusaurus/types": "*" + checksum: eedf4ba04f43b2cc8e10d9f3b1b6c6254cafad64d76456361adfe7c14641a6d43fb24c41fe853b59e5bfe55131807d95f05b6e17e575958bdc6575f1e0d794a5 + languageName: node + linkType: hard + +"@docusaurus/logger@npm:3.6.0": + version: 3.6.0 + resolution: "@docusaurus/logger@npm:3.6.0" dependencies: chalk: ^4.1.2 tslib: ^2.6.0 - checksum: 7cbdcf54acd6e7787ca5a10b9c884be4b9e8fdae837862c66550a0bf3d02737f72c3188b2bddd61da6d8530eb2eb2b646ea599a79416e33c4998f1a87d2f6a8c + checksum: 36a02ac7d5c7f2140405c7adb032081dadb827fdb2ab45cf9fde938a37a2f47eded0564efb1c40b0ac16e58bb7300a9193c4bcdd2037cd495f4cc05c653192be languageName: node linkType: hard -"@docusaurus/mdx-loader@npm:3.5.2": - version: 3.5.2 - resolution: "@docusaurus/mdx-loader@npm:3.5.2" +"@docusaurus/mdx-loader@npm:3.6.0": + version: 3.6.0 + resolution: "@docusaurus/mdx-loader@npm:3.6.0" dependencies: - "@docusaurus/logger": 3.5.2 - "@docusaurus/utils": 3.5.2 - "@docusaurus/utils-validation": 3.5.2 + "@docusaurus/logger": 3.6.0 + "@docusaurus/utils": 3.6.0 + "@docusaurus/utils-validation": 3.6.0 "@mdx-js/mdx": ^3.0.0 "@slorber/remark-comment": ^1.0.0 escape-html: ^1.0.3 @@ -1853,15 +1705,15 @@ __metadata: peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - checksum: 36186c2f3487631757b24ba3a21575d2253ca1e6ada82d556bf323da7ae7637c0880eb388bf375e207bc5f26dcd8b58cc76d763e6c2caf6ed80f88748444ce8d + checksum: f44c1c650e30f53cc514662aa7dac9c3fc1781dac271faf38e31ac528330f4650e4e7547b592a34680e26c284d171ab8feed5571d2506f9f6392ebbbdfbb8ba2 languageName: node linkType: hard -"@docusaurus/module-type-aliases@npm:3.5.2, @docusaurus/module-type-aliases@npm:^3.1.1": - version: 3.5.2 - resolution: "@docusaurus/module-type-aliases@npm:3.5.2" +"@docusaurus/module-type-aliases@npm:3.6.0, @docusaurus/module-type-aliases@npm:^3.6.0": + version: 3.6.0 + resolution: "@docusaurus/module-type-aliases@npm:3.6.0" dependencies: - "@docusaurus/types": 3.5.2 + "@docusaurus/types": 3.6.0 "@types/history": ^4.7.11 "@types/react": "*" "@types/react-router-config": "*" @@ -1871,19 +1723,19 @@ __metadata: peerDependencies: react: "*" react-dom: "*" - checksum: 0161db859d459bb25ac162f0c509fb1316dfb403a9e89f325a9bc7d9f35ae1825b9703a435777903ba93de827d4413b189bbd0c03018ac13d66b50633302ea80 + checksum: 58e086a4e45f61c3b17faf98c6e5e8f42a97c56c15010f7dac84e72d6bbc3a8094349ce473cf906bbc56a532b32882e90e5f980584d31deb2d25780798c48a42 languageName: node linkType: hard -"@docusaurus/plugin-client-redirects@npm:^3.1.1": - version: 3.5.2 - resolution: "@docusaurus/plugin-client-redirects@npm:3.5.2" +"@docusaurus/plugin-client-redirects@npm:^3.6.0": + version: 3.6.0 + resolution: "@docusaurus/plugin-client-redirects@npm:3.6.0" dependencies: - "@docusaurus/core": 3.5.2 - "@docusaurus/logger": 3.5.2 - "@docusaurus/utils": 3.5.2 - "@docusaurus/utils-common": 3.5.2 - "@docusaurus/utils-validation": 3.5.2 + "@docusaurus/core": 3.6.0 + "@docusaurus/logger": 3.6.0 + "@docusaurus/utils": 3.6.0 + "@docusaurus/utils-common": 3.6.0 + "@docusaurus/utils-validation": 3.6.0 eta: ^2.2.0 fs-extra: ^11.1.1 lodash: ^4.17.21 @@ -1891,22 +1743,22 @@ __metadata: peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - checksum: 040aa829e819a43cb8d30f6c776c27a303080a4cb2fc2c398266fe9ecbd006dc53c6dd862ebcf4f74d0547042c4df6c4bbf080b3702be6df18c95b95c3e38f1d + checksum: e5534884249b9b614d4579e1016988998c4fb1a3b884af223fecc2ffac225e7a5d90db331b0bc0f90b5e6dbeeb9fa1dd911c8ec36dd7486a512be6bcb04c30ab languageName: node linkType: hard -"@docusaurus/plugin-content-blog@npm:3.5.2": - version: 3.5.2 - resolution: "@docusaurus/plugin-content-blog@npm:3.5.2" +"@docusaurus/plugin-content-blog@npm:3.6.0": + version: 3.6.0 + resolution: "@docusaurus/plugin-content-blog@npm:3.6.0" dependencies: - "@docusaurus/core": 3.5.2 - "@docusaurus/logger": 3.5.2 - "@docusaurus/mdx-loader": 3.5.2 - "@docusaurus/theme-common": 3.5.2 - "@docusaurus/types": 3.5.2 - "@docusaurus/utils": 3.5.2 - "@docusaurus/utils-common": 3.5.2 - "@docusaurus/utils-validation": 3.5.2 + "@docusaurus/core": 3.6.0 + "@docusaurus/logger": 3.6.0 + "@docusaurus/mdx-loader": 3.6.0 + "@docusaurus/theme-common": 3.6.0 + "@docusaurus/types": 3.6.0 + "@docusaurus/utils": 3.6.0 + "@docusaurus/utils-common": 3.6.0 + "@docusaurus/utils-validation": 3.6.0 cheerio: 1.0.0-rc.12 feed: ^4.2.2 fs-extra: ^11.1.1 @@ -1921,23 +1773,23 @@ __metadata: "@docusaurus/plugin-content-docs": "*" react: ^18.0.0 react-dom: ^18.0.0 - checksum: c5997b9d86ccf939998f9d56e65491ecf9e677d8425e95a79b3b428041d4dfc4ecb03a18ef595777c3ad5bd65f4a2dd30d99cb6f1b411161bf7cd32027ecc6d5 + checksum: 50581141a6610dc72a0cc8752efa8b1672157e5c604abd37da25a8bfdab4b3136f886cd61004a076315e65e75b11c53b12c84bdb50f2a6734c22845e35ff3551 languageName: node linkType: hard -"@docusaurus/plugin-content-docs@npm:3.5.2": - version: 3.5.2 - resolution: "@docusaurus/plugin-content-docs@npm:3.5.2" +"@docusaurus/plugin-content-docs@npm:3.6.0": + version: 3.6.0 + resolution: "@docusaurus/plugin-content-docs@npm:3.6.0" dependencies: - "@docusaurus/core": 3.5.2 - "@docusaurus/logger": 3.5.2 - "@docusaurus/mdx-loader": 3.5.2 - "@docusaurus/module-type-aliases": 3.5.2 - "@docusaurus/theme-common": 3.5.2 - "@docusaurus/types": 3.5.2 - "@docusaurus/utils": 3.5.2 - "@docusaurus/utils-common": 3.5.2 - "@docusaurus/utils-validation": 3.5.2 + "@docusaurus/core": 3.6.0 + "@docusaurus/logger": 3.6.0 + "@docusaurus/mdx-loader": 3.6.0 + "@docusaurus/module-type-aliases": 3.6.0 + "@docusaurus/theme-common": 3.6.0 + "@docusaurus/types": 3.6.0 + "@docusaurus/utils": 3.6.0 + "@docusaurus/utils-common": 3.6.0 + "@docusaurus/utils-validation": 3.6.0 "@types/react-router-config": ^5.0.7 combine-promises: ^1.1.0 fs-extra: ^11.1.1 @@ -1949,156 +1801,157 @@ __metadata: peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - checksum: fb7ba7f8a6741b14bbe8db0bf1b12ff7a24d12c40d8276f32b9b393881d74bfed3bed4f1e5b0756cac0e43c4bd8106094d5cf6a3c527400e9713283fc3832dab + checksum: 47264764fbea004f539e57b31171a3d6802dd8481601d3ace9a82db4f43083cb428c1a7a235227b14b84e0be49b02169599b70ac83be928a428da2871e31d501 languageName: node linkType: hard -"@docusaurus/plugin-content-pages@npm:3.5.2": - version: 3.5.2 - resolution: "@docusaurus/plugin-content-pages@npm:3.5.2" +"@docusaurus/plugin-content-pages@npm:3.6.0": + version: 3.6.0 + resolution: "@docusaurus/plugin-content-pages@npm:3.6.0" dependencies: - "@docusaurus/core": 3.5.2 - "@docusaurus/mdx-loader": 3.5.2 - "@docusaurus/types": 3.5.2 - "@docusaurus/utils": 3.5.2 - "@docusaurus/utils-validation": 3.5.2 + "@docusaurus/core": 3.6.0 + "@docusaurus/mdx-loader": 3.6.0 + "@docusaurus/types": 3.6.0 + "@docusaurus/utils": 3.6.0 + "@docusaurus/utils-validation": 3.6.0 fs-extra: ^11.1.1 tslib: ^2.6.0 webpack: ^5.88.1 peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - checksum: 8b3f1040e8ec006c9431508e73ef3f61cd5759bece3770189f7d52609f91bd156c9b18d0608f9cb14c456a1d1823be6633c573d5eee7cf9bd142b0f978c7a745 + checksum: 26d889fa3155b171ab878902b1da9fc675ee5ff816027ec43853ac4daeacb02fd55abaf503e5d6019cf7e25ba718a0efccb8dd91e970f4d880323b8151246a75 languageName: node linkType: hard -"@docusaurus/plugin-debug@npm:3.5.2": - version: 3.5.2 - resolution: "@docusaurus/plugin-debug@npm:3.5.2" +"@docusaurus/plugin-debug@npm:3.6.0": + version: 3.6.0 + resolution: "@docusaurus/plugin-debug@npm:3.6.0" dependencies: - "@docusaurus/core": 3.5.2 - "@docusaurus/types": 3.5.2 - "@docusaurus/utils": 3.5.2 + "@docusaurus/core": 3.6.0 + "@docusaurus/types": 3.6.0 + "@docusaurus/utils": 3.6.0 fs-extra: ^11.1.1 react-json-view-lite: ^1.2.0 tslib: ^2.6.0 peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - checksum: a839e6c3a595ea202fdd7fbce638ab8df26ba73a8c7ead8c04d1bbb509ebe34e9633e7fe9eb54a7a733e93a03d74a60df4d9f6597b9621ff464280d4dd71db34 + checksum: d0bb5a7fbf1594d540512a5e9b0f588dc1d4d5190b98f93a861437126ccf2a274e09d6aa4080906637a8401c85f8c2d018bd00fa2707f3d7d307e5769b2f5fba languageName: node linkType: hard -"@docusaurus/plugin-google-analytics@npm:3.5.2": - version: 3.5.2 - resolution: "@docusaurus/plugin-google-analytics@npm:3.5.2" +"@docusaurus/plugin-google-analytics@npm:3.6.0": + version: 3.6.0 + resolution: "@docusaurus/plugin-google-analytics@npm:3.6.0" dependencies: - "@docusaurus/core": 3.5.2 - "@docusaurus/types": 3.5.2 - "@docusaurus/utils-validation": 3.5.2 + "@docusaurus/core": 3.6.0 + "@docusaurus/types": 3.6.0 + "@docusaurus/utils-validation": 3.6.0 tslib: ^2.6.0 peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - checksum: 0b8c4d21333d40c2509d6ef807caaf69f085010c5deac514ab34f53b5486fd76766c90213dc98976a6c4d66fdfa14bf6b05594e51e8a53ec60c2a3fa08fd9a83 + checksum: aa9c96099723be7454d6209973ebe14265c6e35c99d8231568c5c5ee47fc6c6ab11c826522ce0356fd52012acb11eae00df520ddb41504d8b02a0031f28b98f0 languageName: node linkType: hard -"@docusaurus/plugin-google-gtag@npm:3.5.2": - version: 3.5.2 - resolution: "@docusaurus/plugin-google-gtag@npm:3.5.2" +"@docusaurus/plugin-google-gtag@npm:3.6.0": + version: 3.6.0 + resolution: "@docusaurus/plugin-google-gtag@npm:3.6.0" dependencies: - "@docusaurus/core": 3.5.2 - "@docusaurus/types": 3.5.2 - "@docusaurus/utils-validation": 3.5.2 + "@docusaurus/core": 3.6.0 + "@docusaurus/types": 3.6.0 + "@docusaurus/utils-validation": 3.6.0 "@types/gtag.js": ^0.0.12 tslib: ^2.6.0 peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - checksum: 5d53c2483c8c7e3a8e842bd091a774d4041f0e165d216b3c02f031a224a77258c9456e8b2acd0500b4a0eff474a83c1b82803628db9d4b132514409936c68ac4 + checksum: 300bdc62ab115caef46498cc9c376ef4c79e48c1c0cc1f31c0c22ba54823801e1143d6e7447103815333bf47eacb3bf34baa1d3e809645ec233f3e743e8f2b1f languageName: node linkType: hard -"@docusaurus/plugin-google-tag-manager@npm:3.5.2": - version: 3.5.2 - resolution: "@docusaurus/plugin-google-tag-manager@npm:3.5.2" +"@docusaurus/plugin-google-tag-manager@npm:3.6.0": + version: 3.6.0 + resolution: "@docusaurus/plugin-google-tag-manager@npm:3.6.0" dependencies: - "@docusaurus/core": 3.5.2 - "@docusaurus/types": 3.5.2 - "@docusaurus/utils-validation": 3.5.2 + "@docusaurus/core": 3.6.0 + "@docusaurus/types": 3.6.0 + "@docusaurus/utils-validation": 3.6.0 tslib: ^2.6.0 peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - checksum: 9a6fc2ca54ea677c6edfd78f4f392d7d9ae86afd085fcda96d5ac41efa441352c25a2519595d9d15fb9b838e2ae39837f0daf02e2406c5cd56199ae237bd7b7a + checksum: 37546382bf6edf17490b4d7a416e7c00cf3f09c591a402ba3d5519fe3c97bbfe54bc039964d0878677570fca82105b4e44ca8c80c29d6e43d94342568bdb865d languageName: node linkType: hard -"@docusaurus/plugin-sitemap@npm:3.5.2": - version: 3.5.2 - resolution: "@docusaurus/plugin-sitemap@npm:3.5.2" +"@docusaurus/plugin-sitemap@npm:3.6.0": + version: 3.6.0 + resolution: "@docusaurus/plugin-sitemap@npm:3.6.0" dependencies: - "@docusaurus/core": 3.5.2 - "@docusaurus/logger": 3.5.2 - "@docusaurus/types": 3.5.2 - "@docusaurus/utils": 3.5.2 - "@docusaurus/utils-common": 3.5.2 - "@docusaurus/utils-validation": 3.5.2 + "@docusaurus/core": 3.6.0 + "@docusaurus/logger": 3.6.0 + "@docusaurus/types": 3.6.0 + "@docusaurus/utils": 3.6.0 + "@docusaurus/utils-common": 3.6.0 + "@docusaurus/utils-validation": 3.6.0 fs-extra: ^11.1.1 sitemap: ^7.1.1 tslib: ^2.6.0 peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - checksum: 26b6bceb7ab87fe7f6f666742d1e81de32cdacc5aaa3d45d91002c7d64e3258f3d0aac87c6b0d442eaf34ede2af4b7521b50737f2e8e2718daff6fce10230213 + checksum: 7ece4a146f0b8fe663004f57bddd4568829e261d616ddafb3c83408121d881cc482d751cf88084ef43aed9103f8bb09602472f5b349b880f83c0101a4b123ce2 languageName: node linkType: hard -"@docusaurus/preset-classic@npm:^3.1.1": - version: 3.5.2 - resolution: "@docusaurus/preset-classic@npm:3.5.2" +"@docusaurus/preset-classic@npm:^3.6.0": + version: 3.6.0 + resolution: "@docusaurus/preset-classic@npm:3.6.0" dependencies: - "@docusaurus/core": 3.5.2 - "@docusaurus/plugin-content-blog": 3.5.2 - "@docusaurus/plugin-content-docs": 3.5.2 - "@docusaurus/plugin-content-pages": 3.5.2 - "@docusaurus/plugin-debug": 3.5.2 - "@docusaurus/plugin-google-analytics": 3.5.2 - "@docusaurus/plugin-google-gtag": 3.5.2 - "@docusaurus/plugin-google-tag-manager": 3.5.2 - "@docusaurus/plugin-sitemap": 3.5.2 - "@docusaurus/theme-classic": 3.5.2 - "@docusaurus/theme-common": 3.5.2 - "@docusaurus/theme-search-algolia": 3.5.2 - "@docusaurus/types": 3.5.2 + "@docusaurus/core": 3.6.0 + "@docusaurus/plugin-content-blog": 3.6.0 + "@docusaurus/plugin-content-docs": 3.6.0 + "@docusaurus/plugin-content-pages": 3.6.0 + "@docusaurus/plugin-debug": 3.6.0 + "@docusaurus/plugin-google-analytics": 3.6.0 + "@docusaurus/plugin-google-gtag": 3.6.0 + "@docusaurus/plugin-google-tag-manager": 3.6.0 + "@docusaurus/plugin-sitemap": 3.6.0 + "@docusaurus/theme-classic": 3.6.0 + "@docusaurus/theme-common": 3.6.0 + "@docusaurus/theme-search-algolia": 3.6.0 + "@docusaurus/types": 3.6.0 peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - checksum: ec578e62b3b13b1874b14235a448a913c2d2358ea9b9d9c60bb250be468ab62387c88ec44e1ee82ad5b3d7243306e31919888a80eae62e5e8eab0ae12194bf69 + checksum: f32c335c2cec0f3a906aa8cb3fa97e6c1c5a2998a1926cc0b17f3de8ab5f1ad67bd938cce4d1884a32b46fa4f0191568b84511685c546bb3752ceef5be42142a languageName: node linkType: hard -"@docusaurus/theme-classic@npm:3.5.2": - version: 3.5.2 - resolution: "@docusaurus/theme-classic@npm:3.5.2" +"@docusaurus/theme-classic@npm:3.6.0": + version: 3.6.0 + resolution: "@docusaurus/theme-classic@npm:3.6.0" dependencies: - "@docusaurus/core": 3.5.2 - "@docusaurus/mdx-loader": 3.5.2 - "@docusaurus/module-type-aliases": 3.5.2 - "@docusaurus/plugin-content-blog": 3.5.2 - "@docusaurus/plugin-content-docs": 3.5.2 - "@docusaurus/plugin-content-pages": 3.5.2 - "@docusaurus/theme-common": 3.5.2 - "@docusaurus/theme-translations": 3.5.2 - "@docusaurus/types": 3.5.2 - "@docusaurus/utils": 3.5.2 - "@docusaurus/utils-common": 3.5.2 - "@docusaurus/utils-validation": 3.5.2 + "@docusaurus/core": 3.6.0 + "@docusaurus/logger": 3.6.0 + "@docusaurus/mdx-loader": 3.6.0 + "@docusaurus/module-type-aliases": 3.6.0 + "@docusaurus/plugin-content-blog": 3.6.0 + "@docusaurus/plugin-content-docs": 3.6.0 + "@docusaurus/plugin-content-pages": 3.6.0 + "@docusaurus/theme-common": 3.6.0 + "@docusaurus/theme-translations": 3.6.0 + "@docusaurus/types": 3.6.0 + "@docusaurus/utils": 3.6.0 + "@docusaurus/utils-common": 3.6.0 + "@docusaurus/utils-validation": 3.6.0 "@mdx-js/react": ^3.0.0 clsx: ^2.0.0 copy-text-to-clipboard: ^3.2.0 - infima: 0.2.0-alpha.44 + infima: 0.2.0-alpha.45 lodash: ^4.17.21 nprogress: ^0.2.0 postcss: ^8.4.26 @@ -2111,18 +1964,18 @@ __metadata: peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - checksum: 6c415b01ad24bb43eb166e2b780a84356ff14a627627f6a541c2803832d56c4f9409a5636048693d2d24804f59c2cc7bda925d9ef999a8276fe125477d2b2e1e + checksum: d44c7a5c44608dff740e5a81f51c589c7be2784565d69e63a1592225af9317f7282fd853d198187b9971f19fe5006973e733e2697cfd3121350aba982fe20ed1 languageName: node linkType: hard -"@docusaurus/theme-common@npm:3.5.2": - version: 3.5.2 - resolution: "@docusaurus/theme-common@npm:3.5.2" +"@docusaurus/theme-common@npm:3.6.0": + version: 3.6.0 + resolution: "@docusaurus/theme-common@npm:3.6.0" dependencies: - "@docusaurus/mdx-loader": 3.5.2 - "@docusaurus/module-type-aliases": 3.5.2 - "@docusaurus/utils": 3.5.2 - "@docusaurus/utils-common": 3.5.2 + "@docusaurus/mdx-loader": 3.6.0 + "@docusaurus/module-type-aliases": 3.6.0 + "@docusaurus/utils": 3.6.0 + "@docusaurus/utils-common": 3.6.0 "@types/history": ^4.7.11 "@types/react": "*" "@types/react-router-config": "*" @@ -2135,22 +1988,22 @@ __metadata: "@docusaurus/plugin-content-docs": "*" react: ^18.0.0 react-dom: ^18.0.0 - checksum: c78ec7f6035abc920a2a0bc1ad78920178a5452538a3a70794eca8d4b976725f6ccc464ee3092afd31ca59b4e061ad4c21cdce7f5e10b06567075814b2fc2002 + checksum: f65410f3b959d0fed7a91883c99bab1637cd5ff7b05df2e957ee01feca0d52f21e623a58d17950fc78380bcbeb04140cd230876a1a240723c13ec205cae5e608 languageName: node linkType: hard -"@docusaurus/theme-search-algolia@npm:3.5.2": - version: 3.5.2 - resolution: "@docusaurus/theme-search-algolia@npm:3.5.2" +"@docusaurus/theme-search-algolia@npm:3.6.0": + version: 3.6.0 + resolution: "@docusaurus/theme-search-algolia@npm:3.6.0" dependencies: "@docsearch/react": ^3.5.2 - "@docusaurus/core": 3.5.2 - "@docusaurus/logger": 3.5.2 - "@docusaurus/plugin-content-docs": 3.5.2 - "@docusaurus/theme-common": 3.5.2 - "@docusaurus/theme-translations": 3.5.2 - "@docusaurus/utils": 3.5.2 - "@docusaurus/utils-validation": 3.5.2 + "@docusaurus/core": 3.6.0 + "@docusaurus/logger": 3.6.0 + "@docusaurus/plugin-content-docs": 3.6.0 + "@docusaurus/theme-common": 3.6.0 + "@docusaurus/theme-translations": 3.6.0 + "@docusaurus/utils": 3.6.0 + "@docusaurus/utils-validation": 3.6.0 algoliasearch: ^4.18.0 algoliasearch-helper: ^3.13.3 clsx: ^2.0.0 @@ -2162,30 +2015,30 @@ __metadata: peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - checksum: e945e3001996477597bfad074eaef074cf4c5365ed3076c3109130a2252b266e4e2fac46904a0626eedeff23b9ac11e7b985cc71f5485ede52d3ddf379b7959b + checksum: 599f2cb0944fc955d5116270cd6ec3347df34a4e4285d0c90ca19e11802c880c53b27dd8687e0f6c35972578a623f1d9f5e0334e28740d027d627647bd5ca5a7 languageName: node linkType: hard -"@docusaurus/theme-translations@npm:3.5.2": - version: 3.5.2 - resolution: "@docusaurus/theme-translations@npm:3.5.2" +"@docusaurus/theme-translations@npm:3.6.0": + version: 3.6.0 + resolution: "@docusaurus/theme-translations@npm:3.6.0" dependencies: fs-extra: ^11.1.1 tslib: ^2.6.0 - checksum: dc523c74a13fb8552c03e547c6de1c21881d899cc74bf088a2bed716e0ef1a4ceba2726c43656d87fff60413ca191f5ea946b182e4ae4129c14da832b5194d82 + checksum: 962c1366173bdf9f66e4a8a309fd70c7434caf1638cf1c6112ee05cf102d9ae719ec5edeec663bb90607749e98fa7e040362f2f512388cea44d255c519a3bcf0 languageName: node linkType: hard -"@docusaurus/tsconfig@npm:^3.1.1": - version: 3.5.2 - resolution: "@docusaurus/tsconfig@npm:3.5.2" - checksum: 808a17eaf422ae9a948c6558dd1e92d4700b067ead3a63a84049c6845bf94f84e311cd0e4d517047fe9ea057efe393bb22c2d5c92d727d06c9f895e971f2c3ea +"@docusaurus/tsconfig@npm:^3.6.0": + version: 3.6.0 + resolution: "@docusaurus/tsconfig@npm:3.6.0" + checksum: 98d32f16fb015b299518ba1f7fa76be8d2faf6788a076c35a89f4197f3b8ef57a8524f7bde14a140a4f03e4522c1edba00a79d3e4573536d4c9d101742baa586 languageName: node linkType: hard -"@docusaurus/types@npm:3.5.2, @docusaurus/types@npm:^3.1.1": - version: 3.5.2 - resolution: "@docusaurus/types@npm:3.5.2" +"@docusaurus/types@npm:3.6.0, @docusaurus/types@npm:^3.6.0": + version: 3.6.0 + resolution: "@docusaurus/types@npm:3.6.0" dependencies: "@mdx-js/mdx": ^3.0.0 "@types/history": ^4.7.11 @@ -2194,18 +2047,18 @@ __metadata: joi: ^17.9.2 react-helmet-async: ^1.3.0 utility-types: ^3.10.0 - webpack: ^5.88.1 + webpack: ^5.95.0 webpack-merge: ^5.9.0 peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - checksum: e39451b7b08673ad5e1551ee6e4286f90f2554cf9ba245abfa56670550f48afca9c57b01c10ffa21dacb734c0fcd067150eeb2b1c1ebb1692f1f538b1eed0029 + checksum: 0599cc5311f96487230759f6186bba57f2ef5e7bd0a37d2d57d5a02c53c579e341ca1aca4c8075111352191f7dc25c9411533c34a344a42727dc88626b30d28c languageName: node linkType: hard -"@docusaurus/utils-common@npm:3.5.2": - version: 3.5.2 - resolution: "@docusaurus/utils-common@npm:3.5.2" +"@docusaurus/utils-common@npm:3.6.0": + version: 3.6.0 + resolution: "@docusaurus/utils-common@npm:3.6.0" dependencies: tslib: ^2.6.0 peerDependencies: @@ -2213,32 +2066,32 @@ __metadata: peerDependenciesMeta: "@docusaurus/types": optional: true - checksum: 9d550c89663d4271456ae0832c82a1691207ccc95e21df3a05a4bd6bbd2624bb9e3ab7327d939c04b2023378987bcf99321b2c37be1af214852832f65d6db14a + checksum: 473056b9a6e3fd7592698ca26cf4b4a4f2e1cbdf672b66c6d1cbeffd390e41081b8b44ccf93bb12ec279461a7163f37870b4b0d51630215d7f1f89865b7595a3 languageName: node linkType: hard -"@docusaurus/utils-validation@npm:3.5.2": - version: 3.5.2 - resolution: "@docusaurus/utils-validation@npm:3.5.2" +"@docusaurus/utils-validation@npm:3.6.0": + version: 3.6.0 + resolution: "@docusaurus/utils-validation@npm:3.6.0" dependencies: - "@docusaurus/logger": 3.5.2 - "@docusaurus/utils": 3.5.2 - "@docusaurus/utils-common": 3.5.2 + "@docusaurus/logger": 3.6.0 + "@docusaurus/utils": 3.6.0 + "@docusaurus/utils-common": 3.6.0 fs-extra: ^11.2.0 joi: ^17.9.2 js-yaml: ^4.1.0 lodash: ^4.17.21 tslib: ^2.6.0 - checksum: 5966e6d0e8f26292c629899f13b545501b53b345b0e2291bb47aaa80d7c9c5cf155e15a4ecd073a4095ee7c83c6db3612e0a34f81a8187fd20410b1aeb92d731 + checksum: 8e340d8dc12809dbcf307a97c6e1307d1134600a2492b6028aa603b1b84e4b31e6444cee509372f44c98b3e838323baa5b2f3a34e41c0152ec72c7a2e543cd60 languageName: node linkType: hard -"@docusaurus/utils@npm:3.5.2": - version: 3.5.2 - resolution: "@docusaurus/utils@npm:3.5.2" +"@docusaurus/utils@npm:3.6.0": + version: 3.6.0 + resolution: "@docusaurus/utils@npm:3.6.0" dependencies: - "@docusaurus/logger": 3.5.2 - "@docusaurus/utils-common": 3.5.2 + "@docusaurus/logger": 3.6.0 + "@docusaurus/utils-common": 3.6.0 "@svgr/webpack": ^8.1.0 escape-string-regexp: ^4.0.0 file-loader: ^6.2.0 @@ -2262,7 +2115,7 @@ __metadata: peerDependenciesMeta: "@docusaurus/types": optional: true - checksum: 0e0f4fc65ed076d4e4b551ecb61447b7c2468060d1655afff314515844ae34dc0546f467f53bff535f3144afc109e974da27fadb7c678a5d19966bed9e7a27c4 + checksum: 054b8414eccdd08f1145521ea7c32895b4036a95613b8f88cdb608a4b9bebee9911be724537d620c084383644366529d6174515b20f4da89b66f2e9e90ac1679 languageName: node linkType: hard @@ -2414,6 +2267,42 @@ __metadata: languageName: node linkType: hard +"@module-federation/runtime-tools@npm:0.5.1": + version: 0.5.1 + resolution: "@module-federation/runtime-tools@npm:0.5.1" + dependencies: + "@module-federation/runtime": 0.5.1 + "@module-federation/webpack-bundler-runtime": 0.5.1 + checksum: 651051fb6e2e63915b408547b7d6bdea06338857e293e293b088e330dbb78e147df1b74c5e1f9d1e93ea6e61706f2d4511b8a0dc487703b5615db9695ee9e8ad + languageName: node + linkType: hard + +"@module-federation/runtime@npm:0.5.1": + version: 0.5.1 + resolution: "@module-federation/runtime@npm:0.5.1" + dependencies: + "@module-federation/sdk": 0.5.1 + checksum: 810e350dbd12a7f4bffb860375fd28a26a560669128f5339d729bc40810ae9b503b4034cbbb90e7105fd1df5544c3bc9cf11dfd2a47e2eaa2c50d00ad759b1e2 + languageName: node + linkType: hard + +"@module-federation/sdk@npm:0.5.1": + version: 0.5.1 + resolution: "@module-federation/sdk@npm:0.5.1" + checksum: 75f225926564779db3113aae9cd1b89d303b753026c84945a5225b496554db9e3a2fe2e1d594af4357708853337f161235f46ed5e6320592ac1e8b07756bf918 + languageName: node + linkType: hard + +"@module-federation/webpack-bundler-runtime@npm:0.5.1": + version: 0.5.1 + resolution: "@module-federation/webpack-bundler-runtime@npm:0.5.1" + dependencies: + "@module-federation/runtime": 0.5.1 + "@module-federation/sdk": 0.5.1 + checksum: a84a7b9482f133eba0fb8fd77ea87310a1028b7d5fc3da4a17b2bb5fc3fc9fc440cb32ed927f74e1bfe61925eec361512884d84b236b3cdab74276c0dcfff840 + languageName: node + linkType: hard + "@nodelib/fs.scandir@npm:2.1.5": version: 2.1.5 resolution: "@nodelib/fs.scandir@npm:2.1.5" @@ -2629,6 +2518,129 @@ __metadata: languageName: node linkType: hard +"@rspack/binding-darwin-arm64@npm:1.0.14": + version: 1.0.14 + resolution: "@rspack/binding-darwin-arm64@npm:1.0.14" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + +"@rspack/binding-darwin-x64@npm:1.0.14": + version: 1.0.14 + resolution: "@rspack/binding-darwin-x64@npm:1.0.14" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + +"@rspack/binding-linux-arm64-gnu@npm:1.0.14": + version: 1.0.14 + resolution: "@rspack/binding-linux-arm64-gnu@npm:1.0.14" + conditions: os=linux & cpu=arm64 & libc=glibc + languageName: node + linkType: hard + +"@rspack/binding-linux-arm64-musl@npm:1.0.14": + version: 1.0.14 + resolution: "@rspack/binding-linux-arm64-musl@npm:1.0.14" + conditions: os=linux & cpu=arm64 & libc=musl + languageName: node + linkType: hard + +"@rspack/binding-linux-x64-gnu@npm:1.0.14": + version: 1.0.14 + resolution: "@rspack/binding-linux-x64-gnu@npm:1.0.14" + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + +"@rspack/binding-linux-x64-musl@npm:1.0.14": + version: 1.0.14 + resolution: "@rspack/binding-linux-x64-musl@npm:1.0.14" + conditions: os=linux & cpu=x64 & libc=musl + languageName: node + linkType: hard + +"@rspack/binding-win32-arm64-msvc@npm:1.0.14": + version: 1.0.14 + resolution: "@rspack/binding-win32-arm64-msvc@npm:1.0.14" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + +"@rspack/binding-win32-ia32-msvc@npm:1.0.14": + version: 1.0.14 + resolution: "@rspack/binding-win32-ia32-msvc@npm:1.0.14" + conditions: os=win32 & cpu=ia32 + languageName: node + linkType: hard + +"@rspack/binding-win32-x64-msvc@npm:1.0.14": + version: 1.0.14 + resolution: "@rspack/binding-win32-x64-msvc@npm:1.0.14" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + +"@rspack/binding@npm:1.0.14": + version: 1.0.14 + resolution: "@rspack/binding@npm:1.0.14" + dependencies: + "@rspack/binding-darwin-arm64": 1.0.14 + "@rspack/binding-darwin-x64": 1.0.14 + "@rspack/binding-linux-arm64-gnu": 1.0.14 + "@rspack/binding-linux-arm64-musl": 1.0.14 + "@rspack/binding-linux-x64-gnu": 1.0.14 + "@rspack/binding-linux-x64-musl": 1.0.14 + "@rspack/binding-win32-arm64-msvc": 1.0.14 + "@rspack/binding-win32-ia32-msvc": 1.0.14 + "@rspack/binding-win32-x64-msvc": 1.0.14 + dependenciesMeta: + "@rspack/binding-darwin-arm64": + optional: true + "@rspack/binding-darwin-x64": + optional: true + "@rspack/binding-linux-arm64-gnu": + optional: true + "@rspack/binding-linux-arm64-musl": + optional: true + "@rspack/binding-linux-x64-gnu": + optional: true + "@rspack/binding-linux-x64-musl": + optional: true + "@rspack/binding-win32-arm64-msvc": + optional: true + "@rspack/binding-win32-ia32-msvc": + optional: true + "@rspack/binding-win32-x64-msvc": + optional: true + checksum: 0fae05a49eb978cb565ebe78d66a51565fd833ee15b2e1f7739e98ccad706faacdd662c6f10a12d730004f62a8ec3a5e87521746ddc127b0c91116ba751504aa + languageName: node + linkType: hard + +"@rspack/core@npm:^1.0.14": + version: 1.0.14 + resolution: "@rspack/core@npm:1.0.14" + dependencies: + "@module-federation/runtime-tools": 0.5.1 + "@rspack/binding": 1.0.14 + "@rspack/lite-tapable": 1.0.1 + caniuse-lite: ^1.0.30001616 + peerDependencies: + "@swc/helpers": ">=0.5.1" + peerDependenciesMeta: + "@swc/helpers": + optional: true + checksum: 0aeb557b36ba03b0c8a51f5e46d4671c245fb6e3b47c26ecb5c9e0d18afece9c88266c3ff3a809345fc5f6dbdeb63747a2495397a153537531c5224de340c38e + languageName: node + linkType: hard + +"@rspack/lite-tapable@npm:1.0.1": + version: 1.0.1 + resolution: "@rspack/lite-tapable@npm:1.0.1" + checksum: a490aa7868178e7277573293a2b81191513d451c72f4118173f080b5c65a19618e1d37083cffa049b563433a3f772ab2f4424c0a920b04b1347ddb12fe3bcbf8 + languageName: node + linkType: hard + "@sideway/address@npm:^4.1.3": version: 4.1.4 resolution: "@sideway/address@npm:4.1.4" @@ -2849,92 +2861,92 @@ __metadata: languageName: node linkType: hard -"@swc/core-darwin-arm64@npm:1.7.36": - version: 1.7.36 - resolution: "@swc/core-darwin-arm64@npm:1.7.36" +"@swc/core-darwin-arm64@npm:1.8.0": + version: 1.8.0 + resolution: "@swc/core-darwin-arm64@npm:1.8.0" conditions: os=darwin & cpu=arm64 languageName: node linkType: hard -"@swc/core-darwin-x64@npm:1.7.36": - version: 1.7.36 - resolution: "@swc/core-darwin-x64@npm:1.7.36" +"@swc/core-darwin-x64@npm:1.8.0": + version: 1.8.0 + resolution: "@swc/core-darwin-x64@npm:1.8.0" conditions: os=darwin & cpu=x64 languageName: node linkType: hard -"@swc/core-linux-arm-gnueabihf@npm:1.7.36": - version: 1.7.36 - resolution: "@swc/core-linux-arm-gnueabihf@npm:1.7.36" +"@swc/core-linux-arm-gnueabihf@npm:1.8.0": + version: 1.8.0 + resolution: "@swc/core-linux-arm-gnueabihf@npm:1.8.0" conditions: os=linux & cpu=arm languageName: node linkType: hard -"@swc/core-linux-arm64-gnu@npm:1.7.36": - version: 1.7.36 - resolution: "@swc/core-linux-arm64-gnu@npm:1.7.36" +"@swc/core-linux-arm64-gnu@npm:1.8.0": + version: 1.8.0 + resolution: "@swc/core-linux-arm64-gnu@npm:1.8.0" conditions: os=linux & cpu=arm64 & libc=glibc languageName: node linkType: hard -"@swc/core-linux-arm64-musl@npm:1.7.36": - version: 1.7.36 - resolution: "@swc/core-linux-arm64-musl@npm:1.7.36" +"@swc/core-linux-arm64-musl@npm:1.8.0": + version: 1.8.0 + resolution: "@swc/core-linux-arm64-musl@npm:1.8.0" conditions: os=linux & cpu=arm64 & libc=musl languageName: node linkType: hard -"@swc/core-linux-x64-gnu@npm:1.7.36": - version: 1.7.36 - resolution: "@swc/core-linux-x64-gnu@npm:1.7.36" +"@swc/core-linux-x64-gnu@npm:1.8.0": + version: 1.8.0 + resolution: "@swc/core-linux-x64-gnu@npm:1.8.0" conditions: os=linux & cpu=x64 & libc=glibc languageName: node linkType: hard -"@swc/core-linux-x64-musl@npm:1.7.36": - version: 1.7.36 - resolution: "@swc/core-linux-x64-musl@npm:1.7.36" +"@swc/core-linux-x64-musl@npm:1.8.0": + version: 1.8.0 + resolution: "@swc/core-linux-x64-musl@npm:1.8.0" conditions: os=linux & cpu=x64 & libc=musl languageName: node linkType: hard -"@swc/core-win32-arm64-msvc@npm:1.7.36": - version: 1.7.36 - resolution: "@swc/core-win32-arm64-msvc@npm:1.7.36" +"@swc/core-win32-arm64-msvc@npm:1.8.0": + version: 1.8.0 + resolution: "@swc/core-win32-arm64-msvc@npm:1.8.0" conditions: os=win32 & cpu=arm64 languageName: node linkType: hard -"@swc/core-win32-ia32-msvc@npm:1.7.36": - version: 1.7.36 - resolution: "@swc/core-win32-ia32-msvc@npm:1.7.36" +"@swc/core-win32-ia32-msvc@npm:1.8.0": + version: 1.8.0 + resolution: "@swc/core-win32-ia32-msvc@npm:1.8.0" conditions: os=win32 & cpu=ia32 languageName: node linkType: hard -"@swc/core-win32-x64-msvc@npm:1.7.36": - version: 1.7.36 - resolution: "@swc/core-win32-x64-msvc@npm:1.7.36" +"@swc/core-win32-x64-msvc@npm:1.8.0": + version: 1.8.0 + resolution: "@swc/core-win32-x64-msvc@npm:1.8.0" conditions: os=win32 & cpu=x64 languageName: node linkType: hard -"@swc/core@npm:^1.3.46": - version: 1.7.36 - resolution: "@swc/core@npm:1.7.36" +"@swc/core@npm:^1.3.46, @swc/core@npm:^1.7.39": + version: 1.8.0 + resolution: "@swc/core@npm:1.8.0" dependencies: - "@swc/core-darwin-arm64": 1.7.36 - "@swc/core-darwin-x64": 1.7.36 - "@swc/core-linux-arm-gnueabihf": 1.7.36 - "@swc/core-linux-arm64-gnu": 1.7.36 - "@swc/core-linux-arm64-musl": 1.7.36 - "@swc/core-linux-x64-gnu": 1.7.36 - "@swc/core-linux-x64-musl": 1.7.36 - "@swc/core-win32-arm64-msvc": 1.7.36 - "@swc/core-win32-ia32-msvc": 1.7.36 - "@swc/core-win32-x64-msvc": 1.7.36 + "@swc/core-darwin-arm64": 1.8.0 + "@swc/core-darwin-x64": 1.8.0 + "@swc/core-linux-arm-gnueabihf": 1.8.0 + "@swc/core-linux-arm64-gnu": 1.8.0 + "@swc/core-linux-arm64-musl": 1.8.0 + "@swc/core-linux-x64-gnu": 1.8.0 + "@swc/core-linux-x64-musl": 1.8.0 + "@swc/core-win32-arm64-msvc": 1.8.0 + "@swc/core-win32-ia32-msvc": 1.8.0 + "@swc/core-win32-x64-msvc": 1.8.0 "@swc/counter": ^0.1.3 - "@swc/types": ^0.1.13 + "@swc/types": ^0.1.14 peerDependencies: "@swc/helpers": "*" dependenciesMeta: @@ -2961,7 +2973,7 @@ __metadata: peerDependenciesMeta: "@swc/helpers": optional: true - checksum: 848531930b7d179b2bb9ba38e0d39dd127d66b16cc5c9ee9ec318fd50156ada18bc1368f2d02e0ba745b8f43eec0f695eaf89b6a9f8e52a239c5ab3e4b07ee27 + checksum: 8b62e6399943ef930cd32dd4e34de475baa62be7873ee0d4f89a1c4784e441df1373d9df6dda1c00203cda9907af347329e32874059ff00bed004de1cfc373a1 languageName: node linkType: hard @@ -2972,12 +2984,122 @@ __metadata: languageName: node linkType: hard -"@swc/types@npm:^0.1.13": - version: 0.1.13 - resolution: "@swc/types@npm:0.1.13" +"@swc/html-darwin-arm64@npm:1.8.0": + version: 1.8.0 + resolution: "@swc/html-darwin-arm64@npm:1.8.0" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + +"@swc/html-darwin-x64@npm:1.8.0": + version: 1.8.0 + resolution: "@swc/html-darwin-x64@npm:1.8.0" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + +"@swc/html-linux-arm-gnueabihf@npm:1.8.0": + version: 1.8.0 + resolution: "@swc/html-linux-arm-gnueabihf@npm:1.8.0" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + +"@swc/html-linux-arm64-gnu@npm:1.8.0": + version: 1.8.0 + resolution: "@swc/html-linux-arm64-gnu@npm:1.8.0" + conditions: os=linux & cpu=arm64 & libc=glibc + languageName: node + linkType: hard + +"@swc/html-linux-arm64-musl@npm:1.8.0": + version: 1.8.0 + resolution: "@swc/html-linux-arm64-musl@npm:1.8.0" + conditions: os=linux & cpu=arm64 & libc=musl + languageName: node + linkType: hard + +"@swc/html-linux-x64-gnu@npm:1.8.0": + version: 1.8.0 + resolution: "@swc/html-linux-x64-gnu@npm:1.8.0" + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + +"@swc/html-linux-x64-musl@npm:1.8.0": + version: 1.8.0 + resolution: "@swc/html-linux-x64-musl@npm:1.8.0" + conditions: os=linux & cpu=x64 & libc=musl + languageName: node + linkType: hard + +"@swc/html-win32-arm64-msvc@npm:1.8.0": + version: 1.8.0 + resolution: "@swc/html-win32-arm64-msvc@npm:1.8.0" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + +"@swc/html-win32-ia32-msvc@npm:1.8.0": + version: 1.8.0 + resolution: "@swc/html-win32-ia32-msvc@npm:1.8.0" + conditions: os=win32 & cpu=ia32 + languageName: node + linkType: hard + +"@swc/html-win32-x64-msvc@npm:1.8.0": + version: 1.8.0 + resolution: "@swc/html-win32-x64-msvc@npm:1.8.0" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + +"@swc/html@npm:^1.7.39": + version: 1.8.0 + resolution: "@swc/html@npm:1.8.0" dependencies: "@swc/counter": ^0.1.3 - checksum: 4d9ef0fba20e410bee38b20b60eeb284a1284c1cf6b5f84754b6f5e467e5e0621e2db67dc31e22c524a8d63f36d0a1d530126cd97752a85f140d91bf53553e01 + "@swc/html-darwin-arm64": 1.8.0 + "@swc/html-darwin-x64": 1.8.0 + "@swc/html-linux-arm-gnueabihf": 1.8.0 + "@swc/html-linux-arm64-gnu": 1.8.0 + "@swc/html-linux-arm64-musl": 1.8.0 + "@swc/html-linux-x64-gnu": 1.8.0 + "@swc/html-linux-x64-musl": 1.8.0 + "@swc/html-win32-arm64-msvc": 1.8.0 + "@swc/html-win32-ia32-msvc": 1.8.0 + "@swc/html-win32-x64-msvc": 1.8.0 + dependenciesMeta: + "@swc/html-darwin-arm64": + optional: true + "@swc/html-darwin-x64": + optional: true + "@swc/html-linux-arm-gnueabihf": + optional: true + "@swc/html-linux-arm64-gnu": + optional: true + "@swc/html-linux-arm64-musl": + optional: true + "@swc/html-linux-x64-gnu": + optional: true + "@swc/html-linux-x64-musl": + optional: true + "@swc/html-win32-arm64-msvc": + optional: true + "@swc/html-win32-ia32-msvc": + optional: true + "@swc/html-win32-x64-msvc": + optional: true + checksum: c7d74549141a5ccd2bacee4eadeb380808a53f34214f9b31257b92418aabfec8852013c310a893963d8ab4c4fae6195f1ca97ba8b40c8f451f25f6b3704a7cc0 + languageName: node + linkType: hard + +"@swc/types@npm:^0.1.14": + version: 0.1.14 + resolution: "@swc/types@npm:0.1.14" + dependencies: + "@swc/counter": ^0.1.3 + checksum: d7f198e1a07f4dbcff62a9823dfa81703e0029a908a02f9e9bfb9f18bc259c05b780f3385d36ec220e86a107dd6908f96bdc50319699bd34bf04b01d9adb5d5b languageName: node linkType: hard @@ -3060,6 +3182,26 @@ __metadata: languageName: node linkType: hard +"@types/eslint-scope@npm:^3.7.7": + version: 3.7.7 + resolution: "@types/eslint-scope@npm:3.7.7" + dependencies: + "@types/eslint": "*" + "@types/estree": "*" + checksum: e2889a124aaab0b89af1bab5959847c5bec09809209255de0e63b9f54c629a94781daa04adb66bffcdd742f5e25a17614fb933965093c0eea64aacda4309380e + languageName: node + linkType: hard + +"@types/eslint@npm:*": + version: 9.6.1 + resolution: "@types/eslint@npm:9.6.1" + dependencies: + "@types/estree": "*" + "@types/json-schema": "*" + checksum: c286e79707ab604b577cf8ce51d9bbb9780e3d6a68b38a83febe13fa05b8012c92de17c28532fac2b03d3c460123f5055d603a579685325246ca1c86828223e0 + languageName: node + linkType: hard + "@types/estree-jsx@npm:^1.0.0": version: 1.0.0 resolution: "@types/estree-jsx@npm:1.0.0" @@ -3069,7 +3211,7 @@ __metadata: languageName: node linkType: hard -"@types/estree@npm:*, @types/estree@npm:^1.0.0, @types/estree@npm:^1.0.5": +"@types/estree@npm:*, @types/estree@npm:^1.0.0, @types/estree@npm:^1.0.6": version: 1.0.6 resolution: "@types/estree@npm:1.0.6" checksum: 8825d6e729e16445d9a1dd2fb1db2edc5ed400799064cd4d028150701031af012ba30d6d03fe9df40f4d7a437d0de6d2b256020152b7b09bde9f2e420afdffd9 @@ -3170,10 +3312,10 @@ __metadata: languageName: node linkType: hard -"@types/json-schema@npm:^7.0.4, @types/json-schema@npm:^7.0.5, @types/json-schema@npm:^7.0.8, @types/json-schema@npm:^7.0.9": - version: 7.0.11 - resolution: "@types/json-schema@npm:7.0.11" - checksum: 527bddfe62db9012fccd7627794bd4c71beb77601861055d87e3ee464f2217c85fca7a4b56ae677478367bbd248dbde13553312b7d4dbc702a2f2bbf60c4018d +"@types/json-schema@npm:*, @types/json-schema@npm:^7.0.4, @types/json-schema@npm:^7.0.5, @types/json-schema@npm:^7.0.8, @types/json-schema@npm:^7.0.9": + version: 7.0.15 + resolution: "@types/json-schema@npm:7.0.15" + checksum: 97ed0cb44d4070aecea772b7b2e2ed971e10c81ec87dd4ecc160322ffa55ff330dace1793489540e3e318d90942064bb697cc0f8989391797792d919737b3b98 languageName: node linkType: hard @@ -3592,15 +3734,6 @@ __metadata: languageName: node linkType: hard -"acorn-import-attributes@npm:^1.9.5": - version: 1.9.5 - resolution: "acorn-import-attributes@npm:1.9.5" - peerDependencies: - acorn: ^8 - checksum: 1c0c49b6a244503964ae46ae850baccf306e84caf99bc2010ed6103c69a423987b07b520a6c619f075d215388bd4923eccac995886a54309eda049ab78a4be95 - languageName: node - linkType: hard - "acorn-jsx@npm:^5.0.0": version: 5.3.2 resolution: "acorn-jsx@npm:5.3.2" @@ -3617,12 +3750,12 @@ __metadata: languageName: node linkType: hard -"acorn@npm:^8.0.0, acorn@npm:^8.0.4, acorn@npm:^8.7.1, acorn@npm:^8.8.2": - version: 8.10.0 - resolution: "acorn@npm:8.10.0" +"acorn@npm:^8.0.0, acorn@npm:^8.0.4, acorn@npm:^8.14.0, acorn@npm:^8.8.2": + version: 8.14.0 + resolution: "acorn@npm:8.14.0" bin: acorn: bin/acorn - checksum: 538ba38af0cc9e5ef983aee196c4b8b4d87c0c94532334fa7e065b2c8a1f85863467bb774231aae91613fcda5e68740c15d97b1967ae3394d20faddddd8af61d + checksum: 8755074ba55fff94e84e81c72f1013c2d9c78e973c31231c8ae505a5f966859baf654bddd75046bffd73ce816b149298977fff5077a3033dedba0ae2aad152d4 languageName: node linkType: hard @@ -3763,6 +3896,15 @@ __metadata: languageName: node linkType: hard +"ansi-escapes@npm:^4.3.2": + version: 4.3.2 + resolution: "ansi-escapes@npm:4.3.2" + dependencies: + type-fest: ^0.21.3 + checksum: 93111c42189c0a6bed9cdb4d7f2829548e943827ee8479c74d6e0b22ee127b2a21d3f8b5ca57723b8ef78ce011fbfc2784350eb2bde3ccfccf2f575fa8489815 + languageName: node + linkType: hard + "ansi-html-community@npm:^0.0.8": version: 0.0.8 resolution: "ansi-html-community@npm:0.0.8" @@ -3786,16 +3928,7 @@ __metadata: languageName: node linkType: hard -"ansi-styles@npm:^3.2.1": - version: 3.2.1 - resolution: "ansi-styles@npm:3.2.1" - dependencies: - color-convert: ^1.9.0 - checksum: d85ade01c10e5dd77b6c89f34ed7531da5830d2cb5882c645f330079975b716438cd7ebb81d0d6e6b4f9c577f19ae41ab55f07f19786b02f9dfd9e0377395665 - languageName: node - linkType: hard - -"ansi-styles@npm:^4.1.0": +"ansi-styles@npm:^4.0.0, ansi-styles@npm:^4.1.0": version: 4.3.0 resolution: "ansi-styles@npm:4.3.0" dependencies: @@ -3916,16 +4049,16 @@ __metadata: languageName: node linkType: hard -"babel-loader@npm:^9.1.3": - version: 9.1.3 - resolution: "babel-loader@npm:9.1.3" +"babel-loader@npm:^9.2.1": + version: 9.2.1 + resolution: "babel-loader@npm:9.2.1" dependencies: find-cache-dir: ^4.0.0 schema-utils: ^4.0.0 peerDependencies: "@babel/core": ^7.12.0 webpack: ">=5" - checksum: b168dde5b8cf11206513371a79f86bb3faa7c714e6ec9fffd420876b61f3d7f5f4b976431095ef6a14bc4d324505126deb91045fd41e312ba49f4deaa166fe28 + checksum: e1858d7625ad7cc8cabe6bbb8657f957041ffb1308375f359e92aa1654f413bfbb86a281bbf7cd4f7fff374d571c637b117551deac0231d779a198d4e4e78331 languageName: node linkType: hard @@ -3938,7 +4071,7 @@ __metadata: languageName: node linkType: hard -"babel-plugin-polyfill-corejs2@npm:^0.4.10, babel-plugin-polyfill-corejs2@npm:^0.4.5": +"babel-plugin-polyfill-corejs2@npm:^0.4.10": version: 0.4.11 resolution: "babel-plugin-polyfill-corejs2@npm:0.4.11" dependencies: @@ -3963,29 +4096,6 @@ __metadata: languageName: node linkType: hard -"babel-plugin-polyfill-corejs3@npm:^0.8.3": - version: 0.8.4 - resolution: "babel-plugin-polyfill-corejs3@npm:0.8.4" - dependencies: - "@babel/helper-define-polyfill-provider": ^0.4.2 - core-js-compat: ^3.32.2 - peerDependencies: - "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0 - checksum: 7243241a5b978b1335d51bcbd1248d6c4df88f6b3726706e71e0392f111c59bbf01118c85bb0ed42dce65e90e8fc768d19eda0a81a321cbe54abd3df9a285dc8 - languageName: node - linkType: hard - -"babel-plugin-polyfill-regenerator@npm:^0.5.2": - version: 0.5.2 - resolution: "babel-plugin-polyfill-regenerator@npm:0.5.2" - dependencies: - "@babel/helper-define-polyfill-provider": ^0.4.2 - peerDependencies: - "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0 - checksum: d962200f604016a9a09bc9b4aaf60a3db7af876bb65bcefaeac04d44ac9d9ec4037cf24ce117760cc141d7046b6394c7eb0320ba9665cb4a2ee64df2be187c93 - languageName: node - linkType: hard - "babel-plugin-polyfill-regenerator@npm:^0.6.1": version: 0.6.2 resolution: "babel-plugin-polyfill-regenerator@npm:0.6.2" @@ -4001,12 +4111,13 @@ __metadata: version: 0.0.0-use.local resolution: "backstage-microsite@workspace:." dependencies: - "@docusaurus/core": ^3.1.1 - "@docusaurus/module-type-aliases": ^3.1.1 - "@docusaurus/plugin-client-redirects": ^3.1.1 - "@docusaurus/preset-classic": ^3.1.1 - "@docusaurus/tsconfig": ^3.1.1 - "@docusaurus/types": ^3.1.1 + "@docusaurus/core": ^3.6.0 + "@docusaurus/faster": ^3.6.0 + "@docusaurus/module-type-aliases": ^3.6.0 + "@docusaurus/plugin-client-redirects": ^3.6.0 + "@docusaurus/preset-classic": ^3.6.0 + "@docusaurus/tsconfig": ^3.6.0 + "@docusaurus/types": ^3.6.0 "@mdx-js/react": ^3.0.0 "@spotify/prettier-config": ^15.0.0 "@swc/core": ^1.3.46 @@ -4162,17 +4273,17 @@ __metadata: languageName: node linkType: hard -"browserslist@npm:^4.0.0, browserslist@npm:^4.18.1, browserslist@npm:^4.21.10, browserslist@npm:^4.23.0, browserslist@npm:^4.23.1, browserslist@npm:^4.23.3": - version: 4.24.0 - resolution: "browserslist@npm:4.24.0" +"browserslist@npm:^4.0.0, browserslist@npm:^4.18.1, browserslist@npm:^4.23.0, browserslist@npm:^4.23.3, browserslist@npm:^4.24.0, browserslist@npm:^4.24.2": + version: 4.24.2 + resolution: "browserslist@npm:4.24.2" dependencies: - caniuse-lite: ^1.0.30001663 - electron-to-chromium: ^1.5.28 + caniuse-lite: ^1.0.30001669 + electron-to-chromium: ^1.5.41 node-releases: ^2.0.18 - update-browserslist-db: ^1.1.0 + update-browserslist-db: ^1.1.1 bin: browserslist: cli.js - checksum: de200d3eb8d6ed819dad99719099a28fb6ebeb88016a5ac42fbdc11607e910c236a84ca1b0bbf232477d4b88ab64e8ab6aa67557cdd40a73ca9c2834f92ccce0 + checksum: cf64085f12132d38638f38937a255edb82c7551b164a98577b055dd79719187a816112f7b97b9739e400c4954cd66479c0d7a843cb816e346f4795dc24fd5d97 languageName: node linkType: hard @@ -4301,10 +4412,10 @@ __metadata: languageName: node linkType: hard -"caniuse-lite@npm:^1.0.0, caniuse-lite@npm:^1.0.30001646, caniuse-lite@npm:^1.0.30001663": - version: 1.0.30001668 - resolution: "caniuse-lite@npm:1.0.30001668" - checksum: ce6996901b5883454a8ddb3040f82342277b6a6275876dfefcdecb11f7e472e29877f34cae47c2b674f08f2e71971dd4a2acb9bc01adfe8421b7148a7e9e8297 +"caniuse-lite@npm:^1.0.0, caniuse-lite@npm:^1.0.30001616, caniuse-lite@npm:^1.0.30001646, caniuse-lite@npm:^1.0.30001669": + version: 1.0.30001677 + resolution: "caniuse-lite@npm:1.0.30001677" + checksum: 34099726620baf4f14fbbe88fec38517208cbe9a47009350b59c7cbbbbd45fcf355afe25d5fa277179660eb0f35f103e68806a07bb33d38bbddb7fde0a4302e4 languageName: node linkType: hard @@ -4315,17 +4426,6 @@ __metadata: languageName: node linkType: hard -"chalk@npm:^2.4.2": - version: 2.4.2 - resolution: "chalk@npm:2.4.2" - dependencies: - ansi-styles: ^3.2.1 - escape-string-regexp: ^1.0.5 - supports-color: ^5.3.0 - checksum: ec3661d38fe77f681200f878edbd9448821924e0f93a9cefc0e26a33b145f1027a2084bf19967160d11e1f03bfe4eaffcabf5493b89098b2782c3fe0b03d80c2 - languageName: node - linkType: hard - "chalk@npm:^4.0.0, chalk@npm:^4.1.0, chalk@npm:^4.1.2": version: 4.1.2 resolution: "chalk@npm:4.1.2" @@ -4517,15 +4617,6 @@ __metadata: languageName: node linkType: hard -"color-convert@npm:^1.9.0": - version: 1.9.3 - resolution: "color-convert@npm:1.9.3" - dependencies: - color-name: 1.1.3 - checksum: fd7a64a17cde98fb923b1dd05c5f2e6f7aefda1b60d67e8d449f9328b4e53b228a428fd38bfeaeb2db2ff6b6503a776a996150b80cdf224062af08a5c8a3a203 - languageName: node - linkType: hard - "color-convert@npm:^2.0.1": version: 2.0.1 resolution: "color-convert@npm:2.0.1" @@ -4535,13 +4626,6 @@ __metadata: languageName: node linkType: hard -"color-name@npm:1.1.3": - version: 1.1.3 - resolution: "color-name@npm:1.1.3" - checksum: 09c5d3e33d2105850153b14466501f2bfb30324a2f76568a408763a3b7433b0e50e5b4ab1947868e65cb101bb7cb75029553f2c333b6d4b8138a73fcc133d69d - languageName: node - linkType: hard - "color-name@npm:~1.1.4": version: 1.1.4 resolution: "color-name@npm:1.1.4" @@ -4689,10 +4773,10 @@ __metadata: languageName: node linkType: hard -"consola@npm:^2.15.3": - version: 2.15.3 - resolution: "consola@npm:2.15.3" - checksum: 8ef7a09b703ec67ac5c389a372a33b6dc97eda6c9876443a60d76a3076eea0259e7f67a4e54fd5a52f97df73690822d090cf8b7e102b5761348afef7c6d03e28 +"consola@npm:^3.2.3": + version: 3.2.3 + resolution: "consola@npm:3.2.3" + checksum: 32ec70e177dd2385c42e38078958cc7397be91db21af90c6f9faa0b16168b49b1c61d689338604bbb2d64370b9347a35f42a9197663a913d3a405bb0ce728499 languageName: node linkType: hard @@ -4770,12 +4854,12 @@ __metadata: languageName: node linkType: hard -"core-js-compat@npm:^3.32.2, core-js-compat@npm:^3.37.1, core-js-compat@npm:^3.38.0": - version: 3.38.1 - resolution: "core-js-compat@npm:3.38.1" +"core-js-compat@npm:^3.38.0, core-js-compat@npm:^3.38.1": + version: 3.39.0 + resolution: "core-js-compat@npm:3.39.0" dependencies: - browserslist: ^4.23.3 - checksum: a0a5673bcd59f588f0cd0b59cdacd4712b82909738a87406d334dd412eb3d273ae72b275bdd8e8fef63fca9ef12b42ed651be139c7c44c8a1acb423c8906992e + browserslist: ^4.24.2 + checksum: 2d7d087c3271d711d03a55203d4756f6288317a1ce35cdc8bafaf1833ef21fd67a92a50cff8dcf7df1325ac63720906ab3cf514c85b238c95f65fca1040f6ad6 languageName: node linkType: hard @@ -5062,6 +5146,13 @@ __metadata: languageName: node linkType: hard +"debounce@npm:^1.2.1": + version: 1.2.1 + resolution: "debounce@npm:1.2.1" + checksum: 682a89506d9e54fb109526f4da255c5546102fbb8e3ae75eef3b04effaf5d4853756aee97475cd4650641869794e44f410eeb20ace2b18ea592287ab2038519e + languageName: node + linkType: hard + "debug@npm:2.6.9, debug@npm:^2.6.0": version: 2.6.9 resolution: "debug@npm:2.6.9" @@ -5425,10 +5516,10 @@ __metadata: languageName: node linkType: hard -"electron-to-chromium@npm:^1.5.28": - version: 1.5.36 - resolution: "electron-to-chromium@npm:1.5.36" - checksum: 1f83daebdf88dd4817565660fa68a827bdca2866032d4902bfd79c6f16d97acbd731b63c09029dd5aa1af4aadbe567834cf3c89b52a37602d375352185d68cf4 +"electron-to-chromium@npm:^1.5.41": + version: 1.5.50 + resolution: "electron-to-chromium@npm:1.5.50" + checksum: 971f49d0c3f8484225a2ee86f86074c2ef1a3c46c2bad9b2151202c03f5de2f6f0fc41029d0bc634e6d01d067673cbf4916a7f9753f5ec1d5b177cbaca9b2e5a languageName: node linkType: hard @@ -5560,10 +5651,10 @@ __metadata: languageName: node linkType: hard -"escalade@npm:^3.1.1, escalade@npm:^3.1.2": - version: 3.1.2 - resolution: "escalade@npm:3.1.2" - checksum: 1ec0977aa2772075493002bdbd549d595ff6e9393b1cb0d7d6fcaf78c750da0c158f180938365486f75cb69fba20294351caddfce1b46552a7b6c3cde52eaa02 +"escalade@npm:^3.1.1, escalade@npm:^3.2.0": + version: 3.2.0 + resolution: "escalade@npm:3.2.0" + checksum: 47b029c83de01b0d17ad99ed766347b974b0d628e848de404018f3abee728e987da0d2d370ad4574aa3d5b5bfc368754fd085d69a30f8e75903486ec4b5b709e languageName: node linkType: hard @@ -5864,15 +5955,6 @@ __metadata: languageName: node linkType: hard -"fast-url-parser@npm:1.1.3": - version: 1.1.3 - resolution: "fast-url-parser@npm:1.1.3" - dependencies: - punycode: ^1.3.2 - checksum: 5043d0c4a8d775ff58504d56c096563c11b113e4cb8a2668c6f824a1cd4fb3812e2fdf76537eb24a7ce4ae7def6bd9747da630c617cf2a4b6ce0c42514e4f21c - languageName: node - linkType: hard - "fastq@npm:^1.6.0": version: 1.14.0 resolution: "fastq@npm:1.14.0" @@ -5909,6 +5991,15 @@ __metadata: languageName: node linkType: hard +"figures@npm:^3.2.0": + version: 3.2.0 + resolution: "figures@npm:3.2.0" + dependencies: + escape-string-regexp: ^1.0.5 + checksum: 85a6ad29e9aca80b49b817e7c89ecc4716ff14e3779d9835af554db91bac41c0f289c418923519392a1e582b4d10482ad282021330cd045bb7b80c84152f2a2b + languageName: node + linkType: hard + "file-loader@npm:^6.2.0": version: 6.2.0 resolution: "file-loader@npm:6.2.0" @@ -5991,6 +6082,15 @@ __metadata: languageName: node linkType: hard +"flat@npm:^5.0.2": + version: 5.0.2 + resolution: "flat@npm:5.0.2" + bin: + flat: cli.js + checksum: 12a1536ac746db74881316a181499a78ef953632ddd28050b7a3a43c62ef5462e3357c8c29d76072bb635f147f7a9a1f0c02efef6b4be28f8db62ceb3d5c7f5d + languageName: node + linkType: hard + "follow-redirects@npm:^1.0.0": version: 1.15.6 resolution: "follow-redirects@npm:1.15.6" @@ -6381,13 +6481,6 @@ __metadata: languageName: node linkType: hard -"has-flag@npm:^3.0.0": - version: 3.0.0 - resolution: "has-flag@npm:3.0.0" - checksum: 4a15638b454bf086c8148979aae044dd6e39d63904cd452d970374fa6a87623423da485dfb814e7be882e05c096a7ccf1ebd48e7e7501d0208d8384ff4dea73b - languageName: node - linkType: hard - "has-flag@npm:^4.0.0": version: 4.0.0 resolution: "has-flag@npm:4.0.0" @@ -6631,6 +6724,13 @@ __metadata: languageName: node linkType: hard +"html-escaper@npm:^2.0.2": + version: 2.0.2 + resolution: "html-escaper@npm:2.0.2" + checksum: d2df2da3ad40ca9ee3a39c5cc6475ef67c8f83c234475f24d8e9ce0dc80a2c82df8e1d6fa78ddd1e9022a586ea1bd247a615e80a5cd9273d90111ddda7d9e974 + languageName: node + linkType: hard + "html-minifier-terser@npm:^6.0.2": version: 6.1.0 resolution: "html-minifier-terser@npm:6.1.0" @@ -6679,9 +6779,9 @@ __metadata: languageName: node linkType: hard -"html-webpack-plugin@npm:^5.5.3": - version: 5.5.3 - resolution: "html-webpack-plugin@npm:5.5.3" +"html-webpack-plugin@npm:^5.6.0": + version: 5.6.3 + resolution: "html-webpack-plugin@npm:5.6.3" dependencies: "@types/html-minifier-terser": ^6.0.0 html-minifier-terser: ^6.0.2 @@ -6689,8 +6789,14 @@ __metadata: pretty-error: ^4.0.0 tapable: ^2.0.0 peerDependencies: + "@rspack/core": 0.x || 1.x webpack: ^5.20.0 - checksum: ccf685195739c372ad641bbd0c9100a847904f34eedc7aff3ece7856cd6c78fd3746d2d615af1bb71e5727993fe711b89e9b744f033ed3fde646540bf5d5e954 + peerDependenciesMeta: + "@rspack/core": + optional: true + webpack: + optional: true + checksum: 59e7d971b0cfd9ba34c7acaa3c161e43c62596474dd8cd35d7b690498ff5891f21296de0aa1d2e7810348caa657e938461267155dda47913b5eeca7124406270 languageName: node linkType: hard @@ -6937,10 +7043,10 @@ __metadata: languageName: node linkType: hard -"infima@npm:0.2.0-alpha.44": - version: 0.2.0-alpha.44 - resolution: "infima@npm:0.2.0-alpha.44" - checksum: e9871f4056c0c8b311fcd32e2864d23a8f6807af5ff32d3c4d8271ad9971b5a7ea5016787a6b215893bb3e9f5f14326816bc05151d576dd375b0d79279cdfa8b +"infima@npm:0.2.0-alpha.45": + version: 0.2.0-alpha.45 + resolution: "infima@npm:0.2.0-alpha.45" + checksum: 23e5a33b147cb3940194c23e249001e7988327bb27896b121883442bce42a532248387649eec74d008dadadcddc790fb6842f043f33c78fda35e29f0b720cf8c languageName: node linkType: hard @@ -7221,13 +7327,6 @@ __metadata: languageName: node linkType: hard -"is-plain-object@npm:^5.0.0": - version: 5.0.0 - resolution: "is-plain-object@npm:5.0.0" - checksum: e32d27061eef62c0847d303125440a38660517e586f2f3db7c9d179ae5b6674ab0f469d519b2e25c147a1a3bc87156d0d5f4d8821e0ce4a9ee7fe1fcf11ce45c - languageName: node - linkType: hard - "is-reference@npm:^3.0.0": version: 3.0.1 resolution: "is-reference@npm:3.0.1" @@ -7405,21 +7504,12 @@ __metadata: languageName: node linkType: hard -"jsesc@npm:^2.5.1": - version: 2.5.2 - resolution: "jsesc@npm:2.5.2" +"jsesc@npm:^3.0.2, jsesc@npm:~3.0.2": + version: 3.0.2 + resolution: "jsesc@npm:3.0.2" bin: jsesc: bin/jsesc - checksum: 4dc190771129e12023f729ce20e1e0bfceac84d73a85bc3119f7f938843fe25a4aeccb54b6494dce26fcf263d815f5f31acdefac7cc9329efb8422a4f4d9fa9d - languageName: node - linkType: hard - -"jsesc@npm:~0.5.0": - version: 0.5.0 - resolution: "jsesc@npm:0.5.0" - bin: - jsesc: bin/jsesc - checksum: b8b44cbfc92f198ad972fba706ee6a1dfa7485321ee8c0b25f5cedd538dcb20cde3197de16a7265430fce8277a12db066219369e3d51055038946039f6e20e17 + checksum: a36d3ca40574a974d9c2063bf68c2b6141c20da8f2a36bd3279fc802563f35f0527a6c828801295bdfb2803952cf2cf387786c2c90ed564f88d5782475abfe3c languageName: node linkType: hard @@ -7529,6 +7619,116 @@ __metadata: languageName: node linkType: hard +"lightningcss-darwin-arm64@npm:1.28.1": + version: 1.28.1 + resolution: "lightningcss-darwin-arm64@npm:1.28.1" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + +"lightningcss-darwin-x64@npm:1.28.1": + version: 1.28.1 + resolution: "lightningcss-darwin-x64@npm:1.28.1" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + +"lightningcss-freebsd-x64@npm:1.28.1": + version: 1.28.1 + resolution: "lightningcss-freebsd-x64@npm:1.28.1" + conditions: os=freebsd & cpu=x64 + languageName: node + linkType: hard + +"lightningcss-linux-arm-gnueabihf@npm:1.28.1": + version: 1.28.1 + resolution: "lightningcss-linux-arm-gnueabihf@npm:1.28.1" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + +"lightningcss-linux-arm64-gnu@npm:1.28.1": + version: 1.28.1 + resolution: "lightningcss-linux-arm64-gnu@npm:1.28.1" + conditions: os=linux & cpu=arm64 & libc=glibc + languageName: node + linkType: hard + +"lightningcss-linux-arm64-musl@npm:1.28.1": + version: 1.28.1 + resolution: "lightningcss-linux-arm64-musl@npm:1.28.1" + conditions: os=linux & cpu=arm64 & libc=musl + languageName: node + linkType: hard + +"lightningcss-linux-x64-gnu@npm:1.28.1": + version: 1.28.1 + resolution: "lightningcss-linux-x64-gnu@npm:1.28.1" + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + +"lightningcss-linux-x64-musl@npm:1.28.1": + version: 1.28.1 + resolution: "lightningcss-linux-x64-musl@npm:1.28.1" + conditions: os=linux & cpu=x64 & libc=musl + languageName: node + linkType: hard + +"lightningcss-win32-arm64-msvc@npm:1.28.1": + version: 1.28.1 + resolution: "lightningcss-win32-arm64-msvc@npm:1.28.1" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + +"lightningcss-win32-x64-msvc@npm:1.28.1": + version: 1.28.1 + resolution: "lightningcss-win32-x64-msvc@npm:1.28.1" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + +"lightningcss@npm:^1.27.0": + version: 1.28.1 + resolution: "lightningcss@npm:1.28.1" + dependencies: + detect-libc: ^1.0.3 + lightningcss-darwin-arm64: 1.28.1 + lightningcss-darwin-x64: 1.28.1 + lightningcss-freebsd-x64: 1.28.1 + lightningcss-linux-arm-gnueabihf: 1.28.1 + lightningcss-linux-arm64-gnu: 1.28.1 + lightningcss-linux-arm64-musl: 1.28.1 + lightningcss-linux-x64-gnu: 1.28.1 + lightningcss-linux-x64-musl: 1.28.1 + lightningcss-win32-arm64-msvc: 1.28.1 + lightningcss-win32-x64-msvc: 1.28.1 + dependenciesMeta: + lightningcss-darwin-arm64: + optional: true + lightningcss-darwin-x64: + optional: true + lightningcss-freebsd-x64: + optional: true + lightningcss-linux-arm-gnueabihf: + optional: true + lightningcss-linux-arm64-gnu: + optional: true + lightningcss-linux-arm64-musl: + optional: true + lightningcss-linux-x64-gnu: + optional: true + lightningcss-linux-x64-musl: + optional: true + lightningcss-win32-arm64-msvc: + optional: true + lightningcss-win32-x64-msvc: + optional: true + checksum: 6ac8302021b2a917c16991310ff8c588c9163cad1c0abe271a44c2b58c05de03fcbde64d49f53dbe449402def02e4a4e11754da23bcb2a99d86bfbc93424333c + languageName: node + linkType: hard + "lilconfig@npm:^3.1.1": version: 3.1.2 resolution: "lilconfig@npm:3.1.2" @@ -7603,27 +7803,6 @@ __metadata: languageName: node linkType: hard -"lodash.escape@npm:^4.0.1": - version: 4.0.1 - resolution: "lodash.escape@npm:4.0.1" - checksum: fcb54f457497256964d619d5cccbd80a961916fca60df3fe0fa3e7f052715c2944c0ed5aefb4f9e047d127d44aa2d55555f3350cb42c6549e9e293fb30b41e7f - languageName: node - linkType: hard - -"lodash.flatten@npm:^4.4.0": - version: 4.4.0 - resolution: "lodash.flatten@npm:4.4.0" - checksum: 0ac34a393d4b795d4b7421153d27c13ae67e08786c9cbb60ff5b732210d46f833598eee3fb3844bb10070e8488efe390ea53bb567377e0cb47e9e630bf0811cb - languageName: node - linkType: hard - -"lodash.invokemap@npm:^4.6.0": - version: 4.6.0 - resolution: "lodash.invokemap@npm:4.6.0" - checksum: 646ceebbefbcb6da301f8c2868254680fd0bcdc6ada470495d9ae49c9c32938829c1b38a38c95d0258409a9655f85db404b16e648381c7450b7ed3d9c52d8808 - languageName: node - linkType: hard - "lodash.memoize@npm:^4.1.2": version: 4.1.2 resolution: "lodash.memoize@npm:4.1.2" @@ -7631,13 +7810,6 @@ __metadata: languageName: node linkType: hard -"lodash.pullall@npm:^4.2.0": - version: 4.2.0 - resolution: "lodash.pullall@npm:4.2.0" - checksum: 7a5fbaedf186ec197ce1e0b9ba1d88a89773ebaf6a8291c7d273838cac59cb3b339cf36ef00e94172862ee84d2304c38face161846f08f5581d0553dcbdcd090 - languageName: node - linkType: hard - "lodash.uniq@npm:^4.5.0": version: 4.5.0 resolution: "lodash.uniq@npm:4.5.0" @@ -7645,13 +7817,6 @@ __metadata: languageName: node linkType: hard -"lodash.uniqby@npm:^4.7.0": - version: 4.7.0 - resolution: "lodash.uniqby@npm:4.7.0" - checksum: 659264545a95726d1493123345aad8cbf56e17810fa9a0b029852c6d42bc80517696af09d99b23bef1845d10d95e01b8b4a1da578f22aeba7a30d3e0022a4938 - languageName: node - linkType: hard - "lodash@npm:^4.17.20, lodash@npm:^4.17.21": version: 4.17.21 resolution: "lodash@npm:4.17.21" @@ -7756,6 +7921,15 @@ __metadata: languageName: node linkType: hard +"markdown-table@npm:^2.0.0": + version: 2.0.0 + resolution: "markdown-table@npm:2.0.0" + dependencies: + repeat-string: ^1.0.0 + checksum: 9bb634a9300016cbb41216c1eab44c74b6b7083ac07872e296f900a29449cf0e260ece03fa10c3e9784ab94c61664d1d147da0315f95e1336e2bdcc025615c90 + languageName: node + linkType: hard + "markdown-table@npm:^3.0.0": version: 3.0.3 resolution: "markdown-table@npm:3.0.3" @@ -8644,14 +8818,15 @@ __metadata: languageName: node linkType: hard -"mini-css-extract-plugin@npm:^2.7.6": - version: 2.7.6 - resolution: "mini-css-extract-plugin@npm:2.7.6" +"mini-css-extract-plugin@npm:^2.9.1": + version: 2.9.2 + resolution: "mini-css-extract-plugin@npm:2.9.2" dependencies: schema-utils: ^4.0.0 + tapable: ^2.2.1 peerDependencies: webpack: ^5.0.0 - checksum: be6f7cefc6275168eb0a6b8fe977083a18c743c9612c9f00e6c1a62c3393ca7960e93fba1a7ebb09b75f36a0204ad087d772c1ef574bc29c90c0e8175a3c0b83 + checksum: 67a1f75359371a7776108999d472ae0942ccd904401e364e3a2c710d4b6fec61c4f53288594fcac35891f009e6df8825a00dfd3bfe4bcec0f862081d1f7cad50 languageName: node linkType: hard @@ -8970,6 +9145,18 @@ __metadata: languageName: node linkType: hard +"null-loader@npm:^4.0.1": + version: 4.0.1 + resolution: "null-loader@npm:4.0.1" + dependencies: + loader-utils: ^2.0.0 + schema-utils: ^3.0.0 + peerDependencies: + webpack: ^4.0.0 || ^5.0.0 + checksum: eeb4c4dd2f8f41e46f5665e4500359109e95ec1028a178a60e0161984906572da7dd87644bcc3cb29f0125d77e2b2508fb4f3813cfb1c6604a15865beb4b987b + languageName: node + linkType: hard + "object-assign@npm:^4.1.1": version: 4.1.1 resolution: "object-assign@npm:4.1.1" @@ -9309,10 +9496,10 @@ __metadata: languageName: node linkType: hard -"path-to-regexp@npm:2.2.1": - version: 2.2.1 - resolution: "path-to-regexp@npm:2.2.1" - checksum: b921a74e7576e25b06ad1635abf7e8125a29220d2efc2b71d74b9591f24a27e6f09078fa9a1b27516a097ea0637b7cab79d19b83d7f36a8ef3ef5422770e89d9 +"path-to-regexp@npm:3.3.0": + version: 3.3.0 + resolution: "path-to-regexp@npm:3.3.0" + checksum: bb249d08804f7961dd44fb175466c900b893c56e909db8e2a66ec12b9d9a964af269eb7a50892c933f52b47315953dfdb4279639fbce20977c3625a9ef3055fe languageName: node linkType: hard @@ -9343,10 +9530,10 @@ __metadata: languageName: node linkType: hard -"picocolors@npm:^1.0.0, picocolors@npm:^1.0.1": - version: 1.0.1 - resolution: "picocolors@npm:1.0.1" - checksum: fa68166d1f56009fc02a34cdfd112b0dd3cf1ef57667ac57281f714065558c01828cdf4f18600ad6851cbe0093952ed0660b1e0156bddf2184b6aaf5817553a5 +"picocolors@npm:^1.0.0, picocolors@npm:^1.0.1, picocolors@npm:^1.1.0": + version: 1.1.1 + resolution: "picocolors@npm:1.1.1" + checksum: e1cf46bf84886c79055fdfa9dcb3e4711ad259949e3565154b004b260cd356c5d54b31a1437ce9782624bf766272fe6b0154f5f0c744fb7af5d454d2b60db045 languageName: node linkType: hard @@ -9933,13 +10120,6 @@ __metadata: languageName: node linkType: hard -"punycode@npm:^1.3.2": - version: 1.4.1 - resolution: "punycode@npm:1.4.1" - checksum: fa6e698cb53db45e4628559e557ddaf554103d2a96a1d62892c8f4032cd3bc8871796cae9eabc1bc700e2b6677611521ce5bb1d9a27700086039965d0cf34518 - languageName: node - linkType: hard - "punycode@npm:^2.1.0": version: 2.1.1 resolution: "punycode@npm:2.1.1" @@ -10274,12 +10454,12 @@ __metadata: languageName: node linkType: hard -"regenerate-unicode-properties@npm:^10.1.0": - version: 10.1.0 - resolution: "regenerate-unicode-properties@npm:10.1.0" +"regenerate-unicode-properties@npm:^10.2.0": + version: 10.2.0 + resolution: "regenerate-unicode-properties@npm:10.2.0" dependencies: regenerate: ^1.4.2 - checksum: b1a8929588433ab8b9dc1a34cf3665b3b472f79f2af6ceae00d905fc496b332b9af09c6718fb28c730918f19a00dc1d7310adbaa9b72a2ec7ad2f435da8ace17 + checksum: d5c5fc13f8b8d7e16e791637a4bfef741f8d70e267d51845ee7d5404a32fa14c75b181c4efba33e4bff8b0000a2f13e9773593713dfe5b66597df4259275ce63 languageName: node linkType: hard @@ -10306,17 +10486,17 @@ __metadata: languageName: node linkType: hard -"regexpu-core@npm:^5.3.1": - version: 5.3.2 - resolution: "regexpu-core@npm:5.3.2" +"regexpu-core@npm:^6.1.1": + version: 6.1.1 + resolution: "regexpu-core@npm:6.1.1" dependencies: - "@babel/regjsgen": ^0.8.0 regenerate: ^1.4.2 - regenerate-unicode-properties: ^10.1.0 - regjsparser: ^0.9.1 + regenerate-unicode-properties: ^10.2.0 + regjsgen: ^0.8.0 + regjsparser: ^0.11.0 unicode-match-property-ecmascript: ^2.0.0 unicode-match-property-value-ecmascript: ^2.1.0 - checksum: 95bb97088419f5396e07769b7de96f995f58137ad75fac5811fb5fe53737766dfff35d66a0ee66babb1eb55386ef981feaef392f9df6d671f3c124812ba24da2 + checksum: ed8e3784e81b816b237313688f28b4695d30d4e0f823dfdf130fd4313c629ac6ec67650563867a6ca9a2435f33e79f3a5001c651aee52791e346213a948de0ff languageName: node linkType: hard @@ -10338,14 +10518,21 @@ __metadata: languageName: node linkType: hard -"regjsparser@npm:^0.9.1": - version: 0.9.1 - resolution: "regjsparser@npm:0.9.1" +"regjsgen@npm:^0.8.0": + version: 0.8.0 + resolution: "regjsgen@npm:0.8.0" + checksum: a1d925ff14a4b2be774e45775ee6b33b256f89c42d480e6d85152d2133f18bd3d6af662161b226fa57466f7efec367eaf7ccd2a58c0ec2a1306667ba2ad07b0d + languageName: node + linkType: hard + +"regjsparser@npm:^0.11.0": + version: 0.11.2 + resolution: "regjsparser@npm:0.11.2" dependencies: - jsesc: ~0.5.0 + jsesc: ~3.0.2 bin: regjsparser: bin/parser - checksum: 5e1b76afe8f1d03c3beaf9e0d935dd467589c3625f6d65fb8ffa14f224d783a0fed4bf49c2c1b8211043ef92b6117313419edf055a098ed8342e340586741afc + checksum: 500ab99d6174aef18b43518f4b1f217192459621b0505ad6e8cbbec8135a83e64491077843b4ad06249a207ffecd6566f3db1895a7c5df98f786b4b0edcc9820 languageName: node linkType: hard @@ -10477,6 +10664,13 @@ __metadata: languageName: node linkType: hard +"repeat-string@npm:^1.0.0": + version: 1.6.1 + resolution: "repeat-string@npm:1.6.1" + checksum: 1b809fc6db97decdc68f5b12c4d1a671c8e3f65ec4a40c238bc5200e44e85bcc52a54f78268ab9c29fcf5fe4f1343e805420056d1f30fa9a9ee4c2d93e3cc6c0 + languageName: node + linkType: hard + "require-from-string@npm:^2.0.2": version: 2.0.2 resolution: "require-from-string@npm:2.0.2" @@ -10811,19 +11005,18 @@ __metadata: languageName: node linkType: hard -"serve-handler@npm:^6.1.5": - version: 6.1.5 - resolution: "serve-handler@npm:6.1.5" +"serve-handler@npm:^6.1.6": + version: 6.1.6 + resolution: "serve-handler@npm:6.1.6" dependencies: bytes: 3.0.0 content-disposition: 0.5.2 - fast-url-parser: 1.1.3 mime-types: 2.1.18 minimatch: 3.1.2 path-is-inside: 1.0.2 - path-to-regexp: 2.2.1 + path-to-regexp: 3.3.0 range-parser: 1.2.0 - checksum: 7a98ca9cbf8692583b6cde4deb3941cff900fa38bf16adbfccccd8430209bab781e21d9a1f61c9c03e226f9f67689893bbce25941368f3ddaf985fc3858b49dc + checksum: eb26201e699ac4694fb16f9aaf932330f6b1159e9d9496261baa23caf1e81322afcfd2b5f5f2b306b133298c03a8395a3c13b56fde5d70b331014b3a5ab7217f languageName: node linkType: hard @@ -11173,10 +11366,10 @@ __metadata: languageName: node linkType: hard -"std-env@npm:^3.0.1": - version: 3.3.1 - resolution: "std-env@npm:3.3.1" - checksum: c4f59ecd2cb52041ce1785776d28a1aa56d346b6c4efcb8473e7e801eed1ac7612332dcee242d0b35948f35f745cceb6e226b5e825b59e588b262dca6be2b8aa +"std-env@npm:^3.7.0": + version: 3.7.0 + resolution: "std-env@npm:3.7.0" + checksum: 4f489d13ff2ab838c9acd4ed6b786b51aa52ecacdfeaefe9275fcb220ff2ac80c6e95674723508fd29850a694569563a8caaaea738eb82ca16429b3a0b50e510 languageName: node linkType: hard @@ -11241,7 +11434,7 @@ __metadata: languageName: node linkType: hard -"strip-ansi@npm:^6.0.1": +"strip-ansi@npm:^6.0.0, strip-ansi@npm:^6.0.1": version: 6.0.1 resolution: "strip-ansi@npm:6.0.1" dependencies: @@ -11317,15 +11510,6 @@ __metadata: languageName: node linkType: hard -"supports-color@npm:^5.3.0": - version: 5.5.0 - resolution: "supports-color@npm:5.5.0" - dependencies: - has-flag: ^3.0.0 - checksum: 95f6f4ba5afdf92f495b5a912d4abee8dcba766ae719b975c56c084f5004845f6f5a5f7769f52d53f40e21952a6d87411bafe34af4a01e65f9926002e38e1dac - languageName: node - linkType: hard - "supports-color@npm:^7.1.0": version: 7.2.0 resolution: "supports-color@npm:7.2.0" @@ -11375,7 +11559,7 @@ __metadata: languageName: node linkType: hard -"swc-loader@npm:^0.2.3": +"swc-loader@npm:^0.2.3, swc-loader@npm:^0.2.6": version: 0.2.6 resolution: "swc-loader@npm:0.2.6" dependencies: @@ -11394,7 +11578,7 @@ __metadata: languageName: node linkType: hard -"tapable@npm:^2.0.0, tapable@npm:^2.1.1, tapable@npm:^2.2.0": +"tapable@npm:^2.0.0, tapable@npm:^2.1.1, tapable@npm:^2.2.0, tapable@npm:^2.2.1": version: 2.2.1 resolution: "tapable@npm:2.2.1" checksum: 3b7a1b4d86fa940aad46d9e73d1e8739335efd4c48322cb37d073eb6f80f5281889bf0320c6d8ffcfa1a0dd5bfdbd0f9d037e252ef972aca595330538aac4d51 @@ -11479,13 +11663,6 @@ __metadata: languageName: node linkType: hard -"to-fast-properties@npm:^2.0.0": - version: 2.0.0 - resolution: "to-fast-properties@npm:2.0.0" - checksum: be2de62fe58ead94e3e592680052683b1ec986c72d589e7b21e5697f8744cdbf48c266fa72f6c15932894c10187b5f54573a3bcf7da0bfd964d5caf23d436168 - languageName: node - linkType: hard - "to-regex-range@npm:^5.0.1": version: 5.0.1 resolution: "to-regex-range@npm:5.0.1" @@ -11530,6 +11707,13 @@ __metadata: languageName: node linkType: hard +"type-fest@npm:^0.21.3": + version: 0.21.3 + resolution: "type-fest@npm:0.21.3" + checksum: e6b32a3b3877f04339bae01c193b273c62ba7bfc9e325b8703c4ee1b32dc8fe4ef5dfa54bf78265e069f7667d058e360ae0f37be5af9f153b22382cd55a9afe0 + languageName: node + linkType: hard + "type-fest@npm:^1.0.1": version: 1.4.0 resolution: "type-fest@npm:1.4.0" @@ -11744,17 +11928,17 @@ __metadata: languageName: node linkType: hard -"update-browserslist-db@npm:^1.1.0": - version: 1.1.0 - resolution: "update-browserslist-db@npm:1.1.0" +"update-browserslist-db@npm:^1.1.1": + version: 1.1.1 + resolution: "update-browserslist-db@npm:1.1.1" dependencies: - escalade: ^3.1.2 - picocolors: ^1.0.1 + escalade: ^3.2.0 + picocolors: ^1.1.0 peerDependencies: browserslist: ">= 4.21.0" bin: update-browserslist-db: cli.js - checksum: 7b74694d96f0c360f01b702e72353dc5a49df4fe6663d3ee4e5c628f061576cddf56af35a3a886238c01dd3d8f231b7a86a8ceaa31e7a9220ae31c1c1238e562 + checksum: 2ea11bd2562122162c3e438d83a1f9125238c0844b6d16d366e3276d0c0acac6036822dc7df65fc5a89c699cdf9f174acf439c39bedf3f9a2f3983976e4b4c3e languageName: node linkType: hard @@ -11914,34 +12098,29 @@ __metadata: languageName: node linkType: hard -"webpack-bundle-analyzer@npm:^4.9.0": - version: 4.9.1 - resolution: "webpack-bundle-analyzer@npm:4.9.1" +"webpack-bundle-analyzer@npm:^4.10.2": + version: 4.10.2 + resolution: "webpack-bundle-analyzer@npm:4.10.2" dependencies: "@discoveryjs/json-ext": 0.5.7 acorn: ^8.0.4 acorn-walk: ^8.0.0 commander: ^7.2.0 + debounce: ^1.2.1 escape-string-regexp: ^4.0.0 gzip-size: ^6.0.0 - is-plain-object: ^5.0.0 - lodash.debounce: ^4.0.8 - lodash.escape: ^4.0.1 - lodash.flatten: ^4.4.0 - lodash.invokemap: ^4.6.0 - lodash.pullall: ^4.2.0 - lodash.uniqby: ^4.7.0 + html-escaper: ^2.0.2 opener: ^1.5.2 picocolors: ^1.0.0 sirv: ^2.0.3 ws: ^7.3.1 bin: webpack-bundle-analyzer: lib/bin/analyzer.js - checksum: 7e891c28d5a903242893e55ecc714fa01d7ad6bedade143235c07091b235915349812fa048968462781d59187507962f38b6c61ed7d25fb836ba0ac0ee919a39 + checksum: 4f0275e7d87bb6203a618ca5d2d4953943979d986fa2b91be1bf1ad0bcd22bec13398803273d11699f9fbcf106896311208a72d63fe5f8a47b687a226e598dc1 languageName: node linkType: hard -"webpack-dev-middleware@npm:^5.3.1": +"webpack-dev-middleware@npm:^5.3.4": version: 5.3.4 resolution: "webpack-dev-middleware@npm:5.3.4" dependencies: @@ -11956,9 +12135,9 @@ __metadata: languageName: node linkType: hard -"webpack-dev-server@npm:^4.15.1": - version: 4.15.1 - resolution: "webpack-dev-server@npm:4.15.1" +"webpack-dev-server@npm:^4.15.2": + version: 4.15.2 + resolution: "webpack-dev-server@npm:4.15.2" dependencies: "@types/bonjour": ^3.5.9 "@types/connect-history-api-fallback": ^1.3.5 @@ -11988,7 +12167,7 @@ __metadata: serve-index: ^1.9.1 sockjs: ^0.3.24 spdy: ^4.0.2 - webpack-dev-middleware: ^5.3.1 + webpack-dev-middleware: ^5.3.4 ws: ^8.13.0 peerDependencies: webpack: ^4.37.0 || ^5.0.0 @@ -11999,7 +12178,7 @@ __metadata: optional: true bin: webpack-dev-server: bin/webpack-dev-server.js - checksum: cd0063b068d2b938fd76c412d555374186ac2fa84bbae098265212ed50a5c15d6f03aa12a5a310c544a242943eb58c0bfde4c296d5c36765c182f53799e1bc71 + checksum: 123507129cb4d55fdc5fabdd177574f31133605748372bb11353307b7a583ef25c6fd27b6addf56bf070ba44c88d5da861771c2ec55f52405082ec9efd01f039 languageName: node linkType: hard @@ -12013,6 +12192,17 @@ __metadata: languageName: node linkType: hard +"webpack-merge@npm:^6.0.1": + version: 6.0.1 + resolution: "webpack-merge@npm:6.0.1" + dependencies: + clone-deep: ^4.0.1 + flat: ^5.0.2 + wildcard: ^2.0.1 + checksum: e8a604c686b944605a1c57cc7b75e886ab902dc5ffdd15259a092c5c2dd5f58868fe39f995ea4bad4f189e38843b061c4ae1eb22822d7169813f4adab571dc3d + languageName: node + linkType: hard + "webpack-sources@npm:^3.2.3": version: 3.2.3 resolution: "webpack-sources@npm:3.2.3" @@ -12020,17 +12210,17 @@ __metadata: languageName: node linkType: hard -"webpack@npm:^5.88.1": - version: 5.95.0 - resolution: "webpack@npm:5.95.0" +"webpack@npm:^5.88.1, webpack@npm:^5.95.0": + version: 5.96.1 + resolution: "webpack@npm:5.96.1" dependencies: - "@types/estree": ^1.0.5 + "@types/eslint-scope": ^3.7.7 + "@types/estree": ^1.0.6 "@webassemblyjs/ast": ^1.12.1 "@webassemblyjs/wasm-edit": ^1.12.1 "@webassemblyjs/wasm-parser": ^1.12.1 - acorn: ^8.7.1 - acorn-import-attributes: ^1.9.5 - browserslist: ^4.21.10 + acorn: ^8.14.0 + browserslist: ^4.24.0 chrome-trace-event: ^1.0.2 enhanced-resolve: ^5.17.1 es-module-lexer: ^1.2.1 @@ -12052,21 +12242,25 @@ __metadata: optional: true bin: webpack: bin/webpack.js - checksum: 0c3dfe288de4d62f8f3dc25478a618894883cab739121330763b7847e43304630ea2815ae2351a5f8ff6ab7c9642caf530d503d89bda261fe2cd220e524dd5d1 + checksum: ec3662f64895fae408440a997f87299e374c9d9f911f77b880bab46402f52221c7836bdf101fc2556338d07fc7cb86da50661f944eb1d1041a8361a5b9247876 languageName: node linkType: hard -"webpackbar@npm:^5.0.2": - version: 5.0.2 - resolution: "webpackbar@npm:5.0.2" +"webpackbar@npm:^6.0.1": + version: 6.0.1 + resolution: "webpackbar@npm:6.0.1" dependencies: - chalk: ^4.1.0 - consola: ^2.15.3 + ansi-escapes: ^4.3.2 + chalk: ^4.1.2 + consola: ^3.2.3 + figures: ^3.2.0 + markdown-table: ^2.0.0 pretty-time: ^1.1.0 - std-env: ^3.0.1 + std-env: ^3.7.0 + wrap-ansi: ^7.0.0 peerDependencies: webpack: 3 || 4 || 5 - checksum: 214a734b1d4d391eb8271ed1b11085f0efe6831e93f641229b292abfd6fea871422dce121612511c17ae8047522be6d65c1a2666cabb396c79549816a3612338 + checksum: e9ba314452486230668ab34aea7c3494866dbe29e327e9201551a839000ee7e878d8a47b8977acb76ec9443b4257dfcdb05bae9bbc27ffb21793d2bed7907687 languageName: node linkType: hard @@ -12128,10 +12322,21 @@ __metadata: languageName: node linkType: hard -"wildcard@npm:^2.0.0": - version: 2.0.0 - resolution: "wildcard@npm:2.0.0" - checksum: 1f4fe4c03dfc492777c60f795bbba597ac78794f1b650d68f398fbee9adb765367c516ebd4220889b6a81e9626e7228bbe0d66237abb311573c2ee1f4902a5ad +"wildcard@npm:^2.0.0, wildcard@npm:^2.0.1": + version: 2.0.1 + resolution: "wildcard@npm:2.0.1" + checksum: e0c60a12a219e4b12065d1199802d81c27b841ed6ad6d9d28240980c73ceec6f856771d575af367cbec2982d9ae7838759168b551776577f155044f5a5ba843c + languageName: node + linkType: hard + +"wrap-ansi@npm:^7.0.0": + version: 7.0.0 + resolution: "wrap-ansi@npm:7.0.0" + dependencies: + ansi-styles: ^4.0.0 + string-width: ^4.1.0 + strip-ansi: ^6.0.0 + checksum: a790b846fd4505de962ba728a21aaeda189b8ee1c7568ca5e817d85930e06ef8d1689d49dbf0e881e8ef84436af3a88bc49115c2e2788d841ff1b8b5b51a608b languageName: node linkType: hard From 63760865ac032dcb3b5d0e59cd2dd7a2fd7bf1e9 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 4 Nov 2024 16:18:27 +0000 Subject: [PATCH 072/161] fix(deps): update dependency mini-css-extract-plugin to v2.9.2 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 30f6c31f21..2b6a8f46ed 100644 --- a/yarn.lock +++ b/yarn.lock @@ -34700,14 +34700,14 @@ __metadata: linkType: hard "mini-css-extract-plugin@npm:^2.4.2": - version: 2.9.1 - resolution: "mini-css-extract-plugin@npm:2.9.1" + version: 2.9.2 + resolution: "mini-css-extract-plugin@npm:2.9.2" dependencies: schema-utils: ^4.0.0 tapable: ^2.2.1 peerDependencies: webpack: ^5.0.0 - checksum: 036b0fbb207cf9a56e2f5f5dce5e35100cbd255e5b5a920a5357ec99215af16a77136020729b2d004a041d04ebb0a544b2f442535cbb982704dcd50297014c9e + checksum: 67a1f75359371a7776108999d472ae0942ccd904401e364e3a2c710d4b6fec61c4f53288594fcac35891f009e6df8825a00dfd3bfe4bcec0f862081d1f7cad50 languageName: node linkType: hard From cb9829b7421d416dc33c040991e2dd985cfb1838 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 4 Nov 2024 16:19:07 +0000 Subject: [PATCH 073/161] fix(deps): update dependency nodemailer to v6.9.16 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 30f6c31f21..c6a25e48db 100644 --- a/yarn.lock +++ b/yarn.lock @@ -35800,9 +35800,9 @@ __metadata: linkType: hard "nodemailer@npm:^6.9.13": - version: 6.9.15 - resolution: "nodemailer@npm:6.9.15" - checksum: 2d975f5c60f84acde52d79d43287c70197fe94bde4a731682f306e9636a148c49de29a5dd92ce7dc5aac068a148cd91da3401ede80f8f52b9f2bc00439f36ced + version: 6.9.16 + resolution: "nodemailer@npm:6.9.16" + checksum: a031d243914ab5a3bb48c75e1fab02d25fb45c2b5b9bc15569cce45ec851235bc970087de99477ca6e7ee88fab2cb6a590a714af310f58532dbcc31396f68b1c languageName: node linkType: hard From 9368cdec1251d11b1f45379c5db682755be91bca Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 4 Nov 2024 17:20:35 +0000 Subject: [PATCH 074/161] fix(deps): update dependency pg to v8.13.1 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 7cc664edc7..4ea884e19f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -37370,8 +37370,8 @@ __metadata: linkType: hard "pg@npm:^8.11.3, pg@npm:^8.9.0": - version: 8.13.0 - resolution: "pg@npm:8.13.0" + version: 8.13.1 + resolution: "pg@npm:8.13.1" dependencies: pg-cloudflare: ^1.1.1 pg-connection-string: ^2.7.0 @@ -37387,7 +37387,7 @@ __metadata: peerDependenciesMeta: pg-native: optional: true - checksum: 81560755ff4ee62b71bf1204dd696f66451574d1db56cbd5aa514ce91c6474030ee8078461b3cb85cce8d2f185be5846e0a7a707a818f5e2e3fb198a7ea795ea + checksum: 22cb97fcbee3348d5ee0b195071cc572f9c88eb40cbb61fe6726af68d55d5962121b2d630509bb907703e1c8bdc33de775462029c5399e2a841fa9e6c9da0242 languageName: node linkType: hard From ef19538a2455830f1bfd2e7b5277a1bc097512d2 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 4 Nov 2024 17:21:07 +0000 Subject: [PATCH 075/161] fix(deps): update dependency react-hook-form to v7.53.1 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 7cc664edc7..ba4309ff0d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -39094,11 +39094,11 @@ __metadata: linkType: hard "react-hook-form@npm:^7.12.2": - version: 7.53.0 - resolution: "react-hook-form@npm:7.53.0" + version: 7.53.1 + resolution: "react-hook-form@npm:7.53.1" peerDependencies: react: ^16.8.0 || ^17 || ^18 || ^19 - checksum: 84d67fb79bad03d0aa809b5e411d97fb081fc13cd2b6d063a988f81f6fbef8545463e05360afa9d8d58fff19f08fa919930dcdc98a9e68bf74048c9f63e10ad5 + checksum: 6c0cb09335fda48dd533b5d144c9a7a5692de1d8af0ac4f1fffedefc9ccfb995e44f9213dd2c13a72b7b7cb46c55ab05dfed884c5e64e174b137ecc658da04b5 languageName: node linkType: hard From da24a72111bd2e5af7dfe3f4af38a8c7f33a9849 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 4 Nov 2024 18:16:24 +0000 Subject: [PATCH 076/161] fix(deps): update dependency rollup to v4.24.4 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 154 ++++++++++++++++++++++++++++++------------------------ 1 file changed, 87 insertions(+), 67 deletions(-) diff --git a/yarn.lock b/yarn.lock index ba4309ff0d..464708c547 100644 --- a/yarn.lock +++ b/yarn.lock @@ -15189,114 +15189,128 @@ __metadata: languageName: node linkType: hard -"@rollup/rollup-android-arm-eabi@npm:4.24.0": - version: 4.24.0 - resolution: "@rollup/rollup-android-arm-eabi@npm:4.24.0" +"@rollup/rollup-android-arm-eabi@npm:4.24.4": + version: 4.24.4 + resolution: "@rollup/rollup-android-arm-eabi@npm:4.24.4" conditions: os=android & cpu=arm languageName: node linkType: hard -"@rollup/rollup-android-arm64@npm:4.24.0": - version: 4.24.0 - resolution: "@rollup/rollup-android-arm64@npm:4.24.0" +"@rollup/rollup-android-arm64@npm:4.24.4": + version: 4.24.4 + resolution: "@rollup/rollup-android-arm64@npm:4.24.4" conditions: os=android & cpu=arm64 languageName: node linkType: hard -"@rollup/rollup-darwin-arm64@npm:4.24.0": - version: 4.24.0 - resolution: "@rollup/rollup-darwin-arm64@npm:4.24.0" +"@rollup/rollup-darwin-arm64@npm:4.24.4": + version: 4.24.4 + resolution: "@rollup/rollup-darwin-arm64@npm:4.24.4" conditions: os=darwin & cpu=arm64 languageName: node linkType: hard -"@rollup/rollup-darwin-x64@npm:4.24.0": - version: 4.24.0 - resolution: "@rollup/rollup-darwin-x64@npm:4.24.0" +"@rollup/rollup-darwin-x64@npm:4.24.4": + version: 4.24.4 + resolution: "@rollup/rollup-darwin-x64@npm:4.24.4" conditions: os=darwin & cpu=x64 languageName: node linkType: hard -"@rollup/rollup-linux-arm-gnueabihf@npm:4.24.0": - version: 4.24.0 - resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.24.0" +"@rollup/rollup-freebsd-arm64@npm:4.24.4": + version: 4.24.4 + resolution: "@rollup/rollup-freebsd-arm64@npm:4.24.4" + conditions: os=freebsd & cpu=arm64 + languageName: node + linkType: hard + +"@rollup/rollup-freebsd-x64@npm:4.24.4": + version: 4.24.4 + resolution: "@rollup/rollup-freebsd-x64@npm:4.24.4" + conditions: os=freebsd & cpu=x64 + languageName: node + linkType: hard + +"@rollup/rollup-linux-arm-gnueabihf@npm:4.24.4": + version: 4.24.4 + resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.24.4" conditions: os=linux & cpu=arm & libc=glibc languageName: node linkType: hard -"@rollup/rollup-linux-arm-musleabihf@npm:4.24.0": - version: 4.24.0 - resolution: "@rollup/rollup-linux-arm-musleabihf@npm:4.24.0" +"@rollup/rollup-linux-arm-musleabihf@npm:4.24.4": + version: 4.24.4 + resolution: "@rollup/rollup-linux-arm-musleabihf@npm:4.24.4" conditions: os=linux & cpu=arm & libc=musl languageName: node linkType: hard -"@rollup/rollup-linux-arm64-gnu@npm:4.24.0": - version: 4.24.0 - resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.24.0" +"@rollup/rollup-linux-arm64-gnu@npm:4.24.4": + version: 4.24.4 + resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.24.4" conditions: os=linux & cpu=arm64 & libc=glibc languageName: node linkType: hard -"@rollup/rollup-linux-arm64-musl@npm:4.24.0": - version: 4.24.0 - resolution: "@rollup/rollup-linux-arm64-musl@npm:4.24.0" +"@rollup/rollup-linux-arm64-musl@npm:4.24.4": + version: 4.24.4 + resolution: "@rollup/rollup-linux-arm64-musl@npm:4.24.4" conditions: os=linux & cpu=arm64 & libc=musl languageName: node linkType: hard -"@rollup/rollup-linux-powerpc64le-gnu@npm:4.24.0": - version: 4.24.0 - resolution: "@rollup/rollup-linux-powerpc64le-gnu@npm:4.24.0" +"@rollup/rollup-linux-powerpc64le-gnu@npm:4.24.4": + version: 4.24.4 + resolution: "@rollup/rollup-linux-powerpc64le-gnu@npm:4.24.4" conditions: os=linux & cpu=ppc64 & libc=glibc languageName: node linkType: hard -"@rollup/rollup-linux-riscv64-gnu@npm:4.24.0": - version: 4.24.0 - resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.24.0" +"@rollup/rollup-linux-riscv64-gnu@npm:4.24.4": + version: 4.24.4 + resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.24.4" conditions: os=linux & cpu=riscv64 & libc=glibc languageName: node linkType: hard -"@rollup/rollup-linux-s390x-gnu@npm:4.24.0": - version: 4.24.0 - resolution: "@rollup/rollup-linux-s390x-gnu@npm:4.24.0" +"@rollup/rollup-linux-s390x-gnu@npm:4.24.4": + version: 4.24.4 + resolution: "@rollup/rollup-linux-s390x-gnu@npm:4.24.4" conditions: os=linux & cpu=s390x & libc=glibc languageName: node linkType: hard -"@rollup/rollup-linux-x64-gnu@npm:4.24.0": - version: 4.24.0 - resolution: "@rollup/rollup-linux-x64-gnu@npm:4.24.0" +"@rollup/rollup-linux-x64-gnu@npm:4.24.4": + version: 4.24.4 + resolution: "@rollup/rollup-linux-x64-gnu@npm:4.24.4" conditions: os=linux & cpu=x64 & libc=glibc languageName: node linkType: hard -"@rollup/rollup-linux-x64-musl@npm:4.24.0": - version: 4.24.0 - resolution: "@rollup/rollup-linux-x64-musl@npm:4.24.0" +"@rollup/rollup-linux-x64-musl@npm:4.24.4": + version: 4.24.4 + resolution: "@rollup/rollup-linux-x64-musl@npm:4.24.4" conditions: os=linux & cpu=x64 & libc=musl languageName: node linkType: hard -"@rollup/rollup-win32-arm64-msvc@npm:4.24.0": - version: 4.24.0 - resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.24.0" +"@rollup/rollup-win32-arm64-msvc@npm:4.24.4": + version: 4.24.4 + resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.24.4" conditions: os=win32 & cpu=arm64 languageName: node linkType: hard -"@rollup/rollup-win32-ia32-msvc@npm:4.24.0": - version: 4.24.0 - resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.24.0" +"@rollup/rollup-win32-ia32-msvc@npm:4.24.4": + version: 4.24.4 + resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.24.4" conditions: os=win32 & cpu=ia32 languageName: node linkType: hard -"@rollup/rollup-win32-x64-msvc@npm:4.24.0": - version: 4.24.0 - resolution: "@rollup/rollup-win32-x64-msvc@npm:4.24.0" +"@rollup/rollup-win32-x64-msvc@npm:4.24.4": + version: 4.24.4 + resolution: "@rollup/rollup-win32-x64-msvc@npm:4.24.4" conditions: os=win32 & cpu=x64 languageName: node linkType: hard @@ -40515,25 +40529,27 @@ __metadata: linkType: hard "rollup@npm:^4.0.0, rollup@npm:^4.20.0": - version: 4.24.0 - resolution: "rollup@npm:4.24.0" + version: 4.24.4 + resolution: "rollup@npm:4.24.4" dependencies: - "@rollup/rollup-android-arm-eabi": 4.24.0 - "@rollup/rollup-android-arm64": 4.24.0 - "@rollup/rollup-darwin-arm64": 4.24.0 - "@rollup/rollup-darwin-x64": 4.24.0 - "@rollup/rollup-linux-arm-gnueabihf": 4.24.0 - "@rollup/rollup-linux-arm-musleabihf": 4.24.0 - "@rollup/rollup-linux-arm64-gnu": 4.24.0 - "@rollup/rollup-linux-arm64-musl": 4.24.0 - "@rollup/rollup-linux-powerpc64le-gnu": 4.24.0 - "@rollup/rollup-linux-riscv64-gnu": 4.24.0 - "@rollup/rollup-linux-s390x-gnu": 4.24.0 - "@rollup/rollup-linux-x64-gnu": 4.24.0 - "@rollup/rollup-linux-x64-musl": 4.24.0 - "@rollup/rollup-win32-arm64-msvc": 4.24.0 - "@rollup/rollup-win32-ia32-msvc": 4.24.0 - "@rollup/rollup-win32-x64-msvc": 4.24.0 + "@rollup/rollup-android-arm-eabi": 4.24.4 + "@rollup/rollup-android-arm64": 4.24.4 + "@rollup/rollup-darwin-arm64": 4.24.4 + "@rollup/rollup-darwin-x64": 4.24.4 + "@rollup/rollup-freebsd-arm64": 4.24.4 + "@rollup/rollup-freebsd-x64": 4.24.4 + "@rollup/rollup-linux-arm-gnueabihf": 4.24.4 + "@rollup/rollup-linux-arm-musleabihf": 4.24.4 + "@rollup/rollup-linux-arm64-gnu": 4.24.4 + "@rollup/rollup-linux-arm64-musl": 4.24.4 + "@rollup/rollup-linux-powerpc64le-gnu": 4.24.4 + "@rollup/rollup-linux-riscv64-gnu": 4.24.4 + "@rollup/rollup-linux-s390x-gnu": 4.24.4 + "@rollup/rollup-linux-x64-gnu": 4.24.4 + "@rollup/rollup-linux-x64-musl": 4.24.4 + "@rollup/rollup-win32-arm64-msvc": 4.24.4 + "@rollup/rollup-win32-ia32-msvc": 4.24.4 + "@rollup/rollup-win32-x64-msvc": 4.24.4 "@types/estree": 1.0.6 fsevents: ~2.3.2 dependenciesMeta: @@ -40545,6 +40561,10 @@ __metadata: optional: true "@rollup/rollup-darwin-x64": optional: true + "@rollup/rollup-freebsd-arm64": + optional: true + "@rollup/rollup-freebsd-x64": + optional: true "@rollup/rollup-linux-arm-gnueabihf": optional: true "@rollup/rollup-linux-arm-musleabihf": @@ -40573,7 +40593,7 @@ __metadata: optional: true bin: rollup: dist/bin/rollup - checksum: b7e915b0cc43749c2c71255ff58858496460b1a75148db2abecc8e9496af83f488517768593826715f610e20e480a5ae7f1132a1408eb1d364830d6b239325cf + checksum: b1bdf61837180696ba893bbd13f80db44c93ed642e931677d29ebeeae7a4c276dcebf1ad96013eb5c976fcae7473b70c01e5efa1ac6cfbbc24b0bca7911c09c9 languageName: node linkType: hard From 54faa03be557f3439dcf2f5c1413cd1e8cfc5cfd Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 4 Nov 2024 18:17:18 +0000 Subject: [PATCH 077/161] fix(deps): update dependency sass to v1.80.6 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- microsite/yarn.lock | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/microsite/yarn.lock b/microsite/yarn.lock index ece055ff60..db17f2aafc 100644 --- a/microsite/yarn.lock +++ b/microsite/yarn.lock @@ -10663,16 +10663,19 @@ __metadata: linkType: hard "sass@npm:^1.57.1": - version: 1.80.2 - resolution: "sass@npm:1.80.2" + version: 1.80.6 + resolution: "sass@npm:1.80.6" dependencies: "@parcel/watcher": ^2.4.1 chokidar: ^4.0.0 immutable: ^4.0.0 source-map-js: ">=0.6.2 <2.0.0" + dependenciesMeta: + "@parcel/watcher": + optional: true bin: sass: sass.js - checksum: a2dfb2ce4ff961470ff015c1a0b01b961665f33883cd83b9b27c18031d74c8ecbc8ae602a0a517439effbc8a284d95c5be5b20c14f435946a09d7a30e32292c4 + checksum: 1a81e0fe093ff9109228b5dc1ea2ad64d3fb0e266d968e664a52aca059dd448fbe9a90d9a5a7518e5f31fd1087149ea349bf6fe1271ab15075b7a145c1bea0c9 languageName: node linkType: hard From 17d518c9d277d3b690017a40fbfc78c61ecf8565 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 4 Nov 2024 19:16:07 +0000 Subject: [PATCH 078/161] fix(deps): update dependency zod-to-json-schema to v3.23.5 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index ba4309ff0d..5f25de2e2f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -45921,11 +45921,11 @@ __metadata: linkType: hard "zod-to-json-schema@npm:^3.20.4, zod-to-json-schema@npm:^3.21.4": - version: 3.23.3 - resolution: "zod-to-json-schema@npm:3.23.3" + version: 3.23.5 + resolution: "zod-to-json-schema@npm:3.23.5" peerDependencies: zod: ^3.23.3 - checksum: 0d51cf64b54fd39e86434cd5d2239c2981808e6461d022e4c68a1dec67fff28ef2b7bb5733dfd40eb50d6ce6d252288f3989d67134fa81401c36469bb26f13ec + checksum: 3ac37128d1b989b027e55684201e1da90237f0955dc9bb40da013bc60f2ed23c57026df2fdc14da187be4d53873daad08210807c28c0dde4375c9df0e5fe7901 languageName: node linkType: hard From 23f06dab62edbff042ec3a6a01a5aacb4cbe4713 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 4 Nov 2024 19:16:18 +0000 Subject: [PATCH 079/161] chore(deps): update actions/setup-node action to v4.1.0 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/workflows/api-breaking-changes.yml | 2 +- .github/workflows/ci.yml | 6 +++--- .github/workflows/deploy_docker-image.yml | 2 +- .github/workflows/deploy_microsite.yml | 6 +++--- .github/workflows/deploy_packages.yml | 2 +- .github/workflows/sync_code-formatting.yml | 2 +- .github/workflows/sync_release-manifest.yml | 2 +- .github/workflows/sync_snyk-github-issues.yml | 2 +- .github/workflows/verify_accessibility.yml | 2 +- .github/workflows/verify_e2e-linux.yml | 2 +- .github/workflows/verify_e2e-windows.yml | 2 +- .github/workflows/verify_microsite.yml | 2 +- .github/workflows/verify_microsite_accessibility.yml | 2 +- .github/workflows/verify_storybook.yml | 2 +- .github/workflows/verify_windows.yml | 2 +- 15 files changed, 19 insertions(+), 19 deletions(-) diff --git a/.github/workflows/api-breaking-changes.yml b/.github/workflows/api-breaking-changes.yml index 9c2b9229f8..a6ba0e393b 100644 --- a/.github/workflows/api-breaking-changes.yml +++ b/.github/workflows/api-breaking-changes.yml @@ -27,7 +27,7 @@ jobs: run: git fetch --depth 1 origin ${{ github.base_ref }} - name: setup-node - uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4 + uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: node-version: 20.x registry-url: https://registry.npmjs.org/ diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 58cf4a3880..a959b7aa9a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -35,7 +35,7 @@ jobs: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: use node.js ${{ matrix.node-version }} - uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4 + uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: node-version: ${{ matrix.node-version }} registry-url: https://registry.npmjs.org/ # Needed for auth @@ -71,7 +71,7 @@ jobs: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: use node.js ${{ matrix.node-version }} - uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4 + uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: node-version: ${{ matrix.node-version }} registry-url: https://registry.npmjs.org/ # Needed for auth @@ -219,7 +219,7 @@ jobs: run: git fetch origin ${{ github.event.pull_request.base.ref }} - name: use node.js ${{ matrix.node-version }} - uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4 + uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: node-version: ${{ matrix.node-version }} registry-url: https://registry.npmjs.org/ # Needed for auth diff --git a/.github/workflows/deploy_docker-image.yml b/.github/workflows/deploy_docker-image.yml index 4176cb6e80..f0d8d0048d 100644 --- a/.github/workflows/deploy_docker-image.yml +++ b/.github/workflows/deploy_docker-image.yml @@ -31,7 +31,7 @@ jobs: ref: ${{ github.event.client_payload.version && env.RELEASE_VERSION || github.ref }} - name: use node.js ${{ matrix.node-version }} - uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4 + uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: node-version: ${{ matrix.node-version }} registry-url: https://registry.npmjs.org/ # Needed for auth diff --git a/.github/workflows/deploy_microsite.yml b/.github/workflows/deploy_microsite.yml index 291786efd3..afca3a8b9e 100644 --- a/.github/workflows/deploy_microsite.yml +++ b/.github/workflows/deploy_microsite.yml @@ -59,7 +59,7 @@ jobs: ref: refs/tags/${{ steps.find-release.outputs.result }} - name: Use Node.js 20.x - uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4 + uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: node-version: 20.x registry-url: https://registry.npmjs.org/ # Needed for auth @@ -99,7 +99,7 @@ jobs: uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Use Node.js 20.x - uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4 + uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: node-version: 20.x registry-url: https://registry.npmjs.org/ # Needed for auth @@ -163,7 +163,7 @@ jobs: egress-policy: audit - name: Use Node.js 20.x - uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4 + uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: node-version: 20.x registry-url: https://registry.npmjs.org/ # Needed for auth diff --git a/.github/workflows/deploy_packages.yml b/.github/workflows/deploy_packages.yml index f365236b57..b95a6f9341 100644 --- a/.github/workflows/deploy_packages.yml +++ b/.github/workflows/deploy_packages.yml @@ -71,7 +71,7 @@ jobs: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: use node.js ${{ matrix.node-version }} - uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4 + uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: node-version: ${{ matrix.node-version }} registry-url: https://registry.npmjs.org/ # Needed for auth diff --git a/.github/workflows/sync_code-formatting.yml b/.github/workflows/sync_code-formatting.yml index 23b3e8cf3f..4de42669e4 100644 --- a/.github/workflows/sync_code-formatting.yml +++ b/.github/workflows/sync_code-formatting.yml @@ -20,7 +20,7 @@ jobs: fetch-depth: 0 - name: use node.js ${{ matrix.node-version }} - uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4 + uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: node-version: ${{ matrix.node-version }} registry-url: https://registry.npmjs.org/ # Needed for auth diff --git a/.github/workflows/sync_release-manifest.yml b/.github/workflows/sync_release-manifest.yml index 06e61cc7cd..f2f9e1d819 100644 --- a/.github/workflows/sync_release-manifest.yml +++ b/.github/workflows/sync_release-manifest.yml @@ -19,7 +19,7 @@ jobs: ref: v${{ github.event.client_payload.version }} - name: Use Node.js 20.x - uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4 + uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: node-version: 20.x registry-url: https://registry.npmjs.org/ # Needed for auth diff --git a/.github/workflows/sync_snyk-github-issues.yml b/.github/workflows/sync_snyk-github-issues.yml index b51036f542..20d4f0f144 100644 --- a/.github/workflows/sync_snyk-github-issues.yml +++ b/.github/workflows/sync_snyk-github-issues.yml @@ -19,7 +19,7 @@ jobs: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Use Node.js 20.x - uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4 + uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: node-version: 20.x registry-url: https://registry.npmjs.org/ # Needed for auth diff --git a/.github/workflows/verify_accessibility.yml b/.github/workflows/verify_accessibility.yml index 04358bc7bb..41d549cc7a 100644 --- a/.github/workflows/verify_accessibility.yml +++ b/.github/workflows/verify_accessibility.yml @@ -26,7 +26,7 @@ jobs: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Use Node.js 20.x - uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4 + uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: node-version: 20.x - name: yarn install diff --git a/.github/workflows/verify_e2e-linux.yml b/.github/workflows/verify_e2e-linux.yml index 54d76db295..9f3c5ae009 100644 --- a/.github/workflows/verify_e2e-linux.yml +++ b/.github/workflows/verify_e2e-linux.yml @@ -53,7 +53,7 @@ jobs: git config --global user.name 'GitHub e2e user' - name: use node.js ${{ matrix.node-version }} - uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4 + uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: node-version: ${{ matrix.node-version }} registry-url: https://registry.npmjs.org/ # Needed for auth diff --git a/.github/workflows/verify_e2e-windows.yml b/.github/workflows/verify_e2e-windows.yml index 2934874460..fb0d5457e5 100644 --- a/.github/workflows/verify_e2e-windows.yml +++ b/.github/workflows/verify_e2e-windows.yml @@ -50,7 +50,7 @@ jobs: git config --global user.name 'GitHub e2e user' - name: use node.js ${{ matrix.node-version }} - uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4 + uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: node-version: ${{ matrix.node-version }} registry-url: https://registry.npmjs.org/ # Needed for auth diff --git a/.github/workflows/verify_microsite.yml b/.github/workflows/verify_microsite.yml index 3dc44bf433..26c2414589 100644 --- a/.github/workflows/verify_microsite.yml +++ b/.github/workflows/verify_microsite.yml @@ -31,7 +31,7 @@ jobs: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Use Node.js 20.x - uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4 + uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: node-version: 20.x - uses: actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5 diff --git a/.github/workflows/verify_microsite_accessibility.yml b/.github/workflows/verify_microsite_accessibility.yml index 91533bd7d8..bdf9e56556 100644 --- a/.github/workflows/verify_microsite_accessibility.yml +++ b/.github/workflows/verify_microsite_accessibility.yml @@ -22,7 +22,7 @@ jobs: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Use Node.js 20.x - uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4 + uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: node-version: 20.x diff --git a/.github/workflows/verify_storybook.yml b/.github/workflows/verify_storybook.yml index 8fd3f17ee4..3ba8b7027c 100644 --- a/.github/workflows/verify_storybook.yml +++ b/.github/workflows/verify_storybook.yml @@ -37,7 +37,7 @@ jobs: fetch-depth: 0 # Required to retrieve git history - name: use node.js ${{ matrix.node-version }} - uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4 + uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: node-version: ${{ matrix.node-version }} registry-url: https://registry.npmjs.org/ # Needed for auth diff --git a/.github/workflows/verify_windows.yml b/.github/workflows/verify_windows.yml index 4f8afe5530..189bcb09cd 100644 --- a/.github/workflows/verify_windows.yml +++ b/.github/workflows/verify_windows.yml @@ -36,7 +36,7 @@ jobs: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: use node.js ${{ matrix.node-version }} - uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4 + uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: node-version: ${{ matrix.node-version }} registry-url: https://registry.npmjs.org/ # Needed for auth From 859278258444eabc9bcae840e58d95719581521c Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 4 Nov 2024 20:20:40 +0000 Subject: [PATCH 080/161] fix(deps): update dependency cron to v3.1.9 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 4d7f1880b0..82457cc9b3 100644 --- a/yarn.lock +++ b/yarn.lock @@ -24469,12 +24469,12 @@ __metadata: linkType: hard "cron@npm:^3.0.0": - version: 3.1.8 - resolution: "cron@npm:3.1.8" + version: 3.1.9 + resolution: "cron@npm:3.1.9" dependencies: "@types/luxon": ~3.4.0 luxon: ~3.5.0 - checksum: 470ada23ae25b64fe9d529d3421df1d9a18716693c710e617ba79263a7883d7d5292f9ef0e067fd47b82019b9fa313a461dacd381c8feadb136849b460ddee4c + checksum: 02ccf0c0ba41f2d304c579841e132cffbb9d95e456fa9101225fd1f07a7d9ca8d3548eab44e794ee6c4cb4755cab8247ad9b37528bda33f51264cbc4e5b48ced languageName: node linkType: hard From ac71154cc9ed8ebabecab0b913b16fb14cf07216 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 4 Nov 2024 20:20:50 +0000 Subject: [PATCH 081/161] chore(deps): update actions/setup-python action to v5.3.0 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/workflows/verify_e2e-techdocs.yml | 2 +- .github/workflows/verify_e2e-windows.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/verify_e2e-techdocs.yml b/.github/workflows/verify_e2e-techdocs.yml index 9aad8e9699..b42cae8896 100644 --- a/.github/workflows/verify_e2e-techdocs.yml +++ b/.github/workflows/verify_e2e-techdocs.yml @@ -35,7 +35,7 @@ jobs: egress-policy: audit - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - - uses: actions/setup-python@f677139bbe7f9c59b41e40162b753c062f5d49a3 # v5.2.0 + - uses: actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5.3.0 with: python-version: '3.9' diff --git a/.github/workflows/verify_e2e-windows.yml b/.github/workflows/verify_e2e-windows.yml index 2934874460..34a0672b56 100644 --- a/.github/workflows/verify_e2e-windows.yml +++ b/.github/workflows/verify_e2e-windows.yml @@ -56,7 +56,7 @@ jobs: registry-url: https://registry.npmjs.org/ # Needed for auth - name: setup python - uses: actions/setup-python@f677139bbe7f9c59b41e40162b753c062f5d49a3 # v5.2.0 + uses: actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5.3.0 with: python-version: '3.10' From ece94d31c38bb2e4c343bce9fab5666605b426e3 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 4 Nov 2024 21:34:45 +0000 Subject: [PATCH 082/161] chore(deps): update dependency @types/node to v20.17.6 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/yarn.lock b/yarn.lock index 82457cc9b3..1df446a99b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -18704,11 +18704,11 @@ __metadata: linkType: hard "@types/node@npm:*, @types/node@npm:>=13.7.0, @types/node@npm:^22.0.0": - version: 22.7.7 - resolution: "@types/node@npm:22.7.7" + version: 22.8.7 + resolution: "@types/node@npm:22.8.7" dependencies: - undici-types: ~6.19.2 - checksum: 70492e46d92bf00b537c8700322ad001c1f8d4fc65fc1627064a91c7edebb8ad18730b95a3c6bdff212dd0252a337a4b92e4cfcbc21c9f08616302e87ea855b8 + undici-types: ~6.19.8 + checksum: c7b200d06da97a4d4f46528ae962c028bb06b6ef9ab7f7949639420f3b3d236f041756ca1945dcaec0fcefbafd07b8ca47bbc1b47b77d33a4173211425641426 languageName: node linkType: hard @@ -18734,20 +18734,20 @@ __metadata: linkType: hard "@types/node@npm:^18.11.18, @types/node@npm:^18.11.9, @types/node@npm:^18.17.15": - version: 18.19.57 - resolution: "@types/node@npm:18.19.57" + version: 18.19.64 + resolution: "@types/node@npm:18.19.64" dependencies: undici-types: ~5.26.4 - checksum: d7be072513df5f6b14384dc284561ddf4e6393ce85b8fd3cc9ab0c0a7abd03bfdab6519548dab7c743ec9dfca9ce686dde2db0fbbf1d357e0822b4f99a54b193 + checksum: e7680215b03c9bee8a33947f03d06048e8e460f23b1b7b29c45350cf437faa5f8fcb7d8c3eb8dfec8427923e7a184df42bc710c1b6252b4852e3ed7064c6228f languageName: node linkType: hard "@types/node@npm:^20.1.1, @types/node@npm:^20.16.0": - version: 20.16.13 - resolution: "@types/node@npm:20.16.13" + version: 20.17.6 + resolution: "@types/node@npm:20.17.6" dependencies: undici-types: ~6.19.2 - checksum: 2e998ac5ae133b1a4261dc89d0034e63834d285bb2124901b9d805e7b98c0f809fc2586fd1bf7ad9a0f0348bb503fac6c41612a3ca272334b943070a3e82227c + checksum: d51dbb9881c94d0310b32b5fd8013e3261595c61bc888fa27258469c93c3dc0b3c4d20a9f28f3f5f79562f6737e28e7f3dd04940dc8b4d966d34aaf318f7f69b languageName: node linkType: hard @@ -43987,7 +43987,7 @@ __metadata: languageName: node linkType: hard -"undici-types@npm:~6.19.2": +"undici-types@npm:~6.19.2, undici-types@npm:~6.19.8": version: 6.19.8 resolution: "undici-types@npm:6.19.8" checksum: de51f1b447d22571cf155dfe14ff6d12c5bdaec237c765085b439c38ca8518fc360e88c70f99469162bf2e14188a7b0bcb06e1ed2dc031042b984b0bb9544017 From b7edf2b76cafdac2f8a929b8ebdd0f84711ebc3b Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 4 Nov 2024 21:35:30 +0000 Subject: [PATCH 083/161] chore(deps): update dependency better-sqlite3 to v11.5.0 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 82457cc9b3..06c78ab8d3 100644 --- a/yarn.lock +++ b/yarn.lock @@ -22376,13 +22376,13 @@ __metadata: linkType: hard "better-sqlite3@npm:^11.0.0": - version: 11.4.0 - resolution: "better-sqlite3@npm:11.4.0" + version: 11.5.0 + resolution: "better-sqlite3@npm:11.5.0" dependencies: bindings: ^1.5.0 node-gyp: latest prebuild-install: ^7.1.1 - checksum: d681ba16aae43e367ed9ab74fec3319a29bdffb6ca9f4aa7ac1e65304de395356f515e42f8259eed52aa667df9228c3b19bc6bef441cd5f21889d49042ab5f27 + checksum: 37acef8d4272ad57fe211aa5a2e177f95443eafb794c7db6c2d0dae0a4fe4c2ef508b8b970d82f1d9744d009677d82067279f45e27d4155a5e68a578f5c5c051 languageName: node linkType: hard From ba713270e85ce9d0e384bcfcb38f816a088c8de8 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 4 Nov 2024 22:30:50 +0000 Subject: [PATCH 084/161] chore(deps): update dependency eslint to v9.14.0 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- storybook/yarn.lock | 99 ++++++++++++++++++++++++--------------------- 1 file changed, 53 insertions(+), 46 deletions(-) diff --git a/storybook/yarn.lock b/storybook/yarn.lock index 6f1eee9171..42fb1283e2 100644 --- a/storybook/yarn.lock +++ b/storybook/yarn.lock @@ -581,10 +581,10 @@ __metadata: languageName: node linkType: hard -"@eslint-community/regexpp@npm:^4.10.0, @eslint-community/regexpp@npm:^4.11.0, @eslint-community/regexpp@npm:^4.4.0": - version: 4.11.1 - resolution: "@eslint-community/regexpp@npm:4.11.1" - checksum: 6986685529d30e33c2640973c3d8e7ddd31bef3cc8cb10ad54ddc1dea12680779a2c23a45562aa1462c488137a3570e672d122fac7da22d82294382d915cec70 +"@eslint-community/regexpp@npm:^4.10.0, @eslint-community/regexpp@npm:^4.12.1, @eslint-community/regexpp@npm:^4.4.0": + version: 4.12.1 + resolution: "@eslint-community/regexpp@npm:4.12.1" + checksum: 0d628680e204bc316d545b4993d3658427ca404ae646ce541fcc65306b8c712c340e5e573e30fb9f85f4855c0c5f6dca9868931f2fcced06417fbe1a0c6cd2d6 languageName: node linkType: hard @@ -623,10 +623,10 @@ __metadata: languageName: node linkType: hard -"@eslint/js@npm:9.13.0": - version: 9.13.0 - resolution: "@eslint/js@npm:9.13.0" - checksum: ad5dd72aa75bd8d5bd3c1ffe68cf748aed7edef5fcf97193eb52af35dbb89a1999f526a0e2c169ef5572afbbbbb5f37d6fd0af2991d9ccdc29f753da5cc0f532 +"@eslint/js@npm:9.14.0": + version: 9.14.0 + resolution: "@eslint/js@npm:9.14.0" + checksum: 727767d3c80bf88e08565af10cc3732ca0d272c729bbd39043722a203eea289ec6149ab42d977d2d28a81d99329dceeed091b70db37b868e6659913a0840e17b languageName: node linkType: hard @@ -646,20 +646,20 @@ __metadata: languageName: node linkType: hard -"@humanfs/core@npm:^0.19.0": - version: 0.19.0 - resolution: "@humanfs/core@npm:0.19.0" - checksum: d73c153e9a41efce401cdf8eaa831e5b01630b45a46678eded3803347251a24446f1500b0074750fcab0a88d947609b164a0d5bba57f58ec18167bea01c69ac5 +"@humanfs/core@npm:^0.19.1": + version: 0.19.1 + resolution: "@humanfs/core@npm:0.19.1" + checksum: 611e0545146f55ddfdd5c20239cfb7911f9d0e28258787c4fc1a1f6214250830c9367aaaeace0096ed90b6739bee1e9c52ad5ba8adaf74ab8b449119303babfe languageName: node linkType: hard -"@humanfs/node@npm:^0.16.5": - version: 0.16.5 - resolution: "@humanfs/node@npm:0.16.5" +"@humanfs/node@npm:^0.16.6": + version: 0.16.6 + resolution: "@humanfs/node@npm:0.16.6" dependencies: - "@humanfs/core": ^0.19.0 + "@humanfs/core": ^0.19.1 "@humanwhocodes/retry": ^0.3.0 - checksum: ae4799c6bf436450e1b1836f23fdb4ce0eb862df8e02fd498ee7d8ebe552d85fe36ccac81fcfbe39bf43cb49b302ae438d94699a451d1cfc78f64198d4b45674 + checksum: f9cb52bb235f8b9c6fcff43a7e500669a38f8d6ce26593404a9b56365a1644e0ed60c720dc65ff6a696b1f85f3563ab055bb554ec8674f2559085ba840e47710 languageName: node linkType: hard @@ -670,13 +670,20 @@ __metadata: languageName: node linkType: hard -"@humanwhocodes/retry@npm:^0.3.0, @humanwhocodes/retry@npm:^0.3.1": +"@humanwhocodes/retry@npm:^0.3.0": version: 0.3.1 resolution: "@humanwhocodes/retry@npm:0.3.1" checksum: 7e5517bb51dbea3e02ab6cacef59a8f4b0ca023fc4b0b8cbc40de0ad29f46edd50b897c6e7fba79366a0217e3f48e2da8975056f6c35cfe19d9cc48f1d03c1dd languageName: node linkType: hard +"@humanwhocodes/retry@npm:^0.4.0": + version: 0.4.0 + resolution: "@humanwhocodes/retry@npm:0.4.0" + checksum: a1ea6ba7deff692f08770bea159eb53f280d6b56e6a340c238679752c3d2956797e31431a19a0e1cd303cfb130200024d3dc6bec36c7d98edd4789006d19dfd1 + languageName: node + linkType: hard + "@isaacs/cliui@npm:^8.0.2": version: 8.0.2 resolution: "@isaacs/cliui@npm:8.0.2" @@ -2113,12 +2120,12 @@ __metadata: languageName: node linkType: hard -"acorn@npm:^8.12.0, acorn@npm:^8.12.1": - version: 8.13.0 - resolution: "acorn@npm:8.13.0" +"acorn@npm:^8.12.1, acorn@npm:^8.14.0": + version: 8.14.0 + resolution: "acorn@npm:8.14.0" bin: acorn: bin/acorn - checksum: f1541f05eb5d6ff67990d1927290809b1ebb663ac96d9c7057c935cf29c5bcaba6d39f37bd007f4bb814f162f142b0f2b2dd4b14128b8fcfaf9f0508a6f05f1c + checksum: 8755074ba55fff94e84e81c72f1013c2d9c78e973c31231c8ae505a5f966859baf654bddd75046bffd73ce816b149298977fff5077a3033dedba0ae2aad152d4 languageName: node linkType: hard @@ -3069,13 +3076,13 @@ __metadata: languageName: node linkType: hard -"eslint-scope@npm:^8.1.0": - version: 8.1.0 - resolution: "eslint-scope@npm:8.1.0" +"eslint-scope@npm:^8.2.0": + version: 8.2.0 + resolution: "eslint-scope@npm:8.2.0" dependencies: esrecurse: ^4.3.0 estraverse: ^5.2.0 - checksum: 3ce9392ec74f35f84eddad7755941cb5f7e3a1bc53cf902e95e541384ef78b604bec1489933f37c663e4686b36c31533d06cf0842be9a729a680c489efce7acb + checksum: 750eff4672ca2bf274ec0d1bbeae08aadd53c1907d5c6aff5564d8e047a5f49afa8ae6eee333cab637fd3ebcab2141659d8f2f040f6fdc982b0f61f8bf03136f languageName: node linkType: hard @@ -3086,27 +3093,27 @@ __metadata: languageName: node linkType: hard -"eslint-visitor-keys@npm:^4.1.0": - version: 4.1.0 - resolution: "eslint-visitor-keys@npm:4.1.0" - checksum: b5d53725df14a6a225fd74d5e687f5f0547b0aaa3e1963ab6f4acb8dc80f99ad0bec11148e14b4a67de024dde7b4449e7e4c0b1524de605955dee7eefcdd7824 +"eslint-visitor-keys@npm:^4.2.0": + version: 4.2.0 + resolution: "eslint-visitor-keys@npm:4.2.0" + checksum: 779c604672b570bb4da84cef32f6abb085ac78379779c1122d7879eade8bb38ae715645324597cf23232d03cef06032c9844d25c73625bc282a5bfd30247e5b5 languageName: node linkType: hard "eslint@npm:^9.11.1": - version: 9.13.0 - resolution: "eslint@npm:9.13.0" + version: 9.14.0 + resolution: "eslint@npm:9.14.0" dependencies: "@eslint-community/eslint-utils": ^4.2.0 - "@eslint-community/regexpp": ^4.11.0 + "@eslint-community/regexpp": ^4.12.1 "@eslint/config-array": ^0.18.0 "@eslint/core": ^0.7.0 "@eslint/eslintrc": ^3.1.0 - "@eslint/js": 9.13.0 + "@eslint/js": 9.14.0 "@eslint/plugin-kit": ^0.2.0 - "@humanfs/node": ^0.16.5 + "@humanfs/node": ^0.16.6 "@humanwhocodes/module-importer": ^1.0.1 - "@humanwhocodes/retry": ^0.3.1 + "@humanwhocodes/retry": ^0.4.0 "@types/estree": ^1.0.6 "@types/json-schema": ^7.0.15 ajv: ^6.12.4 @@ -3114,9 +3121,9 @@ __metadata: cross-spawn: ^7.0.2 debug: ^4.3.2 escape-string-regexp: ^4.0.0 - eslint-scope: ^8.1.0 - eslint-visitor-keys: ^4.1.0 - espree: ^10.2.0 + eslint-scope: ^8.2.0 + eslint-visitor-keys: ^4.2.0 + espree: ^10.3.0 esquery: ^1.5.0 esutils: ^2.0.2 fast-deep-equal: ^3.1.3 @@ -3139,18 +3146,18 @@ __metadata: optional: true bin: eslint: bin/eslint.js - checksum: 99e878d6883864b8361bfaf2a2304f1e133347ac19976c79e1430623cd311cb38253bbd122100788082eded947693cce5c7e67dfd2b5173e6f05edb92dcb2206 + checksum: 1b54112da245f4175fbcf31ea5f71da38dda1bb8f5d645f3b2420035a4310949fda57af14ca7f7992e36374da8c06b94bf20ec8bda64a09409d818aefd0bf09c languageName: node linkType: hard -"espree@npm:^10.0.1, espree@npm:^10.2.0": - version: 10.2.0 - resolution: "espree@npm:10.2.0" +"espree@npm:^10.0.1, espree@npm:^10.3.0": + version: 10.3.0 + resolution: "espree@npm:10.3.0" dependencies: - acorn: ^8.12.0 + acorn: ^8.14.0 acorn-jsx: ^5.3.2 - eslint-visitor-keys: ^4.1.0 - checksum: 16ee75c2f6029622a70a675ad8989fffc6f7199265d07af516a11e4adc9eb2d03866fceff33f1a081c42621df79871e508f8fc8fe5855eac2de925b58196711b + eslint-visitor-keys: ^4.2.0 + checksum: 63e8030ff5a98cea7f8b3e3a1487c998665e28d674af08b9b3100ed991670eb3cbb0e308c4548c79e03762753838fbe530c783f17309450d6b47a889fee72bef languageName: node linkType: hard From 0e976f2dee79d37d8cb81699efc400f4880eb0dd Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 4 Nov 2024 23:15:56 +0000 Subject: [PATCH 085/161] fix(deps): update dependency @module-federation/enhanced to v0.6.16 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 171 ++++++++++++++++++++++++++++-------------------------- 1 file changed, 90 insertions(+), 81 deletions(-) diff --git a/yarn.lock b/yarn.lock index b8ec24afbe..3e6754985d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -11604,38 +11604,39 @@ __metadata: languageName: node linkType: hard -"@module-federation/bridge-react-webpack-plugin@npm:0.6.15": - version: 0.6.15 - resolution: "@module-federation/bridge-react-webpack-plugin@npm:0.6.15" +"@module-federation/bridge-react-webpack-plugin@npm:0.6.16": + version: 0.6.16 + resolution: "@module-federation/bridge-react-webpack-plugin@npm:0.6.16" dependencies: - "@module-federation/sdk": 0.6.15 + "@module-federation/sdk": 0.6.16 "@types/semver": 7.5.8 semver: 7.6.3 - checksum: 4cdcbe4c707e08f48bb684bd4759fbc71286b1f708f555d7c2f21c9e3648ecba3fc4e603eabbb04bb648d7d3b0e30848c54f2084d2f41c9124fde82c5b5f6b2d + checksum: 9b49f8788bc741279e80cbc7b19980aa0d75e689c5ca08f1a19879d1f921f20e23e54ffc3fdc47010b90786130266d04395f46681d15ffe89f9d57e4e7575882 languageName: node linkType: hard -"@module-federation/data-prefetch@npm:0.6.15": - version: 0.6.15 - resolution: "@module-federation/data-prefetch@npm:0.6.15" +"@module-federation/data-prefetch@npm:0.6.16": + version: 0.6.16 + resolution: "@module-federation/data-prefetch@npm:0.6.16" dependencies: - "@module-federation/runtime": 0.6.15 - "@module-federation/sdk": 0.6.15 + "@module-federation/runtime": 0.6.16 + "@module-federation/sdk": 0.6.16 fs-extra: 9.1.0 peerDependencies: react: ">=16.9.0" react-dom: ">=16.9.0" - checksum: 05585cb7b92c98e62ea24e0cf314077a6c382026cea961be986c6323c8afd2801b014a04175a43d530101ffc354d1ffb74fd79211fe592e19be90be97f32b599 + checksum: cac7dc921abb1f3209e2afd7d4f21a21de525babcbd4afed69e61b2261cf7f18b6f1d9db4be005d1b60f968a03e222639e918253591c23f0be925fb84c952326 languageName: node linkType: hard -"@module-federation/dts-plugin@npm:0.6.15": - version: 0.6.15 - resolution: "@module-federation/dts-plugin@npm:0.6.15" +"@module-federation/dts-plugin@npm:0.6.16": + version: 0.6.16 + resolution: "@module-federation/dts-plugin@npm:0.6.16" dependencies: - "@module-federation/managers": 0.6.15 - "@module-federation/sdk": 0.6.15 - "@module-federation/third-party-dts-extractor": 0.6.15 + "@module-federation/error-codes": 0.6.14 + "@module-federation/managers": 0.6.16 + "@module-federation/sdk": 0.6.16 + "@module-federation/third-party-dts-extractor": 0.6.16 adm-zip: ^0.5.10 ansi-colors: ^4.1.3 axios: ^1.7.4 @@ -11654,22 +11655,22 @@ __metadata: peerDependenciesMeta: vue-tsc: optional: true - checksum: 54b2b819c4c2eeb19cb44d08cf855d48bce96aa7db4b98f24dd2aad13dd6add611d9aafed52d1ad977ee1e4af44105916acec223ce59be9b8965a3073bdc03ca + checksum: 6d1eae570d0234f5adfb3971c8b4b09054fc6e7bff5e06241a5a7ca699c2b22b306d74d391ccaf01ed7ef71541f87c61829342d6a65bd5234f0fcbb36a21626d languageName: node linkType: hard "@module-federation/enhanced@npm:^0.6.0": - version: 0.6.15 - resolution: "@module-federation/enhanced@npm:0.6.15" + version: 0.6.16 + resolution: "@module-federation/enhanced@npm:0.6.16" dependencies: - "@module-federation/bridge-react-webpack-plugin": 0.6.15 - "@module-federation/data-prefetch": 0.6.15 - "@module-federation/dts-plugin": 0.6.15 - "@module-federation/managers": 0.6.15 - "@module-federation/manifest": 0.6.15 - "@module-federation/rspack": 0.6.15 - "@module-federation/runtime-tools": 0.6.15 - "@module-federation/sdk": 0.6.15 + "@module-federation/bridge-react-webpack-plugin": 0.6.16 + "@module-federation/data-prefetch": 0.6.16 + "@module-federation/dts-plugin": 0.6.16 + "@module-federation/managers": 0.6.16 + "@module-federation/manifest": 0.6.16 + "@module-federation/rspack": 0.6.16 + "@module-federation/runtime-tools": 0.6.16 + "@module-federation/sdk": 0.6.16 btoa: ^1.2.1 upath: 2.0.1 peerDependencies: @@ -11683,44 +11684,51 @@ __metadata: optional: true webpack: optional: true - checksum: d4d95cae3c5802ef8815c73969468d75ba02944114793935fa892632f5186de9e28f087e14b8d8d972ec24a59d3fcc3c147d959149038b598e816b870be0200d + checksum: bb1f6566ed176e414816bfc22352f14b5ac45b1fa1655d8d403bde13145d8d0f9c54767d14b9b4fb2210eb5f406f3dd93826bcac1e2303be6bbaccb7eb78ab23 languageName: node linkType: hard -"@module-federation/managers@npm:0.6.15": - version: 0.6.15 - resolution: "@module-federation/managers@npm:0.6.15" +"@module-federation/error-codes@npm:0.6.14": + version: 0.6.14 + resolution: "@module-federation/error-codes@npm:0.6.14" + checksum: d487eebb8990c0ea712dc61813f54c487c0e3549cf21239db28dfa18b5c97ae79bad5134db90aa67aee74f5af5c01d115c7aa66a66a81b098dd75f40e158fcc6 + languageName: node + linkType: hard + +"@module-federation/managers@npm:0.6.16": + version: 0.6.16 + resolution: "@module-federation/managers@npm:0.6.16" dependencies: - "@module-federation/sdk": 0.6.15 + "@module-federation/sdk": 0.6.16 find-pkg: 2.0.0 fs-extra: 9.1.0 - checksum: d2b8f92393f1a2e25f03ab61dea2739baea984c551609bf3aca48ebd41a182dd0cc3b8bf1b88d0cae7844f964e680931c70d1924f99a7e582cab0fe64b8a4bcc + checksum: 6b4e3a585aa2655134152752f2951ec1e913261510bfe714e19040da6d44a40800f7ca514d56f2ad04788d7501b886f3fcfb203900c6a25b7b8228a5459f6d33 languageName: node linkType: hard -"@module-federation/manifest@npm:0.6.15": - version: 0.6.15 - resolution: "@module-federation/manifest@npm:0.6.15" +"@module-federation/manifest@npm:0.6.16": + version: 0.6.16 + resolution: "@module-federation/manifest@npm:0.6.16" dependencies: - "@module-federation/dts-plugin": 0.6.15 - "@module-federation/managers": 0.6.15 - "@module-federation/sdk": 0.6.15 + "@module-federation/dts-plugin": 0.6.16 + "@module-federation/managers": 0.6.16 + "@module-federation/sdk": 0.6.16 chalk: 3.0.0 find-pkg: 2.0.0 - checksum: b244f0bd74f664d58ed264ee986d70c7f09317c584d055db1a9cd9785eeeac8fa057af098b379fae2dce723f0498966c2bd077347684337923717760a6022837 + checksum: fee3254347f927756fcf4d64ede32b93326f976292d7540ebb238fad5ea81c003f030a6020d042239f1f54568ed79e5eafa21e812f763d5961c6827b60be59f7 languageName: node linkType: hard -"@module-federation/rspack@npm:0.6.15": - version: 0.6.15 - resolution: "@module-federation/rspack@npm:0.6.15" +"@module-federation/rspack@npm:0.6.16": + version: 0.6.16 + resolution: "@module-federation/rspack@npm:0.6.16" dependencies: - "@module-federation/bridge-react-webpack-plugin": 0.6.15 - "@module-federation/dts-plugin": 0.6.15 - "@module-federation/managers": 0.6.15 - "@module-federation/manifest": 0.6.15 - "@module-federation/runtime-tools": 0.6.15 - "@module-federation/sdk": 0.6.15 + "@module-federation/bridge-react-webpack-plugin": 0.6.16 + "@module-federation/dts-plugin": 0.6.16 + "@module-federation/managers": 0.6.16 + "@module-federation/manifest": 0.6.16 + "@module-federation/runtime-tools": 0.6.16 + "@module-federation/sdk": 0.6.16 peerDependencies: typescript: ^4.9.0 || ^5.0.0 vue-tsc: ">=1.0.24" @@ -11729,7 +11737,7 @@ __metadata: optional: true vue-tsc: optional: true - checksum: 7f987e8c6a0d9f245410987aefe75fae0d0aa0da177f33c5c41d210a7d4ba31a22062933c00307fef69124276ec73aff472955e11a0cacb232c2b88ea6911f29 + checksum: afc98f64d3270e952ff0425ddd71b13b48644306679d3a4466d38a80c855682951a4b5c1b662fa63619ffad8400d6e7029b762aefd99e7169ee431f12c278e78 languageName: node linkType: hard @@ -11743,13 +11751,13 @@ __metadata: languageName: node linkType: hard -"@module-federation/runtime-tools@npm:0.6.15": - version: 0.6.15 - resolution: "@module-federation/runtime-tools@npm:0.6.15" +"@module-federation/runtime-tools@npm:0.6.16": + version: 0.6.16 + resolution: "@module-federation/runtime-tools@npm:0.6.16" dependencies: - "@module-federation/runtime": 0.6.15 - "@module-federation/webpack-bundler-runtime": 0.6.15 - checksum: 776ceabb2506f5c67dec0ef3698d76f3dc22658e9d501b0579dcc528e8ff901e84469534d898744b485965ea14e4c0701d84ac5880de6e72cd0388ee83f77e93 + "@module-federation/runtime": 0.6.16 + "@module-federation/webpack-bundler-runtime": 0.6.16 + checksum: 53aa76f2563e978e9f610e9276e6f3f6e73ecbf19f3cc349d0762955e748c43ec08a74f248cb697eb31d8109869f05f0f8dda1d6d082436ec246393d0011ac95 languageName: node linkType: hard @@ -11762,12 +11770,13 @@ __metadata: languageName: node linkType: hard -"@module-federation/runtime@npm:0.6.15": - version: 0.6.15 - resolution: "@module-federation/runtime@npm:0.6.15" +"@module-federation/runtime@npm:0.6.16": + version: 0.6.16 + resolution: "@module-federation/runtime@npm:0.6.16" dependencies: - "@module-federation/sdk": 0.6.15 - checksum: 624d087f48212b78a912031d7e6b60e4a56b51755744075e2f911e1958808269e6a440bfb81700b48c64fb6cb7e115bc6e67638ae33bd61bab67866172a12a9e + "@module-federation/error-codes": 0.6.14 + "@module-federation/sdk": 0.6.16 + checksum: d247b4b8ce38f84692da6a3711cdd6d35c4de7885a4639720d4df2436900d66ba2a1b815f64064b95e6aee9fb7082e4d1c6fe1e8ccecd8ddcfaef38379153bbd languageName: node linkType: hard @@ -11778,23 +11787,23 @@ __metadata: languageName: node linkType: hard -"@module-federation/sdk@npm:0.6.15": - version: 0.6.15 - resolution: "@module-federation/sdk@npm:0.6.15" +"@module-federation/sdk@npm:0.6.16": + version: 0.6.16 + resolution: "@module-federation/sdk@npm:0.6.16" dependencies: - isomorphic-rslog: 0.0.4 - checksum: a84d392bdfaf62cc0acc444c60a5c26a303b6bb17fcc27289313aff5ec7f0b70bb2e1fa8d1e4139298d1daabfaaea3838f1671683f0a57fbc8af3e45a87bf586 + isomorphic-rslog: 0.0.5 + checksum: 4495af06a83cbf69da6f6c20b0e8b934382b7b5e9a1b56a3385756476e97750beeb0f4b2671dbc64a3c2ab4a5fdb1f99aafd7562f47a4894352fff75d9499ce8 languageName: node linkType: hard -"@module-federation/third-party-dts-extractor@npm:0.6.15": - version: 0.6.15 - resolution: "@module-federation/third-party-dts-extractor@npm:0.6.15" +"@module-federation/third-party-dts-extractor@npm:0.6.16": + version: 0.6.16 + resolution: "@module-federation/third-party-dts-extractor@npm:0.6.16" dependencies: find-pkg: 2.0.0 fs-extra: 9.1.0 resolve: 1.22.8 - checksum: 7a75f7efc56729d8baf3e9dd90ffce2027d478551964ff912e9b488b1981a32b006b4ccfbb277b4849ad7848c40c9fd394ad3f4189324c0c407ec7562ec0a699 + checksum: 2f2317d3703a084a2ff11152a376276a9462954da624a6d69ab265868fb2fedeaeeb1486721f9fff0f3c15d81e3336bf71f90fabe8d4ed4cde4c4d0b5a8ff8be languageName: node linkType: hard @@ -11808,13 +11817,13 @@ __metadata: languageName: node linkType: hard -"@module-federation/webpack-bundler-runtime@npm:0.6.15": - version: 0.6.15 - resolution: "@module-federation/webpack-bundler-runtime@npm:0.6.15" +"@module-federation/webpack-bundler-runtime@npm:0.6.16": + version: 0.6.16 + resolution: "@module-federation/webpack-bundler-runtime@npm:0.6.16" dependencies: - "@module-federation/runtime": 0.6.15 - "@module-federation/sdk": 0.6.15 - checksum: 6fb0e412779666b523cd10500d2217130c8799ee3a9f0b72eb676cc6efc1461a391ca9beff5852e41eea7e671672b994dfa08a6efb3eb990acab5c6b3cb8b4c2 + "@module-federation/runtime": 0.6.16 + "@module-federation/sdk": 0.6.16 + checksum: e78d5879eb1553c3dc96a93c7c962d9aa576b20f420fac8747fa1e3d61ab7e4ee51372924cedcd6483b829e2b4988a6f2daad4c6ddf2841c744ef69b9ba27680 languageName: node linkType: hard @@ -31286,10 +31295,10 @@ __metadata: languageName: node linkType: hard -"isomorphic-rslog@npm:0.0.4": - version: 0.0.4 - resolution: "isomorphic-rslog@npm:0.0.4" - checksum: 8d0594fb31bbb3fbd44355294a6129f5734db58d3445344180add2b538c323cfce8961efd645fd33e6ecc6ce50065b2e917cf14517c26cdd0cd3fb9dace2d132 +"isomorphic-rslog@npm:0.0.5": + version: 0.0.5 + resolution: "isomorphic-rslog@npm:0.0.5" + checksum: ba3d8a5ca4691ae4e6ef8a50c404b94658618c87bd2ac7618946f8ea067489ee4a16a152b74afe24bcbdfe975e3b3a63e3c5149bf2a929aa781bdd7eb3f1370f languageName: node linkType: hard From f8c715bb2d14d07451973632c9ec19de5057e5c9 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 4 Nov 2024 23:17:50 +0000 Subject: [PATCH 086/161] chore(deps): update dependency globals to v15.12.0 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- storybook/yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/storybook/yarn.lock b/storybook/yarn.lock index 42fb1283e2..2a2371ef8e 100644 --- a/storybook/yarn.lock +++ b/storybook/yarn.lock @@ -3606,9 +3606,9 @@ __metadata: linkType: hard "globals@npm:^15.9.0": - version: 15.11.0 - resolution: "globals@npm:15.11.0" - checksum: ef32d5ef987f3d4b47fc2e389a0b235f6a46f605160c4e405722fd7b576106ca407cb867e66fd1e0fc43b631800e2e2e71847f37691026d813f96f40339da702 + version: 15.12.0 + resolution: "globals@npm:15.12.0" + checksum: 2a134cc876dd73192489561e3c85be348dc1408fef043ebef605cdc437f64cd2fc922268db02e3348683d05d06bed10fb1c3653b3d4399a204a7ecd59e742a07 languageName: node linkType: hard From e586e77ba97f5f1ac2bece8467dc3662563544bf Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Tue, 5 Nov 2024 01:00:04 +0100 Subject: [PATCH 087/161] app-visualizer: add minimal dev setup Signed-off-by: Patrik Oldsberg --- .changeset/smart-bags-sell.md | 5 +++++ plugins/app-visualizer/dev/index.ts | 25 +++++++++++++++++++++++++ plugins/app-visualizer/package.json | 1 + yarn.lock | 1 + 4 files changed, 32 insertions(+) create mode 100644 .changeset/smart-bags-sell.md create mode 100644 plugins/app-visualizer/dev/index.ts diff --git a/.changeset/smart-bags-sell.md b/.changeset/smart-bags-sell.md new file mode 100644 index 0000000000..2c5f5c4d87 --- /dev/null +++ b/.changeset/smart-bags-sell.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-app-visualizer': patch +--- + +New `devDependency` for local development setup. diff --git a/plugins/app-visualizer/dev/index.ts b/plugins/app-visualizer/dev/index.ts new file mode 100644 index 0000000000..fa49e3360b --- /dev/null +++ b/plugins/app-visualizer/dev/index.ts @@ -0,0 +1,25 @@ +/* + * Copyright 2024 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import ReactDOM from 'react-dom/client'; +import { createApp } from '@backstage/frontend-defaults'; +import { default as plugin } from '../src'; + +const app = createApp({ + features: [plugin], +}); + +ReactDOM.createRoot(document.getElementById('root')!).render(app.createRoot()); diff --git a/plugins/app-visualizer/package.json b/plugins/app-visualizer/package.json index 4f7afbd632..5adbc95e7c 100644 --- a/plugins/app-visualizer/package.json +++ b/plugins/app-visualizer/package.json @@ -42,6 +42,7 @@ }, "devDependencies": { "@backstage/cli": "workspace:^", + "@backstage/frontend-defaults": "workspace:^", "@types/react": "^18.0.0", "react": "^18.0.2", "react-dom": "^18.0.2", diff --git a/yarn.lock b/yarn.lock index b8ec24afbe..c16ff81ca1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5017,6 +5017,7 @@ __metadata: "@backstage/cli": "workspace:^" "@backstage/core-components": "workspace:^" "@backstage/core-plugin-api": "workspace:^" + "@backstage/frontend-defaults": "workspace:^" "@backstage/frontend-plugin-api": "workspace:^" "@material-ui/core": ^4.12.2 "@material-ui/icons": ^4.9.1 From f09a17e509cbe22a12a03e90ba4bc49fb568e874 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 5 Nov 2024 00:18:47 +0000 Subject: [PATCH 088/161] chore(deps): update dependency knip to v5.36.2 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/yarn.lock b/yarn.lock index 3e6754985d..21c87c1fa3 100644 --- a/yarn.lock +++ b/yarn.lock @@ -31975,12 +31975,12 @@ __metadata: languageName: node linkType: hard -"jiti@npm:^2.0.0, jiti@npm:^2.3.3": - version: 2.3.3 - resolution: "jiti@npm:2.3.3" +"jiti@npm:^2.0.0, jiti@npm:^2.4.0": + version: 2.4.0 + resolution: "jiti@npm:2.4.0" bin: jiti: lib/jiti-cli.mjs - checksum: f1a2b87d937569c966f00a8c9153c8f3e02445b31e034fdaed1b9639a4ecfae3c4df24c7644d5b4764c566f8dee09132a5b55cd049b48e618024accd31d8e6b3 + checksum: b7d8c441214e48f6c1be2952a83f40e2b1eb6e94fe81b1fd89370d11a7e322c61eb3fbd9a8d47029e14338414091ebbb575e1a92c645ab30fea6240c5c4957c7 languageName: node linkType: hard @@ -32829,18 +32829,18 @@ __metadata: linkType: hard "knip@npm:^5.0.0": - version: 5.33.3 - resolution: "knip@npm:5.33.3" + version: 5.36.2 + resolution: "knip@npm:5.36.2" dependencies: "@nodelib/fs.walk": 1.2.8 "@snyk/github-codeowners": 1.1.0 easy-table: 1.2.0 enhanced-resolve: ^5.17.1 fast-glob: ^3.3.2 - jiti: ^2.3.3 + jiti: ^2.4.0 js-yaml: ^4.1.0 minimist: ^1.2.8 - picocolors: ^1.0.0 + picocolors: ^1.1.0 picomatch: ^4.0.1 pretty-ms: ^9.0.0 smol-toml: ^1.3.0 @@ -32854,7 +32854,7 @@ __metadata: bin: knip: bin/knip.js knip-bun: bin/knip-bun.js - checksum: 636e26fde892c590a65326d370fc19f1d73575ac014fb84d55d67a71dc05ea0ba2114ae587ba0192232b4ac1094710ee7d9582cf3bbe0773f6c667c0bba9b3e4 + checksum: add434c880a6346f6a660df4961a5e7e6be62aabbc148d8f401ff64423dabd96004ef9b21921682971ade0c7798faee967a9e4832bec647875fccf73674c9f8e languageName: node linkType: hard From 360a2c2c9b48781192f9babfe11a21cf5eb7fddf Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 5 Nov 2024 01:30:53 +0000 Subject: [PATCH 089/161] chore(deps): update dependency typescript-eslint to v8.13.0 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- storybook/yarn.lock | 112 ++++++++++++++++++++++---------------------- 1 file changed, 56 insertions(+), 56 deletions(-) diff --git a/storybook/yarn.lock b/storybook/yarn.lock index 2a2371ef8e..1ce8d11ac9 100644 --- a/storybook/yarn.lock +++ b/storybook/yarn.lock @@ -1772,15 +1772,15 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/eslint-plugin@npm:8.10.0": - version: 8.10.0 - resolution: "@typescript-eslint/eslint-plugin@npm:8.10.0" +"@typescript-eslint/eslint-plugin@npm:8.13.0": + version: 8.13.0 + resolution: "@typescript-eslint/eslint-plugin@npm:8.13.0" dependencies: "@eslint-community/regexpp": ^4.10.0 - "@typescript-eslint/scope-manager": 8.10.0 - "@typescript-eslint/type-utils": 8.10.0 - "@typescript-eslint/utils": 8.10.0 - "@typescript-eslint/visitor-keys": 8.10.0 + "@typescript-eslint/scope-manager": 8.13.0 + "@typescript-eslint/type-utils": 8.13.0 + "@typescript-eslint/utils": 8.13.0 + "@typescript-eslint/visitor-keys": 8.13.0 graphemer: ^1.4.0 ignore: ^5.3.1 natural-compare: ^1.4.0 @@ -1791,7 +1791,7 @@ __metadata: peerDependenciesMeta: typescript: optional: true - checksum: 2bb311eb9a882d530fc94f790f3e1f4745cd4e3523fd8d62ee0ed14d65c4230dc0c797c490c3421c1456fd71349e9bfa146c0b78f63860b75aae6e2a32a6c27c + checksum: 42d5c14abdf97167147f3d753398cf62f44c05ae69615c2630720007a87f70aabe0440de744eb1f95eb72a6f5d3943069d4c2e030789590d7ccf7210b39d9db1 languageName: node linkType: hard @@ -1819,21 +1819,21 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/parser@npm:8.10.0": - version: 8.10.0 - resolution: "@typescript-eslint/parser@npm:8.10.0" +"@typescript-eslint/parser@npm:8.13.0": + version: 8.13.0 + resolution: "@typescript-eslint/parser@npm:8.13.0" dependencies: - "@typescript-eslint/scope-manager": 8.10.0 - "@typescript-eslint/types": 8.10.0 - "@typescript-eslint/typescript-estree": 8.10.0 - "@typescript-eslint/visitor-keys": 8.10.0 + "@typescript-eslint/scope-manager": 8.13.0 + "@typescript-eslint/types": 8.13.0 + "@typescript-eslint/typescript-estree": 8.13.0 + "@typescript-eslint/visitor-keys": 8.13.0 debug: ^4.3.4 peerDependencies: eslint: ^8.57.0 || ^9.0.0 peerDependenciesMeta: typescript: optional: true - checksum: 2e38f34d9d044e251450116cc081a8f84ba13183e9c3e1dda919ddc00eebe634a37d4dfd785998f259b64cdd770e863ecc6c5cf7c8f422baf3d2bc2a0f9241cf + checksum: 5e2d5b2eb5a30c4eeb75ab05975fd793c6d809399c5f000a918747283c760201311b1df85a699fd260a3d7cff1be5f39938d59a1d2f8e92141402bf32b4ad748 languageName: node linkType: hard @@ -1864,13 +1864,13 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/scope-manager@npm:8.10.0": - version: 8.10.0 - resolution: "@typescript-eslint/scope-manager@npm:8.10.0" +"@typescript-eslint/scope-manager@npm:8.13.0": + version: 8.13.0 + resolution: "@typescript-eslint/scope-manager@npm:8.13.0" dependencies: - "@typescript-eslint/types": 8.10.0 - "@typescript-eslint/visitor-keys": 8.10.0 - checksum: 3df8df342e227b80514dcc9151774dea9a71bc649204f702d5b4a1b76a54b4814c5d5a970a6a9213462dd4df0d42342796fab35549e8663d4c0e5d84bd902bba + "@typescript-eslint/types": 8.13.0 + "@typescript-eslint/visitor-keys": 8.13.0 + checksum: 7c80fddb07b3b4e77f05c3ad8aec9a4dda553638188618bc993352ed2b39a8db464c8f28dad8dfc4d82e06ac793fa83a9983198231a7a4711a0dc6f0955b8ad5 languageName: node linkType: hard @@ -1891,18 +1891,18 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/type-utils@npm:8.10.0": - version: 8.10.0 - resolution: "@typescript-eslint/type-utils@npm:8.10.0" +"@typescript-eslint/type-utils@npm:8.13.0": + version: 8.13.0 + resolution: "@typescript-eslint/type-utils@npm:8.13.0" dependencies: - "@typescript-eslint/typescript-estree": 8.10.0 - "@typescript-eslint/utils": 8.10.0 + "@typescript-eslint/typescript-estree": 8.13.0 + "@typescript-eslint/utils": 8.13.0 debug: ^4.3.4 ts-api-utils: ^1.3.0 peerDependenciesMeta: typescript: optional: true - checksum: 8b0cec8cff1926a08c2bd675b24b2ccff36e59a8d9169eed38343f70c4e3bba18796fc39f30a9307ded3f345881aded80dbd6dc1d78b9ae76cff04fbe8708788 + checksum: 98e369a49c4334d8871283f995f010ef38b023f80f922cfef60c21c635cf3a2992ce634613b931de129bb5f4d4939b36025f4cc5aa958bb21fee8eb4d8b78c60 languageName: node linkType: hard @@ -1913,10 +1913,10 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/types@npm:8.10.0": - version: 8.10.0 - resolution: "@typescript-eslint/types@npm:8.10.0" - checksum: 3839fd43b0f21b432a9f6090a39d5b2254ee48c1eecf14f8f66bea0cbaba9f2f33a7fc78aea37dfe8841442332d0a8f99cc65cd2d01ca43db99550d30d6f7fe8 +"@typescript-eslint/types@npm:8.13.0": + version: 8.13.0 + resolution: "@typescript-eslint/types@npm:8.13.0" + checksum: 361489858f07cba8a331d360d73b51a174a902612fd7bb212560a4d7dc2bd704daf252debc410b09e92217aedca9076c3b2892ec76bcf83a7e1575a175942c2e languageName: node linkType: hard @@ -1938,12 +1938,12 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/typescript-estree@npm:8.10.0": - version: 8.10.0 - resolution: "@typescript-eslint/typescript-estree@npm:8.10.0" +"@typescript-eslint/typescript-estree@npm:8.13.0": + version: 8.13.0 + resolution: "@typescript-eslint/typescript-estree@npm:8.13.0" dependencies: - "@typescript-eslint/types": 8.10.0 - "@typescript-eslint/visitor-keys": 8.10.0 + "@typescript-eslint/types": 8.13.0 + "@typescript-eslint/visitor-keys": 8.13.0 debug: ^4.3.4 fast-glob: ^3.3.2 is-glob: ^4.0.3 @@ -1953,7 +1953,7 @@ __metadata: peerDependenciesMeta: typescript: optional: true - checksum: 3fc774f51d0a891a5e09bc77f5544b6aa268abec9c01cd9ec831f92dde9c9d61a5c818ca2800c124fb5d61d40ce7ac34740b347c21ba3493e756c052084afd65 + checksum: 43d33fa341b44e11f3dcd627ea38ebe4433320e569d4a502e44acb370f3a6f64609cf4f98f874eefc161aa42487e35b6e499e74ec422f3c629c7bba155c3d88a languageName: node linkType: hard @@ -1975,17 +1975,17 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/utils@npm:8.10.0": - version: 8.10.0 - resolution: "@typescript-eslint/utils@npm:8.10.0" +"@typescript-eslint/utils@npm:8.13.0": + version: 8.13.0 + resolution: "@typescript-eslint/utils@npm:8.13.0" dependencies: "@eslint-community/eslint-utils": ^4.4.0 - "@typescript-eslint/scope-manager": 8.10.0 - "@typescript-eslint/types": 8.10.0 - "@typescript-eslint/typescript-estree": 8.10.0 + "@typescript-eslint/scope-manager": 8.13.0 + "@typescript-eslint/types": 8.13.0 + "@typescript-eslint/typescript-estree": 8.13.0 peerDependencies: eslint: ^8.57.0 || ^9.0.0 - checksum: db67603baacba9cccbbc625801a44e5320bc558be846646ff9962818c64a9ab07edcfdcad98b15a3f8954d3e398e3a41f085c1ec458f7169a1ce7b3674032d59 + checksum: 6d6ec83c4806aeeba94777bf82230a2cde9bd5aa90969ac73cd2e3ba22eb6b1e4f7d3710dbe13a1a1734857c3cd3e8522bb043a04e85cea583c91618a28cc200 languageName: node linkType: hard @@ -1999,13 +1999,13 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/visitor-keys@npm:8.10.0": - version: 8.10.0 - resolution: "@typescript-eslint/visitor-keys@npm:8.10.0" +"@typescript-eslint/visitor-keys@npm:8.13.0": + version: 8.13.0 + resolution: "@typescript-eslint/visitor-keys@npm:8.13.0" dependencies: - "@typescript-eslint/types": 8.10.0 + "@typescript-eslint/types": 8.13.0 eslint-visitor-keys: ^3.4.3 - checksum: 0b3060a036dd3b6acacc32b1d81b3ada1ac5523cc2d16a369ecffd3ab5b389cd98802b248bf65ee8a266a166125a9e38acd7e917d4dd26044bdf2c805537b7e3 + checksum: eeefa461dbf60c967bcc2905bfd80fd6f5d015e8139c7d7a44a46d8ffa9339089a3a0eb937423e3c59aff306c238ed8821bda935db1da28ae063f2ce1deafe08 languageName: node linkType: hard @@ -5673,16 +5673,16 @@ __metadata: linkType: hard "typescript-eslint@npm:^8.7.0": - version: 8.10.0 - resolution: "typescript-eslint@npm:8.10.0" + version: 8.13.0 + resolution: "typescript-eslint@npm:8.13.0" dependencies: - "@typescript-eslint/eslint-plugin": 8.10.0 - "@typescript-eslint/parser": 8.10.0 - "@typescript-eslint/utils": 8.10.0 + "@typescript-eslint/eslint-plugin": 8.13.0 + "@typescript-eslint/parser": 8.13.0 + "@typescript-eslint/utils": 8.13.0 peerDependenciesMeta: typescript: optional: true - checksum: cf0ead50af444a887097f2ed6cf854c318082e5cebde92c218b7616086b844af0a8e80e8b9e946de7f582ed8ed96934c91d27a816130611217c1e9d34d59f20d + checksum: 9996944f33446b642e017f09387a4c73fe42c8c683dffdfbe5c3342142d3dc30406789aa9def2649003cc9760e0f4cb620fcbdb2df33deeec2f5b5f5987fc407 languageName: node linkType: hard From f8c39b31cc7f4dcc7b665c6a6eadd2b362dac4aa Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 5 Nov 2024 02:33:44 +0000 Subject: [PATCH 090/161] fix(deps): update dependency @asyncapi/react-component to v2.4.3 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 3e6754985d..027b562a56 100644 --- a/yarn.lock +++ b/yarn.lock @@ -348,8 +348,8 @@ __metadata: linkType: hard "@asyncapi/react-component@npm:^2.3.3": - version: 2.3.3 - resolution: "@asyncapi/react-component@npm:2.3.3" + version: 2.4.3 + resolution: "@asyncapi/react-component@npm:2.4.3" dependencies: "@asyncapi/avro-schema-parser": ^3.0.24 "@asyncapi/openapi-schema-parser": ^3.0.24 @@ -363,7 +363,7 @@ __metadata: peerDependencies: react: ">=18.0.0" react-dom: ">=18.0.0" - checksum: 1d7eef64e596e559834ffcb305794cb457e7d7a891558dd3d9f39421d901176f47387db51b8e580bc2fe8fe919944ce8a672b5529c01acbf4fb87e26b2b197a3 + checksum: a302bb0afac4952d77da6558fede68aecedd55096a322ad5b8ca0653aa6e001d21fe681914abea2656c14fb79e1dc6ef8e18ecefce44f877677f0f15fbf6c3c4 languageName: node linkType: hard From b7e5f2f89d4d55ea5621eeed69261756f10e91ee Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 5 Nov 2024 07:54:14 +0000 Subject: [PATCH 091/161] chore(deps): update storybook monorepo to v8.4.2 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- storybook/yarn.lock | 1600 +++++++++---------------------------------- 1 file changed, 314 insertions(+), 1286 deletions(-) diff --git a/storybook/yarn.lock b/storybook/yarn.lock index 2a2371ef8e..cf4fde1666 100644 --- a/storybook/yarn.lock +++ b/storybook/yarn.lock @@ -221,13 +221,6 @@ __metadata: languageName: node linkType: hard -"@base2/pretty-print-object@npm:1.0.1": - version: 1.0.1 - resolution: "@base2/pretty-print-object@npm:1.0.1" - checksum: 1e8a5af578037a9d47d72f815983f9e4efb038e5f03e7635fc893194c5daa723215d71af33267893a9b618656c8eaea7be931b1c063c9b066a40994be0d23545 - languageName: node - linkType: hard - "@chromatic-com/storybook@npm:^1.9.0": version: 1.9.0 resolution: "@chromatic-com/storybook@npm:1.9.0" @@ -248,9 +241,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/aix-ppc64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/aix-ppc64@npm:0.23.1" +"@esbuild/aix-ppc64@npm:0.24.0": + version: 0.24.0 + resolution: "@esbuild/aix-ppc64@npm:0.24.0" conditions: os=aix & cpu=ppc64 languageName: node linkType: hard @@ -262,9 +255,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/android-arm64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/android-arm64@npm:0.23.1" +"@esbuild/android-arm64@npm:0.24.0": + version: 0.24.0 + resolution: "@esbuild/android-arm64@npm:0.24.0" conditions: os=android & cpu=arm64 languageName: node linkType: hard @@ -276,9 +269,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/android-arm@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/android-arm@npm:0.23.1" +"@esbuild/android-arm@npm:0.24.0": + version: 0.24.0 + resolution: "@esbuild/android-arm@npm:0.24.0" conditions: os=android & cpu=arm languageName: node linkType: hard @@ -290,9 +283,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/android-x64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/android-x64@npm:0.23.1" +"@esbuild/android-x64@npm:0.24.0": + version: 0.24.0 + resolution: "@esbuild/android-x64@npm:0.24.0" conditions: os=android & cpu=x64 languageName: node linkType: hard @@ -304,9 +297,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/darwin-arm64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/darwin-arm64@npm:0.23.1" +"@esbuild/darwin-arm64@npm:0.24.0": + version: 0.24.0 + resolution: "@esbuild/darwin-arm64@npm:0.24.0" conditions: os=darwin & cpu=arm64 languageName: node linkType: hard @@ -318,9 +311,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/darwin-x64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/darwin-x64@npm:0.23.1" +"@esbuild/darwin-x64@npm:0.24.0": + version: 0.24.0 + resolution: "@esbuild/darwin-x64@npm:0.24.0" conditions: os=darwin & cpu=x64 languageName: node linkType: hard @@ -332,9 +325,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/freebsd-arm64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/freebsd-arm64@npm:0.23.1" +"@esbuild/freebsd-arm64@npm:0.24.0": + version: 0.24.0 + resolution: "@esbuild/freebsd-arm64@npm:0.24.0" conditions: os=freebsd & cpu=arm64 languageName: node linkType: hard @@ -346,9 +339,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/freebsd-x64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/freebsd-x64@npm:0.23.1" +"@esbuild/freebsd-x64@npm:0.24.0": + version: 0.24.0 + resolution: "@esbuild/freebsd-x64@npm:0.24.0" conditions: os=freebsd & cpu=x64 languageName: node linkType: hard @@ -360,9 +353,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-arm64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/linux-arm64@npm:0.23.1" +"@esbuild/linux-arm64@npm:0.24.0": + version: 0.24.0 + resolution: "@esbuild/linux-arm64@npm:0.24.0" conditions: os=linux & cpu=arm64 languageName: node linkType: hard @@ -374,9 +367,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-arm@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/linux-arm@npm:0.23.1" +"@esbuild/linux-arm@npm:0.24.0": + version: 0.24.0 + resolution: "@esbuild/linux-arm@npm:0.24.0" conditions: os=linux & cpu=arm languageName: node linkType: hard @@ -388,9 +381,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-ia32@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/linux-ia32@npm:0.23.1" +"@esbuild/linux-ia32@npm:0.24.0": + version: 0.24.0 + resolution: "@esbuild/linux-ia32@npm:0.24.0" conditions: os=linux & cpu=ia32 languageName: node linkType: hard @@ -402,9 +395,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-loong64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/linux-loong64@npm:0.23.1" +"@esbuild/linux-loong64@npm:0.24.0": + version: 0.24.0 + resolution: "@esbuild/linux-loong64@npm:0.24.0" conditions: os=linux & cpu=loong64 languageName: node linkType: hard @@ -416,9 +409,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-mips64el@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/linux-mips64el@npm:0.23.1" +"@esbuild/linux-mips64el@npm:0.24.0": + version: 0.24.0 + resolution: "@esbuild/linux-mips64el@npm:0.24.0" conditions: os=linux & cpu=mips64el languageName: node linkType: hard @@ -430,9 +423,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-ppc64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/linux-ppc64@npm:0.23.1" +"@esbuild/linux-ppc64@npm:0.24.0": + version: 0.24.0 + resolution: "@esbuild/linux-ppc64@npm:0.24.0" conditions: os=linux & cpu=ppc64 languageName: node linkType: hard @@ -444,9 +437,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-riscv64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/linux-riscv64@npm:0.23.1" +"@esbuild/linux-riscv64@npm:0.24.0": + version: 0.24.0 + resolution: "@esbuild/linux-riscv64@npm:0.24.0" conditions: os=linux & cpu=riscv64 languageName: node linkType: hard @@ -458,9 +451,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-s390x@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/linux-s390x@npm:0.23.1" +"@esbuild/linux-s390x@npm:0.24.0": + version: 0.24.0 + resolution: "@esbuild/linux-s390x@npm:0.24.0" conditions: os=linux & cpu=s390x languageName: node linkType: hard @@ -472,9 +465,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-x64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/linux-x64@npm:0.23.1" +"@esbuild/linux-x64@npm:0.24.0": + version: 0.24.0 + resolution: "@esbuild/linux-x64@npm:0.24.0" conditions: os=linux & cpu=x64 languageName: node linkType: hard @@ -486,16 +479,16 @@ __metadata: languageName: node linkType: hard -"@esbuild/netbsd-x64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/netbsd-x64@npm:0.23.1" +"@esbuild/netbsd-x64@npm:0.24.0": + version: 0.24.0 + resolution: "@esbuild/netbsd-x64@npm:0.24.0" conditions: os=netbsd & cpu=x64 languageName: node linkType: hard -"@esbuild/openbsd-arm64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/openbsd-arm64@npm:0.23.1" +"@esbuild/openbsd-arm64@npm:0.24.0": + version: 0.24.0 + resolution: "@esbuild/openbsd-arm64@npm:0.24.0" conditions: os=openbsd & cpu=arm64 languageName: node linkType: hard @@ -507,9 +500,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/openbsd-x64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/openbsd-x64@npm:0.23.1" +"@esbuild/openbsd-x64@npm:0.24.0": + version: 0.24.0 + resolution: "@esbuild/openbsd-x64@npm:0.24.0" conditions: os=openbsd & cpu=x64 languageName: node linkType: hard @@ -521,9 +514,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/sunos-x64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/sunos-x64@npm:0.23.1" +"@esbuild/sunos-x64@npm:0.24.0": + version: 0.24.0 + resolution: "@esbuild/sunos-x64@npm:0.24.0" conditions: os=sunos & cpu=x64 languageName: node linkType: hard @@ -535,9 +528,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/win32-arm64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/win32-arm64@npm:0.23.1" +"@esbuild/win32-arm64@npm:0.24.0": + version: 0.24.0 + resolution: "@esbuild/win32-arm64@npm:0.24.0" conditions: os=win32 & cpu=arm64 languageName: node linkType: hard @@ -549,9 +542,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/win32-ia32@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/win32-ia32@npm:0.23.1" +"@esbuild/win32-ia32@npm:0.24.0": + version: 0.24.0 + resolution: "@esbuild/win32-ia32@npm:0.24.0" conditions: os=win32 & cpu=ia32 languageName: node linkType: hard @@ -563,9 +556,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/win32-x64@npm:0.23.1": - version: 0.23.1 - resolution: "@esbuild/win32-x64@npm:0.23.1" +"@esbuild/win32-x64@npm:0.24.0": + version: 0.24.0 + resolution: "@esbuild/win32-x64@npm:0.24.0" conditions: os=win32 & cpu=x64 languageName: node linkType: hard @@ -961,9 +954,9 @@ __metadata: languageName: node linkType: hard -"@storybook/addon-actions@npm:8.3.6": - version: 8.3.6 - resolution: "@storybook/addon-actions@npm:8.3.6" +"@storybook/addon-actions@npm:8.4.2": + version: 8.4.2 + resolution: "@storybook/addon-actions@npm:8.4.2" dependencies: "@storybook/global": ^5.0.0 "@types/uuid": ^9.0.1 @@ -971,290 +964,260 @@ __metadata: polished: ^4.2.2 uuid: ^9.0.0 peerDependencies: - storybook: ^8.3.6 - checksum: 3a663297494d39d846a50d0b372977843a0cfcbb77b622cd499a95274c404e17817d324f90dc8fa22a74040200276d124719de8a703b19a3e79b98e08ed6d403 + storybook: ^8.4.2 + checksum: 7ede8f0404a890c12879b2c2c33fd32e61eb3435461b922391c266d0e268976069be478f92630edfdb9e680f4b901896a9fa12b03c63e2ccb2fc1b6f6d378870 languageName: node linkType: hard -"@storybook/addon-backgrounds@npm:8.3.6": - version: 8.3.6 - resolution: "@storybook/addon-backgrounds@npm:8.3.6" +"@storybook/addon-backgrounds@npm:8.4.2": + version: 8.4.2 + resolution: "@storybook/addon-backgrounds@npm:8.4.2" dependencies: "@storybook/global": ^5.0.0 memoizerific: ^1.11.3 ts-dedent: ^2.0.0 peerDependencies: - storybook: ^8.3.6 - checksum: 91a8154142dafb65f482035e373420027bc6f1664b3ae48aa459a69a466e8a69580f7398d9a70815a86b57d5ea624e9844dbe9c5fc03a9e104eff17fd11f3d14 + storybook: ^8.4.2 + checksum: 889f4ecea5c6d9ca67e95a4d46925c7be3d7ced1657f2279bdf8717c5830074595638196e9c93f21dc63ec2cbc462680cf17602dddcb3f428669e667c8f5becd languageName: node linkType: hard -"@storybook/addon-controls@npm:8.3.6": - version: 8.3.6 - resolution: "@storybook/addon-controls@npm:8.3.6" +"@storybook/addon-controls@npm:8.4.2": + version: 8.4.2 + resolution: "@storybook/addon-controls@npm:8.4.2" dependencies: "@storybook/global": ^5.0.0 dequal: ^2.0.2 - lodash: ^4.17.21 ts-dedent: ^2.0.0 peerDependencies: - storybook: ^8.3.6 - checksum: 29eb23a769ebdff8857d604399da6478d55b82ea689df0707828be16754897fedda2997043f1d92964137aab5e40576c994de12fe355432e2c3ea12e3c99006e + storybook: ^8.4.2 + checksum: 721a179745e9c5cd0fbedb80f7f9578d99a48a4673c8227ae5b5634db9824f6de144223e4bc179e35a3ef206eed93cef51d8ad43d2c9b08edaee57f4f3c93ea2 languageName: node linkType: hard -"@storybook/addon-docs@npm:8.3.6": - version: 8.3.6 - resolution: "@storybook/addon-docs@npm:8.3.6" +"@storybook/addon-docs@npm:8.4.2": + version: 8.4.2 + resolution: "@storybook/addon-docs@npm:8.4.2" dependencies: "@mdx-js/react": ^3.0.0 - "@storybook/blocks": 8.3.6 - "@storybook/csf-plugin": 8.3.6 - "@storybook/global": ^5.0.0 - "@storybook/react-dom-shim": 8.3.6 - "@types/react": ^16.8.0 || ^17.0.0 || ^18.0.0 - fs-extra: ^11.1.0 + "@storybook/blocks": 8.4.2 + "@storybook/csf-plugin": 8.4.2 + "@storybook/react-dom-shim": 8.4.2 react: ^16.8.0 || ^17.0.0 || ^18.0.0 react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - rehype-external-links: ^3.0.0 - rehype-slug: ^6.0.0 ts-dedent: ^2.0.0 peerDependencies: - storybook: ^8.3.6 - checksum: 00bba806e67a83f8dcab67171f9318932ddf0d9b16da3b80923558458d85253b820982ef05419b0b1d8c7ba6bdea4b70308facc081df8102a8f989bdd470d0cd + storybook: ^8.4.2 + checksum: bf24f21b56729bb1cfa7b17e3200c440151597a45f3dccdf183a1ad6f225394d6f98b54082276798c6062d11a2c15a7633b4058cac849010918f60481458fce9 languageName: node linkType: hard "@storybook/addon-essentials@npm:^8.3.5": - version: 8.3.6 - resolution: "@storybook/addon-essentials@npm:8.3.6" + version: 8.4.2 + resolution: "@storybook/addon-essentials@npm:8.4.2" dependencies: - "@storybook/addon-actions": 8.3.6 - "@storybook/addon-backgrounds": 8.3.6 - "@storybook/addon-controls": 8.3.6 - "@storybook/addon-docs": 8.3.6 - "@storybook/addon-highlight": 8.3.6 - "@storybook/addon-measure": 8.3.6 - "@storybook/addon-outline": 8.3.6 - "@storybook/addon-toolbars": 8.3.6 - "@storybook/addon-viewport": 8.3.6 + "@storybook/addon-actions": 8.4.2 + "@storybook/addon-backgrounds": 8.4.2 + "@storybook/addon-controls": 8.4.2 + "@storybook/addon-docs": 8.4.2 + "@storybook/addon-highlight": 8.4.2 + "@storybook/addon-measure": 8.4.2 + "@storybook/addon-outline": 8.4.2 + "@storybook/addon-toolbars": 8.4.2 + "@storybook/addon-viewport": 8.4.2 ts-dedent: ^2.0.0 peerDependencies: - storybook: ^8.3.6 - checksum: 4b15ece66548adfefe41bcfed67aa60526253a47b36245fa63b523986e106f7399b6a1720f59a260ae89a7629b4ebefafca3a19853c5ccecd0b2f259f8dd0c3a + storybook: ^8.4.2 + checksum: 951da2192a63d985e9af2e1e803bbe8bd6d64a87f50644034a55eb8bdc2ad0844e87836437d5c494eff3e94c8eae894d5f28bbef4b9cb99ef7e5fad573e1980d languageName: node linkType: hard -"@storybook/addon-highlight@npm:8.3.6": - version: 8.3.6 - resolution: "@storybook/addon-highlight@npm:8.3.6" +"@storybook/addon-highlight@npm:8.4.2": + version: 8.4.2 + resolution: "@storybook/addon-highlight@npm:8.4.2" dependencies: "@storybook/global": ^5.0.0 peerDependencies: - storybook: ^8.3.6 - checksum: f8ca6d3d6693cba9e7e049c36c7b9ee4d8687dd305f3e87f11f1b8da2b077b6285a45c3ab7a2fe49d3ab273bd7b6b0e1161d12c9fcd0497107ed1985f7e815c6 + storybook: ^8.4.2 + checksum: 436a49e909866a263a1db0445d5498d3f551dab0af70789d22f9913fa562d8be9ae3ac9c6f08e46658cf4b5d9582a7a7be357e5511636088a57ae05a52743d2a languageName: node linkType: hard "@storybook/addon-interactions@npm:^8.3.5": - version: 8.3.6 - resolution: "@storybook/addon-interactions@npm:8.3.6" + version: 8.4.2 + resolution: "@storybook/addon-interactions@npm:8.4.2" dependencies: "@storybook/global": ^5.0.0 - "@storybook/instrumenter": 8.3.6 - "@storybook/test": 8.3.6 + "@storybook/instrumenter": 8.4.2 + "@storybook/test": 8.4.2 polished: ^4.2.2 ts-dedent: ^2.2.0 peerDependencies: - storybook: ^8.3.6 - checksum: ba8061346255b34d4a8131946350485e7a7d1d3c29796dac4b733385ab8e87bbf9ea01a61f557a50e9bbc7da5aec9d10a6c309ce288950f80550e87a369dde11 + storybook: ^8.4.2 + checksum: 80a41d9782594ac543fd4bb934cb572e19a0ec738f693f804b27aac63667f102cec5c3746c5d1472366530530534b47a2d470e374c486f17b18fcebc880e3d16 languageName: node linkType: hard "@storybook/addon-links@npm:^8.3.5": - version: 8.3.6 - resolution: "@storybook/addon-links@npm:8.3.6" + version: 8.4.2 + resolution: "@storybook/addon-links@npm:8.4.2" dependencies: "@storybook/csf": ^0.1.11 "@storybook/global": ^5.0.0 ts-dedent: ^2.0.0 peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - storybook: ^8.3.6 + storybook: ^8.4.2 peerDependenciesMeta: react: optional: true - checksum: 1c6a1483098e5f1292824cb038d7a0efae78a8aee86e940092200b646501a6e4713a24e422fd3dd25781f17e08276dc5156cf3f4838b92a029fff2b4f3eb4e84 + checksum: f23a29ffe9c7d8eb16032c4abba6b325dfea010840f9f3aa8cf27ea6699631a64aa065a796bd685bd35c39dcfdee9a3db51a38bc0bed452ce2c5818b523820b5 languageName: node linkType: hard -"@storybook/addon-measure@npm:8.3.6": - version: 8.3.6 - resolution: "@storybook/addon-measure@npm:8.3.6" +"@storybook/addon-measure@npm:8.4.2": + version: 8.4.2 + resolution: "@storybook/addon-measure@npm:8.4.2" dependencies: "@storybook/global": ^5.0.0 tiny-invariant: ^1.3.1 peerDependencies: - storybook: ^8.3.6 - checksum: 1c12baf9681a7b200594ce0bd1ac4a0645994a082fc6536fb24f61be2ae529796dda1dc65b9cfc5e4947ae9036405df62f56369d8ec696a0bd6bc0dcc8a7b7ab + storybook: ^8.4.2 + checksum: fb03d27a828ac035e88de4c035cb1fbc070a7fe6c3e8cf0422a2480f0fb62223d6e2d3ab966b04e3c8372c8258aa487431532c766111fbd268beec8b280bd4ec languageName: node linkType: hard -"@storybook/addon-outline@npm:8.3.6": - version: 8.3.6 - resolution: "@storybook/addon-outline@npm:8.3.6" +"@storybook/addon-outline@npm:8.4.2": + version: 8.4.2 + resolution: "@storybook/addon-outline@npm:8.4.2" dependencies: "@storybook/global": ^5.0.0 ts-dedent: ^2.0.0 peerDependencies: - storybook: ^8.3.6 - checksum: eb3610cd1842c0234217745643aae4acb59af183202a885c3bb7e70a81864b49f15268e0f51bb15eef628068d93e9b76781e4cd7be42c3dbffc1c21d21cccfec + storybook: ^8.4.2 + checksum: f7397522f7c4568bc1d6fe858ba9fa3c4ce4afbdbfd47761ebb841c8678a2472f4bbff4078fd557224b54b353e0164b97fef49d668e9b6ab8388b99bc312d3a0 languageName: node linkType: hard "@storybook/addon-storysource@npm:^8.3.6": - version: 8.3.6 - resolution: "@storybook/addon-storysource@npm:8.3.6" + version: 8.4.2 + resolution: "@storybook/addon-storysource@npm:8.4.2" dependencies: - "@storybook/source-loader": 8.3.6 + "@storybook/source-loader": 8.4.2 estraverse: ^5.2.0 tiny-invariant: ^1.3.1 peerDependencies: - storybook: ^8.3.6 - checksum: 39d3bda7a706b474b93d3763b46701e845cd41468cf6ceaa3e6841752bc3e06c70f2a550267352a8039e0bb2f5fd6e116df13b5a8e21187fbfca8616221b1be5 + storybook: ^8.4.2 + checksum: 1aa0b69db43733a1cb25df3c56e869640a63344a43d9a3455da4c3c255ab4c1d45d1fe2e02202e347b7bb1b986d44f31d064f23edeeeeee2de148355091a0001 languageName: node linkType: hard "@storybook/addon-themes@npm:^8.3.6": - version: 8.3.6 - resolution: "@storybook/addon-themes@npm:8.3.6" + version: 8.4.2 + resolution: "@storybook/addon-themes@npm:8.4.2" dependencies: ts-dedent: ^2.0.0 peerDependencies: - storybook: ^8.3.6 - checksum: d4cd65bcb6d3b2d8bf411f10698323dc9de5f3a95f6c71729f7d23aadce53ab0c02f114c51d1fc0821d3ee51824076eafa04816ddbfe6d38784435948985b25a + storybook: ^8.4.2 + checksum: 9f46779b2693a904de3b003f2c1d9d1a97ba22c14d87925a70a630ceeb6c9b38cdfde431b58abf767d4325727524dc0782397db73e63dc7f8f7a87825b477e0a languageName: node linkType: hard -"@storybook/addon-toolbars@npm:8.3.6": - version: 8.3.6 - resolution: "@storybook/addon-toolbars@npm:8.3.6" +"@storybook/addon-toolbars@npm:8.4.2": + version: 8.4.2 + resolution: "@storybook/addon-toolbars@npm:8.4.2" peerDependencies: - storybook: ^8.3.6 - checksum: 843730ab0111d869c5b913b5ad9aa0fce24e179b6f4c43f9da3fe046a929224943b3efa54652dac290baf2940916f08487f26828afa8ad3bc1523c1a039469a4 + storybook: ^8.4.2 + checksum: 0b19b49ca00e952a50052f323b7e5fd144331f5b719e4d7053c266c32db1a0f30d3a28f6aafe4f5d239a5402cb0195bb295361adfc2e7d3abb9b27a888816c8e languageName: node linkType: hard -"@storybook/addon-viewport@npm:8.3.6": - version: 8.3.6 - resolution: "@storybook/addon-viewport@npm:8.3.6" +"@storybook/addon-viewport@npm:8.4.2": + version: 8.4.2 + resolution: "@storybook/addon-viewport@npm:8.4.2" dependencies: memoizerific: ^1.11.3 peerDependencies: - storybook: ^8.3.6 - checksum: b4cfe34ddcdab01432f9380dcb3d8f9073a26765349ac7e4f5801f83b3162e1db74c759acd914d3445721d39f72b03919a319f08f9ddfbaa623711ccaa139f23 + storybook: ^8.4.2 + checksum: fabb338c37ce560b1c67baf36fbefc7aca544e62e4b27b128e70c142d0cb1ebd320bf774208888e53879b4183c3899565edf0cdc2e80e55f9bcdee7a032a4da1 languageName: node linkType: hard -"@storybook/blocks@npm:8.3.6, @storybook/blocks@npm:^8.3.5": - version: 8.3.6 - resolution: "@storybook/blocks@npm:8.3.6" +"@storybook/blocks@npm:8.4.2, @storybook/blocks@npm:^8.3.5": + version: 8.4.2 + resolution: "@storybook/blocks@npm:8.4.2" dependencies: "@storybook/csf": ^0.1.11 - "@storybook/global": ^5.0.0 - "@storybook/icons": ^1.2.10 - "@types/lodash": ^4.14.167 - color-convert: ^2.0.1 - dequal: ^2.0.2 - lodash: ^4.17.21 - markdown-to-jsx: ^7.4.5 - memoizerific: ^1.11.3 - polished: ^4.2.2 - react-colorful: ^5.1.2 - telejson: ^7.2.0 + "@storybook/icons": ^1.2.12 ts-dedent: ^2.0.0 - util-deprecate: ^1.0.2 peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - storybook: ^8.3.6 + storybook: ^8.4.2 peerDependenciesMeta: react: optional: true react-dom: optional: true - checksum: 17b929a9b3ce585740dcd282a085ecdfc35f11393979f5eabbe8cdde9838eb6faa5e0738e20fc3e67f701092b626cbf53298ff68d5d5d370dca0a36a4a823e56 + checksum: 649bb81cdb5229b49aa7b913952974cbad533bf854f7bd400dc535b0f4781f90bf1b04df009fc6bcedbf111d7dbeeb375da38dbca8fa8f5306eeab8990dd342e languageName: node linkType: hard -"@storybook/builder-vite@npm:8.3.6": - version: 8.3.6 - resolution: "@storybook/builder-vite@npm:8.3.6" +"@storybook/builder-vite@npm:8.4.2": + version: 8.4.2 + resolution: "@storybook/builder-vite@npm:8.4.2" dependencies: - "@storybook/csf-plugin": 8.3.6 - "@types/find-cache-dir": ^3.2.1 + "@storybook/csf-plugin": 8.4.2 browser-assert: ^1.2.1 - es-module-lexer: ^1.5.0 - express: ^4.19.2 - find-cache-dir: ^3.0.0 - fs-extra: ^11.1.0 - magic-string: ^0.30.0 ts-dedent: ^2.0.0 peerDependencies: - "@preact/preset-vite": "*" - storybook: ^8.3.6 - typescript: ">= 4.3.x" + storybook: ^8.4.2 vite: ^4.0.0 || ^5.0.0 - vite-plugin-glimmerx: "*" - peerDependenciesMeta: - "@preact/preset-vite": - optional: true - typescript: - optional: true - vite-plugin-glimmerx: - optional: true - checksum: 3cca69f6e0188d238210d01c721a82d11f54acf3ae6e72d3eb050157a448420131e8957545027b184a13ce68a58fc3c78ea5290030357ecf15638c06bc3ea232 + checksum: ddb161ff6ec81975f80532bb920d2ba3a45a807c77534bb365747034a1e435fa3ef6d689cde3f7d3f843efa370e991e965e517ad517e649153b8428e750dbde8 languageName: node linkType: hard -"@storybook/components@npm:^8.3.6": - version: 8.3.6 - resolution: "@storybook/components@npm:8.3.6" +"@storybook/components@npm:8.4.2": + version: 8.4.2 + resolution: "@storybook/components@npm:8.4.2" peerDependencies: - storybook: ^8.3.6 - checksum: 778a114ddba6bd71ce18a8659c4c8b9b4cbcfa5665a68e3bae9467c492a218c2d95ded0825cc920984a6017f12ce811f48517812eb0de2183623cd06be677d7a + storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 + checksum: 52c7885763f3154215b8f9fda57fe4af62e5194722bca90f35769a74aee411bf552d96455d1c2101404e30b2b0a4ed2c57c21a365ecbf18124a252538e15e83e languageName: node linkType: hard -"@storybook/core@npm:8.3.6": - version: 8.3.6 - resolution: "@storybook/core@npm:8.3.6" +"@storybook/core@npm:8.4.2": + version: 8.4.2 + resolution: "@storybook/core@npm:8.4.2" dependencies: "@storybook/csf": ^0.1.11 - "@types/express": ^4.17.21 better-opn: ^3.0.2 browser-assert: ^1.2.1 - esbuild: ^0.18.0 || ^0.19.0 || ^0.20.0 || ^0.21.0 || ^0.22.0 || ^0.23.0 + esbuild: ^0.18.0 || ^0.19.0 || ^0.20.0 || ^0.21.0 || ^0.22.0 || ^0.23.0 || ^0.24.0 esbuild-register: ^3.5.0 - express: ^4.19.2 jsdoc-type-pratt-parser: ^4.0.0 process: ^0.11.10 recast: ^0.23.5 semver: ^7.6.2 util: ^0.12.5 ws: ^8.2.3 - checksum: 06b07b544b14e9badde9f4348282d8b6103af366f7c631656f12a02beb9bc9e150c2859fcb9b72e9690c20f7c240ccc2ace0ccdc0a7cef13187161e3fc952ff3 + peerDependencies: + prettier: ^2 || ^3 + peerDependenciesMeta: + prettier: + optional: true + checksum: f8b29275f452772ae8663f568d7e00b3384465860df710a130ef72d3b15b767f04cd496949fb1f345d06698310f68c4bfc3f35577f76b87fee14b770d50dc12c languageName: node linkType: hard -"@storybook/csf-plugin@npm:8.3.6": - version: 8.3.6 - resolution: "@storybook/csf-plugin@npm:8.3.6" +"@storybook/csf-plugin@npm:8.4.2": + version: 8.4.2 + resolution: "@storybook/csf-plugin@npm:8.4.2" dependencies: unplugin: ^1.3.1 peerDependencies: - storybook: ^8.3.6 - checksum: 08cd3f8563808889877484f112bca7bca496f3ea195e18660941f11644422282062135a40e0f5f732fee9b5d7a214baddf2a9e58eb10d5ff54bd30b61ee0923d + storybook: ^8.4.2 + checksum: ec787be0a4fe2928a2675fe6bca5799f0bff8c66e50cea7bed198a188b19ee57257266b0255c5226a7da97928758b86c978afecc3ee0e2bb1f21fe0e7fdaf0c5 languageName: node linkType: hard @@ -1283,7 +1246,7 @@ __metadata: languageName: node linkType: hard -"@storybook/icons@npm:^1.2.10": +"@storybook/icons@npm:^1.2.12": version: 1.2.12 resolution: "@storybook/icons@npm:1.2.12" peerDependencies: @@ -1293,56 +1256,55 @@ __metadata: languageName: node linkType: hard -"@storybook/instrumenter@npm:8.3.6": - version: 8.3.6 - resolution: "@storybook/instrumenter@npm:8.3.6" +"@storybook/instrumenter@npm:8.4.2": + version: 8.4.2 + resolution: "@storybook/instrumenter@npm:8.4.2" dependencies: "@storybook/global": ^5.0.0 - "@vitest/utils": ^2.0.5 - util: ^0.12.4 + "@vitest/utils": ^2.1.1 peerDependencies: - storybook: ^8.3.6 - checksum: 4e6fe75ce1418a117ff765e3e134760a23c3fac234bf25ee52c40d2e69163efff78c271a1e7836909278d528a90a670fc45af2d8b5708f5a014a5875f2992ccf + storybook: ^8.4.2 + checksum: 9f4a70ecd5b8aa75aa51f88f829a7585831148c3d38db3f954be46c40a01b47135577d38e84ff7298cbad5efa5a2aaa3a57946d2d03edbf64008c6d2250d0d5d languageName: node linkType: hard -"@storybook/manager-api@npm:^8.3.6": - version: 8.3.6 - resolution: "@storybook/manager-api@npm:8.3.6" +"@storybook/manager-api@npm:8.4.2": + version: 8.4.2 + resolution: "@storybook/manager-api@npm:8.4.2" peerDependencies: - storybook: ^8.3.6 - checksum: 94faf62726b948c2f8e52e15ac99f4ca2f5884a874fbecda6a81e58a03ff316d17ed36c8c146bd388bb58dad2a2bd09cd61c6d7fc1ff2cddfc774c2aed34e37c + storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 + checksum: 61b8f845f3271c2dd84597a94c2905a785949a2467582663165e476f455f1942b9c3be77a08f5101848d8a75ca23aa9f7db620d81f202d19093af7695d6ca8a0 languageName: node linkType: hard -"@storybook/preview-api@npm:^8.3.6": - version: 8.3.6 - resolution: "@storybook/preview-api@npm:8.3.6" +"@storybook/preview-api@npm:8.4.2": + version: 8.4.2 + resolution: "@storybook/preview-api@npm:8.4.2" peerDependencies: - storybook: ^8.3.6 - checksum: 5a645dc19308b69020da2ee282860666c6f7ebe45525802cb4da3d4e496f410a30915e570ae4a07b23d429a5d7f0c7254d9f76e6bc236ff2a85b0cc0e56b0ad0 + storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 + checksum: 5e57c276bc30afd106dbe89b88dd8b4265d538bc4c55d011b6277d24d0210a7b1b9921f7f2403f06ad824fc50b5846d9037803c613a6f437239a667a52841eea languageName: node linkType: hard -"@storybook/react-dom-shim@npm:8.3.6": - version: 8.3.6 - resolution: "@storybook/react-dom-shim@npm:8.3.6" +"@storybook/react-dom-shim@npm:8.4.2": + version: 8.4.2 + resolution: "@storybook/react-dom-shim@npm:8.4.2" peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - storybook: ^8.3.6 - checksum: 4d65deef18aef9ad019b5b37fae511934232299418a3278c67ba396f2108e7150223c176eb42adb6ea91e35da8da6f4bbe57a96105c2201a7e6ae1bebad871e5 + storybook: ^8.4.2 + checksum: c8909337d8f6082bb3bd80adf97e539db3846a3fcd598ec8c2b919a91e9c11a6bd11b7aab76072c076f3e911feb9d798e19305b6d5306a2268b64a04931b6552 languageName: node linkType: hard "@storybook/react-vite@npm:^8.3.5": - version: 8.3.6 - resolution: "@storybook/react-vite@npm:8.3.6" + version: 8.4.2 + resolution: "@storybook/react-vite@npm:8.4.2" dependencies: "@joshwooding/vite-plugin-react-docgen-typescript": 0.3.0 "@rollup/pluginutils": ^5.0.2 - "@storybook/builder-vite": 8.3.6 - "@storybook/react": 8.3.6 + "@storybook/builder-vite": 8.4.2 + "@storybook/react": 8.4.2 find-up: ^5.0.0 magic-string: ^0.30.0 react-docgen: ^7.0.0 @@ -1351,99 +1313,84 @@ __metadata: peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - storybook: ^8.3.6 + storybook: ^8.4.2 vite: ^4.0.0 || ^5.0.0 - checksum: 7e2bd71e84640497595a9b8263527b2015bec29cff9743ace849e174957c3a6c4d62b216ff1f59bb31a8c11f2127042fff8a4d5ef3afb1857dba170941562b66 + checksum: 3598c112c0c7e191cad6693fd1f56f0a7704f3f8bef5d4c8289843936ebbc11c6a22ac98dcc96d3fcb015edcb48910fb78169045d70cc2cb67def9b288aa20f7 languageName: node linkType: hard -"@storybook/react@npm:8.3.6, @storybook/react@npm:^8.3.5": - version: 8.3.6 - resolution: "@storybook/react@npm:8.3.6" +"@storybook/react@npm:8.4.2, @storybook/react@npm:^8.3.5": + version: 8.4.2 + resolution: "@storybook/react@npm:8.4.2" dependencies: - "@storybook/components": ^8.3.6 + "@storybook/components": 8.4.2 "@storybook/global": ^5.0.0 - "@storybook/manager-api": ^8.3.6 - "@storybook/preview-api": ^8.3.6 - "@storybook/react-dom-shim": 8.3.6 - "@storybook/theming": ^8.3.6 - "@types/escodegen": ^0.0.6 - "@types/estree": ^0.0.51 - "@types/node": ^22.0.0 - acorn: ^7.4.1 - acorn-jsx: ^5.3.1 - acorn-walk: ^7.2.0 - escodegen: ^2.1.0 - html-tags: ^3.1.0 - prop-types: ^15.7.2 - react-element-to-jsx-string: ^15.0.0 - semver: ^7.3.7 - ts-dedent: ^2.0.0 - type-fest: ~2.19 - util-deprecate: ^1.0.2 + "@storybook/manager-api": 8.4.2 + "@storybook/preview-api": 8.4.2 + "@storybook/react-dom-shim": 8.4.2 + "@storybook/theming": 8.4.2 peerDependencies: - "@storybook/test": 8.3.6 + "@storybook/test": 8.4.2 react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - storybook: ^8.3.6 + storybook: ^8.4.2 typescript: ">= 4.2.x" peerDependenciesMeta: "@storybook/test": optional: true typescript: optional: true - checksum: 4df2dfbab580cc09df9e4acf5eda0e0558671a42086795a432c3987a30006136372b126258ddff5e5c28e3fea5f8e4354f10bc129f3f326d90f5845df8346d98 + checksum: f1a2d4acce80da04ba044a29232940173e40cf5ad948bbe0ac327c597d625ae764c4f2dc8b00a1de00ddf3e31ff212241f0c48b466b00d5e0406db987ecb5038 languageName: node linkType: hard -"@storybook/source-loader@npm:8.3.6": - version: 8.3.6 - resolution: "@storybook/source-loader@npm:8.3.6" +"@storybook/source-loader@npm:8.4.2": + version: 8.4.2 + resolution: "@storybook/source-loader@npm:8.4.2" dependencies: "@storybook/csf": ^0.1.11 + es-toolkit: ^1.22.0 estraverse: ^5.2.0 - lodash: ^4.17.21 prettier: ^3.1.1 peerDependencies: - storybook: ^8.3.6 - checksum: 73e556ef53f42fdf3d58eb6221284d15d3ec50740ff40a727c83da5deaccd32ebc419e36b7a832b87f090e1dfec3f541d91d5191f52ba66d068f757e57e1cf7d + storybook: ^8.4.2 + checksum: 7db8069bcf5efc8068b5f723a57e102f5fa6a188107ee7e5ccd635ff0294bddb0c987c83c9ef702b78062924455ae3b7eb08b4d0d8ff1afbc3aa6d13ca3dd66d languageName: node linkType: hard -"@storybook/test@npm:8.3.6, @storybook/test@npm:^8.3.5": - version: 8.3.6 - resolution: "@storybook/test@npm:8.3.6" +"@storybook/test@npm:8.4.2, @storybook/test@npm:^8.3.5": + version: 8.4.2 + resolution: "@storybook/test@npm:8.4.2" dependencies: "@storybook/csf": ^0.1.11 "@storybook/global": ^5.0.0 - "@storybook/instrumenter": 8.3.6 + "@storybook/instrumenter": 8.4.2 "@testing-library/dom": 10.4.0 "@testing-library/jest-dom": 6.5.0 "@testing-library/user-event": 14.5.2 "@vitest/expect": 2.0.5 "@vitest/spy": 2.0.5 - util: ^0.12.4 peerDependencies: - storybook: ^8.3.6 - checksum: 58900591f2e70deb47581d5784e6f529debac34a0d2264ecd50139f5cf003bedf907499844181a5a947d040dadff7a223efad7b8ed8cb99be07292ec05e67d15 + storybook: ^8.4.2 + checksum: 24dcd0c7bd28b6feb176116ba265c4b68444d479208175edfc2e42a4e0a344788b2c3d07710424e88e51b8ccad9cdc6a6a40f520ddcb43d3d4861149418d4d63 languageName: node linkType: hard -"@storybook/theming@npm:^8.3.6": - version: 8.3.6 - resolution: "@storybook/theming@npm:8.3.6" +"@storybook/theming@npm:8.4.2": + version: 8.4.2 + resolution: "@storybook/theming@npm:8.4.2" peerDependencies: - storybook: ^8.3.6 - checksum: 7b40b35069225d37f71f43e35174717ba6ec8d273eef671a2d37d9745a300c5b3887fa145aee6fdbe4759b2140ddf25e8cbd569074ae1c7d44b0ccc99c1a3451 + storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 + checksum: 8d0a6d20d3589815dea0bcdae9255216b8fc5459225871881a52e0fbc94a136a9972bef02c2ec6167ffd8eea24afab68962e01e83a8d4f60d12b4b787b9b23f3 languageName: node linkType: hard "@storybook/types@npm:^8.3.5": - version: 8.3.6 - resolution: "@storybook/types@npm:8.3.6" + version: 8.4.2 + resolution: "@storybook/types@npm:8.4.2" peerDependencies: - storybook: ^8.3.6 - checksum: 7122388d848cf1d8b7d95c81b8a601d82a455d764f7a625372f344dc0402bbd398db22e1c6cedd66ca3987d61b0f8204ff757e0ff5fc2a77745094dc7b882a2a + storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 + checksum: 2fb61f73bafb55e19c65f903dd87ac01281d0214c7938a90fc925a9ace327e4e566784b641a3dcf6f2975c904f9cd97d1d70403d421396b1398346e29a0624dd languageName: node linkType: hard @@ -1535,25 +1482,6 @@ __metadata: languageName: node linkType: hard -"@types/body-parser@npm:*": - version: 1.19.5 - resolution: "@types/body-parser@npm:1.19.5" - dependencies: - "@types/connect": "*" - "@types/node": "*" - checksum: 1e251118c4b2f61029cc43b0dc028495f2d1957fe8ee49a707fb940f86a9bd2f9754230805598278fe99958b49e9b7e66eec8ef6a50ab5c1f6b93e1ba2aaba82 - languageName: node - linkType: hard - -"@types/connect@npm:*": - version: 3.4.38 - resolution: "@types/connect@npm:3.4.38" - dependencies: - "@types/node": "*" - checksum: 7eb1bc5342a9604facd57598a6c62621e244822442976c443efb84ff745246b10d06e8b309b6e80130026a396f19bf6793b7cecd7380169f369dac3bfc46fb99 - languageName: node - linkType: hard - "@types/doctrine@npm:^0.0.9": version: 0.0.9 resolution: "@types/doctrine@npm:0.0.9" @@ -1561,13 +1489,6 @@ __metadata: languageName: node linkType: hard -"@types/escodegen@npm:^0.0.6": - version: 0.0.6 - resolution: "@types/escodegen@npm:0.0.6" - checksum: 7b25aeedd48dbef68345224082c6bc774845cbfc1d9b2ce91a477130fe7ccabf33da126c1d6d55e5dfd838db429a7c80890628a167e5aa55b6a4620974da38d3 - languageName: node - linkType: hard - "@types/estree@npm:1.0.6, @types/estree@npm:^1.0.0, @types/estree@npm:^1.0.6": version: 1.0.6 resolution: "@types/estree@npm:1.0.6" @@ -1575,44 +1496,6 @@ __metadata: languageName: node linkType: hard -"@types/estree@npm:^0.0.51": - version: 0.0.51 - resolution: "@types/estree@npm:0.0.51" - checksum: e56a3bcf759fd9185e992e7fdb3c6a5f81e8ff120e871641607581fb3728d16c811702a7d40fa5f869b7f7b4437ab6a87eb8d98ffafeee51e85bbe955932a189 - languageName: node - linkType: hard - -"@types/express-serve-static-core@npm:^4.17.33": - version: 4.19.6 - resolution: "@types/express-serve-static-core@npm:4.19.6" - dependencies: - "@types/node": "*" - "@types/qs": "*" - "@types/range-parser": "*" - "@types/send": "*" - checksum: b0576eddc2d25ccdf10e68ba09598b87a4d7b2ad04a81dc847cb39fe56beb0b6a5cc017b1e00aa0060cb3b38e700384ce96d291a116a0f1e54895564a104aae9 - languageName: node - linkType: hard - -"@types/express@npm:^4.17.21": - version: 4.17.21 - resolution: "@types/express@npm:4.17.21" - dependencies: - "@types/body-parser": "*" - "@types/express-serve-static-core": ^4.17.33 - "@types/qs": "*" - "@types/serve-static": "*" - checksum: fb238298630370a7392c7abdc80f495ae6c716723e114705d7e3fb67e3850b3859bbfd29391463a3fb8c0b32051847935933d99e719c0478710f8098ee7091c5 - languageName: node - linkType: hard - -"@types/find-cache-dir@npm:^3.2.1": - version: 3.2.1 - resolution: "@types/find-cache-dir@npm:3.2.1" - checksum: bf5c4e96da40247cd9e6327f54dfccda961a0fb2d70e3c71bd05def94de4c2e6fb310fe8ecb0f04ecf5dbc52214e184b55a2337b0f87250d4ae1e2e7d58321e4 - languageName: node - linkType: hard - "@types/glob@npm:^7.1.3": version: 7.2.0 resolution: "@types/glob@npm:7.2.0" @@ -1623,22 +1506,6 @@ __metadata: languageName: node linkType: hard -"@types/hast@npm:^3.0.0": - version: 3.0.4 - resolution: "@types/hast@npm:3.0.4" - dependencies: - "@types/unist": "*" - checksum: 7a973e8d16fcdf3936090fa2280f408fb2b6a4f13b42edeb5fbd614efe042b82eac68e298e556d50f6b4ad585a3a93c353e9c826feccdc77af59de8dd400d044 - languageName: node - linkType: hard - -"@types/http-errors@npm:*": - version: 2.0.4 - resolution: "@types/http-errors@npm:2.0.4" - checksum: 1f3d7c3b32c7524811a45690881736b3ef741bf9849ae03d32ad1ab7062608454b150a4e7f1351f83d26a418b2d65af9bdc06198f1c079d75578282884c4e8e3 - languageName: node - linkType: hard - "@types/json-schema@npm:^7.0.15, @types/json-schema@npm:^7.0.9": version: 7.0.15 resolution: "@types/json-schema@npm:7.0.15" @@ -1646,13 +1513,6 @@ __metadata: languageName: node linkType: hard -"@types/lodash@npm:^4.14.167": - version: 4.17.12 - resolution: "@types/lodash@npm:4.17.12" - checksum: 7b564e4114f09ce5ae31a2e9493592baf20bb498507f3705c5d91cf838c2298b4f6a06f2d6c8dc608fcac63e210a2b7b13388c7a5e220e15688f813521030127 - languageName: node - linkType: hard - "@types/mdx@npm:^2.0.0": version: 2.0.13 resolution: "@types/mdx@npm:2.0.13" @@ -1660,13 +1520,6 @@ __metadata: languageName: node linkType: hard -"@types/mime@npm:^1": - version: 1.3.5 - resolution: "@types/mime@npm:1.3.5" - checksum: e29a5f9c4776f5229d84e525b7cd7dd960b51c30a0fb9a028c0821790b82fca9f672dab56561e2acd9e8eed51d431bde52eafdfef30f643586c4162f1aecfc78 - languageName: node - linkType: hard - "@types/minimatch@npm:*": version: 5.1.2 resolution: "@types/minimatch@npm:5.1.2" @@ -1674,7 +1527,7 @@ __metadata: languageName: node linkType: hard -"@types/node@npm:*, @types/node@npm:^22.0.0": +"@types/node@npm:*": version: 22.7.7 resolution: "@types/node@npm:22.7.7" dependencies: @@ -1690,20 +1543,6 @@ __metadata: languageName: node linkType: hard -"@types/qs@npm:*": - version: 6.9.16 - resolution: "@types/qs@npm:6.9.16" - checksum: 2e8918150c12735630f7ee16b770c72949274938c30306025f68aaf977227f41fe0c698ed93db1099e04916d582ac5a1faf7e3c7061c8d885d9169f59a184b6c - languageName: node - linkType: hard - -"@types/range-parser@npm:*": - version: 1.2.7 - resolution: "@types/range-parser@npm:1.2.7" - checksum: 95640233b689dfbd85b8c6ee268812a732cf36d5affead89e806fe30da9a430767af8ef2cd661024fd97e19d61f3dec75af2df5e80ec3bea000019ab7028629a - languageName: node - linkType: hard - "@types/react-dom@npm:^18.0.0": version: 18.3.1 resolution: "@types/react-dom@npm:18.3.1" @@ -1713,7 +1552,7 @@ __metadata: languageName: node linkType: hard -"@types/react@npm:*, @types/react@npm:^16.8.0 || ^17.0.0 || ^18.0.0, @types/react@npm:^18.0.0": +"@types/react@npm:*, @types/react@npm:^18.0.0": version: 18.3.12 resolution: "@types/react@npm:18.3.12" dependencies: @@ -1737,34 +1576,6 @@ __metadata: languageName: node linkType: hard -"@types/send@npm:*": - version: 0.17.4 - resolution: "@types/send@npm:0.17.4" - dependencies: - "@types/mime": ^1 - "@types/node": "*" - checksum: cf4db48251bbb03cd6452b4de6e8e09e2d75390a92fd798eca4a803df06444adc94ed050246c94c7ed46fb97be1f63607f0e1f13c3ce83d71788b3e08640e5e0 - languageName: node - linkType: hard - -"@types/serve-static@npm:*": - version: 1.15.7 - resolution: "@types/serve-static@npm:1.15.7" - dependencies: - "@types/http-errors": "*" - "@types/node": "*" - "@types/send": "*" - checksum: bbbf00dbd84719da2250a462270dc68964006e8d62f41fe3741abd94504ba3688f420a49afb2b7478921a1544d3793183ffa097c5724167da777f4e0c7f1a7d6 - languageName: node - linkType: hard - -"@types/unist@npm:*, @types/unist@npm:^3.0.0": - version: 3.0.3 - resolution: "@types/unist@npm:3.0.3" - checksum: 96e6453da9e075aaef1dc22482463898198acdc1eeb99b465e65e34303e2ec1e3b1ed4469a9118275ec284dc98019f63c3f5d49422f0e4ac707e5ab90fb3b71a - languageName: node - linkType: hard - "@types/uuid@npm:^9.0.1": version: 9.0.8 resolution: "@types/uuid@npm:9.0.8" @@ -2009,13 +1820,6 @@ __metadata: languageName: node linkType: hard -"@ungap/structured-clone@npm:^1.0.0": - version: 1.2.0 - resolution: "@ungap/structured-clone@npm:1.2.0" - checksum: 4f656b7b4672f2ce6e272f2427d8b0824ed11546a601d8d5412b9d7704e83db38a8d9f402ecdf2b9063fc164af842ad0ec4a55819f621ed7e7ea4d1efcc74524 - languageName: node - linkType: hard - "@vitest/expect@npm:2.0.5": version: 2.0.5 resolution: "@vitest/expect@npm:2.0.5" @@ -2037,12 +1841,12 @@ __metadata: languageName: node linkType: hard -"@vitest/pretty-format@npm:2.1.3": - version: 2.1.3 - resolution: "@vitest/pretty-format@npm:2.1.3" +"@vitest/pretty-format@npm:2.1.4": + version: 2.1.4 + resolution: "@vitest/pretty-format@npm:2.1.4" dependencies: tinyrainbow: ^1.2.0 - checksum: ff4aa144a49c0ee579bfae940745b70a0ca3c504f52c23f1e8f5c0642824785232f844040d31b48eea71b5a80519809810359a75d29186ab40341174c50a4a0d + checksum: 4d6c799d9b9418ebfce77df518a5ea8717051bdb5eecce63d6b7009634d4843630c0bc424d0f405bd12b8f404e4bf09b6f208a331568de9b6b9395322221e41c languageName: node linkType: hard @@ -2067,14 +1871,14 @@ __metadata: languageName: node linkType: hard -"@vitest/utils@npm:^2.0.5": - version: 2.1.3 - resolution: "@vitest/utils@npm:2.1.3" +"@vitest/utils@npm:^2.1.1": + version: 2.1.4 + resolution: "@vitest/utils@npm:2.1.4" dependencies: - "@vitest/pretty-format": 2.1.3 - loupe: ^3.1.1 + "@vitest/pretty-format": 2.1.4 + loupe: ^3.1.2 tinyrainbow: ^1.2.0 - checksum: 0c1e262600bc329fab43bb19d575326a6d38175c2bdc345bc5326b81cf34303f22a1b67a0197dc6a935c3019e2f21c4da52a49c609967bea9cb4790a44a347ce + checksum: f7d9a4e8c411b9e80e7df46a725933977c9a330b133cc17e39e6f069d31832a849c070ef18b96abe2f07847f1860f36c8dd081eff2dad62b2874592d68e7dc43 languageName: node linkType: hard @@ -2085,17 +1889,7 @@ __metadata: languageName: node linkType: hard -"accepts@npm:~1.3.8": - version: 1.3.8 - resolution: "accepts@npm:1.3.8" - dependencies: - mime-types: ~2.1.34 - negotiator: 0.6.3 - checksum: 50c43d32e7b50285ebe84b613ee4a3aa426715a7d131b65b786e2ead0fd76b6b60091b9916d3478a75f11f162628a2139991b6c03ab3f1d9ab7c86075dc8eab4 - languageName: node - linkType: hard - -"acorn-jsx@npm:^5.3.1, acorn-jsx@npm:^5.3.2": +"acorn-jsx@npm:^5.3.2": version: 5.3.2 resolution: "acorn-jsx@npm:5.3.2" peerDependencies: @@ -2104,22 +1898,6 @@ __metadata: languageName: node linkType: hard -"acorn-walk@npm:^7.2.0": - version: 7.2.0 - resolution: "acorn-walk@npm:7.2.0" - checksum: 9252158a79b9d92f1bc0dd6acc0fcfb87a67339e84bcc301bb33d6078936d27e35d606b4d35626d2962cd43c256d6f27717e70cbe15c04fff999ab0b2260b21f - languageName: node - linkType: hard - -"acorn@npm:^7.4.1": - version: 7.4.1 - resolution: "acorn@npm:7.4.1" - bin: - acorn: bin/acorn - checksum: 1860f23c2107c910c6177b7b7be71be350db9e1080d814493fae143ae37605189504152d1ba8743ba3178d0b37269ce1ffc42b101547fdc1827078f82671e407 - languageName: node - linkType: hard - "acorn@npm:^8.12.1, acorn@npm:^8.14.0": version: 8.14.0 resolution: "acorn@npm:8.14.0" @@ -2229,13 +2007,6 @@ __metadata: languageName: node linkType: hard -"array-flatten@npm:1.1.1": - version: 1.1.1 - resolution: "array-flatten@npm:1.1.1" - checksum: a9925bf3512d9dce202112965de90c222cd59a4fbfce68a0951d25d965cf44642931f40aac72309c41f12df19afa010ecadceb07cfff9ccc1621e99d89ab5f3b - languageName: node - linkType: hard - "array-union@npm:^2.1.0": version: 2.1.0 resolution: "array-union@npm:2.1.0" @@ -2316,26 +2087,6 @@ __metadata: languageName: node linkType: hard -"body-parser@npm:1.20.3": - version: 1.20.3 - resolution: "body-parser@npm:1.20.3" - dependencies: - bytes: 3.1.2 - content-type: ~1.0.5 - debug: 2.6.9 - depd: 2.0.0 - destroy: 1.2.0 - http-errors: 2.0.0 - iconv-lite: 0.4.24 - on-finished: 2.4.1 - qs: 6.13.0 - raw-body: 2.5.2 - type-is: ~1.6.18 - unpipe: 1.0.0 - checksum: 1a35c59a6be8d852b00946330141c4f142c6af0f970faa87f10ad74f1ee7118078056706a05ae3093c54dabca9cd3770fa62a170a85801da1a4324f04381167d - languageName: node - linkType: hard - "brace-expansion@npm:^1.1.7": version: 1.1.11 resolution: "brace-expansion@npm:1.1.11" @@ -2385,13 +2136,6 @@ __metadata: languageName: node linkType: hard -"bytes@npm:3.1.2": - version: 3.1.2 - resolution: "bytes@npm:3.1.2" - checksum: e4bcd3948d289c5127591fbedf10c0b639ccbf00243504e4e127374a15c3bc8eed0d28d4aaab08ff6f1cf2abc0cce6ba3085ed32f4f90e82a5683ce0014e1b6e - languageName: node - linkType: hard - "cacache@npm:^18.0.0": version: 18.0.4 resolution: "cacache@npm:18.0.4" @@ -2555,13 +2299,6 @@ __metadata: languageName: node linkType: hard -"commondir@npm:^1.0.1": - version: 1.0.1 - resolution: "commondir@npm:1.0.1" - checksum: 59715f2fc456a73f68826285718503340b9f0dd89bfffc42749906c5cf3d4277ef11ef1cca0350d0e79204f00f1f6d83851ececc9095dc88512a697ac0b9bdcb - languageName: node - linkType: hard - "concat-map@npm:0.0.1": version: 0.0.1 resolution: "concat-map@npm:0.0.1" @@ -2569,22 +2306,6 @@ __metadata: languageName: node linkType: hard -"content-disposition@npm:0.5.4": - version: 0.5.4 - resolution: "content-disposition@npm:0.5.4" - dependencies: - safe-buffer: 5.2.1 - checksum: afb9d545e296a5171d7574fcad634b2fdf698875f4006a9dd04a3e1333880c5c0c98d47b560d01216fb6505a54a2ba6a843ee3a02ec86d7e911e8315255f56c3 - languageName: node - linkType: hard - -"content-type@npm:~1.0.4, content-type@npm:~1.0.5": - version: 1.0.5 - resolution: "content-type@npm:1.0.5" - checksum: 566271e0a251642254cde0f845f9dd4f9856e52d988f4eb0d0dcffbb7a1f8ec98de7a5215fc628f3bce30fe2fb6fd2bc064b562d721658c59b544e2d34ea2766 - languageName: node - linkType: hard - "convert-source-map@npm:^2.0.0": version: 2.0.0 resolution: "convert-source-map@npm:2.0.0" @@ -2592,20 +2313,6 @@ __metadata: languageName: node linkType: hard -"cookie-signature@npm:1.0.6": - version: 1.0.6 - resolution: "cookie-signature@npm:1.0.6" - checksum: f4e1b0a98a27a0e6e66fd7ea4e4e9d8e038f624058371bf4499cfcd8f3980be9a121486995202ba3fca74fbed93a407d6d54d43a43f96fd28d0bd7a06761591a - languageName: node - linkType: hard - -"cookie@npm:0.7.1": - version: 0.7.1 - resolution: "cookie@npm:0.7.1" - checksum: cec5e425549b3650eb5c3498a9ba3cde0b9cd419e3b36e4b92739d30b4d89e0b678b98c1ddc209ce7cf958cd3215671fd6ac47aec21f10c2a0cc68abd399d8a7 - languageName: node - linkType: hard - "cross-spawn@npm:^7.0.0, cross-spawn@npm:^7.0.2": version: 7.0.3 resolution: "cross-spawn@npm:7.0.3" @@ -2631,15 +2338,6 @@ __metadata: languageName: node linkType: hard -"debug@npm:2.6.9": - version: 2.6.9 - resolution: "debug@npm:2.6.9" - dependencies: - ms: 2.0.0 - checksum: d2f51589ca66df60bf36e1fa6e4386b318c3f1e06772280eea5b1ae9fd3d05e9c2b7fd8a7d862457d00853c75b00451aa2d7459b924629ee385287a650f58fe6 - languageName: node - linkType: hard - "debug@npm:4, debug@npm:^4.1.0, debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.4": version: 4.3.7 resolution: "debug@npm:4.3.7" @@ -2684,13 +2382,6 @@ __metadata: languageName: node linkType: hard -"depd@npm:2.0.0": - version: 2.0.0 - resolution: "depd@npm:2.0.0" - checksum: abbe19c768c97ee2eed6282d8ce3031126662252c58d711f646921c9623f9052e3e1906443066beec1095832f534e57c523b7333f8e7e0d93051ab6baef5ab3a - languageName: node - linkType: hard - "dequal@npm:^2.0.2, dequal@npm:^2.0.3": version: 2.0.3 resolution: "dequal@npm:2.0.3" @@ -2698,13 +2389,6 @@ __metadata: languageName: node linkType: hard -"destroy@npm:1.2.0": - version: 1.2.0 - resolution: "destroy@npm:1.2.0" - checksum: 0acb300b7478a08b92d810ab229d5afe0d2f4399272045ab22affa0d99dbaf12637659411530a6fcd597a9bdac718fc94373a61a95b4651bbc7b83684a565e38 - languageName: node - linkType: hard - "dir-glob@npm:^3.0.1": version: 3.0.1 resolution: "dir-glob@npm:3.0.1" @@ -2744,13 +2428,6 @@ __metadata: languageName: node linkType: hard -"ee-first@npm:1.1.1": - version: 1.1.1 - resolution: "ee-first@npm:1.1.1" - checksum: 1b4cac778d64ce3b582a7e26b218afe07e207a0f9bfe13cc7395a6d307849cfe361e65033c3251e00c27dd060cab43014c2d6b2647676135e18b77d2d05b3f4f - languageName: node - linkType: hard - "electron-to-chromium@npm:^1.5.28": version: 1.5.41 resolution: "electron-to-chromium@npm:1.5.41" @@ -2772,20 +2449,6 @@ __metadata: languageName: node linkType: hard -"encodeurl@npm:~1.0.2": - version: 1.0.2 - resolution: "encodeurl@npm:1.0.2" - checksum: e50e3d508cdd9c4565ba72d2012e65038e5d71bdc9198cb125beb6237b5b1ade6c0d343998da9e170fb2eae52c1bed37d4d6d98a46ea423a0cddbed5ac3f780c - languageName: node - linkType: hard - -"encodeurl@npm:~2.0.0": - version: 2.0.0 - resolution: "encodeurl@npm:2.0.0" - checksum: abf5cd51b78082cf8af7be6785813c33b6df2068ce5191a40ca8b1afe6a86f9230af9a9ce694a5ce4665955e5c1120871826df9c128a642e09c58d592e2807fe - languageName: node - linkType: hard - "encoding@npm:^0.1.13": version: 0.1.13 resolution: "encoding@npm:0.1.13" @@ -2825,10 +2488,15 @@ __metadata: languageName: node linkType: hard -"es-module-lexer@npm:^1.5.0": - version: 1.5.4 - resolution: "es-module-lexer@npm:1.5.4" - checksum: a0cf04fb92d052647ac7d818d1913b98d3d3d0f5b9d88f0eafb993436e4c3e2c958599db68839d57f2dfa281fdf0f60e18d448eb78fc292c33c0f25635b6854f +"es-toolkit@npm:^1.22.0": + version: 1.26.1 + resolution: "es-toolkit@npm:1.26.1" + dependenciesMeta: + "@trivago/prettier-plugin-sort-imports@4.3.0": + unplugged: true + prettier-plugin-sort-re-exports@0.0.1: + unplugged: true + checksum: 3b70659f66c9fab95b62f6df13b1a57ff3320108a8feb2935baf3695b3d08d6c3b28694e7e6f4cefb3b84f817a5bc45e6ed147b63b1993315007d98c35c2c96f languageName: node linkType: hard @@ -2843,34 +2511,34 @@ __metadata: languageName: node linkType: hard -"esbuild@npm:^0.18.0 || ^0.19.0 || ^0.20.0 || ^0.21.0 || ^0.22.0 || ^0.23.0": - version: 0.23.1 - resolution: "esbuild@npm:0.23.1" +"esbuild@npm:^0.18.0 || ^0.19.0 || ^0.20.0 || ^0.21.0 || ^0.22.0 || ^0.23.0 || ^0.24.0": + version: 0.24.0 + resolution: "esbuild@npm:0.24.0" dependencies: - "@esbuild/aix-ppc64": 0.23.1 - "@esbuild/android-arm": 0.23.1 - "@esbuild/android-arm64": 0.23.1 - "@esbuild/android-x64": 0.23.1 - "@esbuild/darwin-arm64": 0.23.1 - "@esbuild/darwin-x64": 0.23.1 - "@esbuild/freebsd-arm64": 0.23.1 - "@esbuild/freebsd-x64": 0.23.1 - "@esbuild/linux-arm": 0.23.1 - "@esbuild/linux-arm64": 0.23.1 - "@esbuild/linux-ia32": 0.23.1 - "@esbuild/linux-loong64": 0.23.1 - "@esbuild/linux-mips64el": 0.23.1 - "@esbuild/linux-ppc64": 0.23.1 - "@esbuild/linux-riscv64": 0.23.1 - "@esbuild/linux-s390x": 0.23.1 - "@esbuild/linux-x64": 0.23.1 - "@esbuild/netbsd-x64": 0.23.1 - "@esbuild/openbsd-arm64": 0.23.1 - "@esbuild/openbsd-x64": 0.23.1 - "@esbuild/sunos-x64": 0.23.1 - "@esbuild/win32-arm64": 0.23.1 - "@esbuild/win32-ia32": 0.23.1 - "@esbuild/win32-x64": 0.23.1 + "@esbuild/aix-ppc64": 0.24.0 + "@esbuild/android-arm": 0.24.0 + "@esbuild/android-arm64": 0.24.0 + "@esbuild/android-x64": 0.24.0 + "@esbuild/darwin-arm64": 0.24.0 + "@esbuild/darwin-x64": 0.24.0 + "@esbuild/freebsd-arm64": 0.24.0 + "@esbuild/freebsd-x64": 0.24.0 + "@esbuild/linux-arm": 0.24.0 + "@esbuild/linux-arm64": 0.24.0 + "@esbuild/linux-ia32": 0.24.0 + "@esbuild/linux-loong64": 0.24.0 + "@esbuild/linux-mips64el": 0.24.0 + "@esbuild/linux-ppc64": 0.24.0 + "@esbuild/linux-riscv64": 0.24.0 + "@esbuild/linux-s390x": 0.24.0 + "@esbuild/linux-x64": 0.24.0 + "@esbuild/netbsd-x64": 0.24.0 + "@esbuild/openbsd-arm64": 0.24.0 + "@esbuild/openbsd-x64": 0.24.0 + "@esbuild/sunos-x64": 0.24.0 + "@esbuild/win32-arm64": 0.24.0 + "@esbuild/win32-ia32": 0.24.0 + "@esbuild/win32-x64": 0.24.0 dependenciesMeta: "@esbuild/aix-ppc64": optional: true @@ -2922,7 +2590,7 @@ __metadata: optional: true bin: esbuild: bin/esbuild - checksum: 0413c3b9257327fb598427688b7186ea335bf1693746fe5713cc93c95854d6388b8ed4ad643fddf5b5ace093f7dcd9038dd58e087bf2da1f04dfb4c5571660af + checksum: dd386d92a05c7eb03078480522cdd8b40c434777b5f08487c27971d30933ecaae3f08bd221958dd8f9c66214915cdc85f844283ca9bdbf8ee703d889ae526edd languageName: node linkType: hard @@ -3013,13 +2681,6 @@ __metadata: languageName: node linkType: hard -"escape-html@npm:~1.0.3": - version: 1.0.3 - resolution: "escape-html@npm:1.0.3" - checksum: 6213ca9ae00d0ab8bccb6d8d4e0a98e76237b2410302cf7df70aaa6591d509a2a37ce8998008cbecae8fc8ffaadf3fb0229535e6a145f3ce0b211d060decbb24 - languageName: node - linkType: hard - "escape-string-regexp@npm:^1.0.5": version: 1.0.5 resolution: "escape-string-regexp@npm:1.0.5" @@ -3034,24 +2695,6 @@ __metadata: languageName: node linkType: hard -"escodegen@npm:^2.1.0": - version: 2.1.0 - resolution: "escodegen@npm:2.1.0" - dependencies: - esprima: ^4.0.1 - estraverse: ^5.2.0 - esutils: ^2.0.2 - source-map: ~0.6.1 - dependenciesMeta: - source-map: - optional: true - bin: - escodegen: bin/escodegen.js - esgenerate: bin/esgenerate.js - checksum: 096696407e161305cd05aebb95134ad176708bc5cb13d0dcc89a5fcbb959b8ed757e7f2591a5f8036f8f4952d4a724de0df14cd419e29212729fa6df5ce16bf6 - languageName: node - linkType: hard - "eslint-plugin-storybook@npm:^0.9.0": version: 0.9.0 resolution: "eslint-plugin-storybook@npm:0.9.0" @@ -3161,7 +2804,7 @@ __metadata: languageName: node linkType: hard -"esprima@npm:^4.0.1, esprima@npm:~4.0.0": +"esprima@npm:~4.0.0": version: 4.0.1 resolution: "esprima@npm:4.0.1" bin: @@ -3226,13 +2869,6 @@ __metadata: languageName: node linkType: hard -"etag@npm:~1.8.1": - version: 1.8.1 - resolution: "etag@npm:1.8.1" - checksum: 571aeb3dbe0f2bbd4e4fadbdb44f325fc75335cd5f6f6b6a091e6a06a9f25ed5392f0863c5442acb0646787446e816f13cbfc6edce5b07658541dff573cab1ff - languageName: node - linkType: hard - "exponential-backoff@npm:^3.1.1": version: 3.1.1 resolution: "exponential-backoff@npm:3.1.1" @@ -3240,45 +2876,6 @@ __metadata: languageName: node linkType: hard -"express@npm:^4.19.2": - version: 4.21.1 - resolution: "express@npm:4.21.1" - dependencies: - accepts: ~1.3.8 - array-flatten: 1.1.1 - body-parser: 1.20.3 - content-disposition: 0.5.4 - content-type: ~1.0.4 - cookie: 0.7.1 - cookie-signature: 1.0.6 - debug: 2.6.9 - depd: 2.0.0 - encodeurl: ~2.0.0 - escape-html: ~1.0.3 - etag: ~1.8.1 - finalhandler: 1.3.1 - fresh: 0.5.2 - http-errors: 2.0.0 - merge-descriptors: 1.0.3 - methods: ~1.1.2 - on-finished: 2.4.1 - parseurl: ~1.3.3 - path-to-regexp: 0.1.10 - proxy-addr: ~2.0.7 - qs: 6.13.0 - range-parser: ~1.2.1 - safe-buffer: 5.2.1 - send: 0.19.0 - serve-static: 1.16.2 - setprototypeof: 1.2.0 - statuses: 2.0.1 - type-is: ~1.6.18 - utils-merge: 1.0.1 - vary: ~1.1.2 - checksum: 5ac2b26d8aeddda5564fc0907227d29c100f90c0ead2ead9d474dc5108e8fb306c2de2083c4e3ba326e0906466f2b73417dbac16961f4075ff9f03785fd940fe - languageName: node - linkType: hard - "fast-deep-equal@npm:^3.1.1, fast-deep-equal@npm:^3.1.3": version: 3.1.3 resolution: "fast-deep-equal@npm:3.1.3" @@ -3347,42 +2944,6 @@ __metadata: languageName: node linkType: hard -"finalhandler@npm:1.3.1": - version: 1.3.1 - resolution: "finalhandler@npm:1.3.1" - dependencies: - debug: 2.6.9 - encodeurl: ~2.0.0 - escape-html: ~1.0.3 - on-finished: 2.4.1 - parseurl: ~1.3.3 - statuses: 2.0.1 - unpipe: ~1.0.0 - checksum: a8c58cd97c9cd47679a870f6833a7b417043f5a288cd6af6d0f49b476c874a506100303a128b6d3b654c3d74fa4ff2ffed68a48a27e8630cda5c918f2977dcf4 - languageName: node - linkType: hard - -"find-cache-dir@npm:^3.0.0": - version: 3.3.2 - resolution: "find-cache-dir@npm:3.3.2" - dependencies: - commondir: ^1.0.1 - make-dir: ^3.0.2 - pkg-dir: ^4.1.0 - checksum: 1e61c2e64f5c0b1c535bd85939ae73b0e5773142713273818cc0b393ee3555fb0fd44e1a5b161b8b6c3e03e98c2fcc9c227d784850a13a90a8ab576869576817 - languageName: node - linkType: hard - -"find-up@npm:^4.0.0": - version: 4.1.0 - resolution: "find-up@npm:4.1.0" - dependencies: - locate-path: ^5.0.0 - path-exists: ^4.0.0 - checksum: 4c172680e8f8c1f78839486e14a43ef82e9decd0e74145f40707cc42e7420506d5ec92d9a11c22bd2c48fb0c384ea05dd30e10dd152fefeec6f2f75282a8b844 - languageName: node - linkType: hard - "find-up@npm:^5.0.0": version: 5.0.0 resolution: "find-up@npm:5.0.0" @@ -3429,31 +2990,6 @@ __metadata: languageName: node linkType: hard -"forwarded@npm:0.2.0": - version: 0.2.0 - resolution: "forwarded@npm:0.2.0" - checksum: fd27e2394d8887ebd16a66ffc889dc983fbbd797d5d3f01087c020283c0f019a7d05ee85669383d8e0d216b116d720fc0cef2f6e9b7eb9f4c90c6e0bc7fd28e6 - languageName: node - linkType: hard - -"fresh@npm:0.5.2": - version: 0.5.2 - resolution: "fresh@npm:0.5.2" - checksum: 13ea8b08f91e669a64e3ba3a20eb79d7ca5379a81f1ff7f4310d54e2320645503cc0c78daedc93dfb6191287295f6479544a649c64d8e41a1c0fb0c221552346 - languageName: node - linkType: hard - -"fs-extra@npm:^11.1.0": - version: 11.2.0 - resolution: "fs-extra@npm:11.2.0" - dependencies: - graceful-fs: ^4.2.0 - jsonfile: ^6.0.1 - universalify: ^2.0.0 - checksum: b12e42fa40ba47104202f57b8480dd098aa931c2724565e5e70779ab87605665594e76ee5fb00545f772ab9ace167fe06d2ab009c416dc8c842c5ae6df7aa7e8 - languageName: node - linkType: hard - "fs-minipass@npm:^2.0.0": version: 2.1.0 resolution: "fs-minipass@npm:2.1.0" @@ -3525,13 +3061,6 @@ __metadata: languageName: node linkType: hard -"github-slugger@npm:^2.0.0": - version: 2.0.0 - resolution: "github-slugger@npm:2.0.0" - checksum: 250375cde2058f21454872c2c79f72c4637340c30c51ff158ca4ec71cbc478f33d54477d787a662f9207aeb095a2060f155bc01f15329ba8a5fb6698e0fc81f8 - languageName: node - linkType: hard - "glob-parent@npm:^5.1.2": version: 5.1.2 resolution: "glob-parent@npm:5.1.2" @@ -3635,7 +3164,7 @@ __metadata: languageName: node linkType: hard -"graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.0, graceful-fs@npm:^4.2.6": +"graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.6": version: 4.2.11 resolution: "graceful-fs@npm:4.2.11" checksum: ac85f94da92d8eb6b7f5a8b20ce65e43d66761c55ce85ac96df6865308390da45a8d3f0296dd3a663de65d30ba497bd46c696cc1e248c72b13d6d567138a4fc7 @@ -3704,40 +3233,6 @@ __metadata: languageName: node linkType: hard -"hast-util-heading-rank@npm:^3.0.0": - version: 3.0.0 - resolution: "hast-util-heading-rank@npm:3.0.0" - dependencies: - "@types/hast": ^3.0.0 - checksum: e5ce4ec9e8017b24ab72702fa0dd401ec6eaf32574120d71c2aa4e8e0f43829dba2e291f49d305a47e8d65b82a9c5adad7985385dc5bc8370f8cec7c8f9313d3 - languageName: node - linkType: hard - -"hast-util-is-element@npm:^3.0.0": - version: 3.0.0 - resolution: "hast-util-is-element@npm:3.0.0" - dependencies: - "@types/hast": ^3.0.0 - checksum: 82569a420eda5877c52fdbbdbe26675f012c02d70813dfd19acffdee328e42e4bd0b7ae34454cfcbcb932b2bedbd7ddc119f943a0cfb234120f9456d6c0c4331 - languageName: node - linkType: hard - -"hast-util-to-string@npm:^3.0.0": - version: 3.0.1 - resolution: "hast-util-to-string@npm:3.0.1" - dependencies: - "@types/hast": ^3.0.0 - checksum: 556f3cb118fc09e3a6cd149ee4b4056a49028a3858a7d37617e4c6d2c9c5e2336d5fb87eb5f41211b1977a964c705aa70e419464c12debc1959ed03fdad5bed6 - languageName: node - linkType: hard - -"html-tags@npm:^3.1.0": - version: 3.3.1 - resolution: "html-tags@npm:3.3.1" - checksum: b4ef1d5a76b678e43cce46e3783d563607b1d550cab30b4f511211564574770aa8c658a400b100e588bc60b8234e59b35ff72c7851cc28f3b5403b13a2c6cbce - languageName: node - linkType: hard - "http-cache-semantics@npm:^4.1.1": version: 4.1.1 resolution: "http-cache-semantics@npm:4.1.1" @@ -3745,19 +3240,6 @@ __metadata: languageName: node linkType: hard -"http-errors@npm:2.0.0": - version: 2.0.0 - resolution: "http-errors@npm:2.0.0" - dependencies: - depd: 2.0.0 - inherits: 2.0.4 - setprototypeof: 1.2.0 - statuses: 2.0.1 - toidentifier: 1.0.1 - checksum: 9b0a3782665c52ce9dc658a0d1560bcb0214ba5699e4ea15aefb2a496e2ca83db03ebc42e1cce4ac1f413e4e0d2d736a3fd755772c556a9a06853ba2a0b7d920 - languageName: node - linkType: hard - "http-proxy-agent@npm:^7.0.0": version: 7.0.2 resolution: "http-proxy-agent@npm:7.0.2" @@ -3778,15 +3260,6 @@ __metadata: languageName: node linkType: hard -"iconv-lite@npm:0.4.24": - version: 0.4.24 - resolution: "iconv-lite@npm:0.4.24" - dependencies: - safer-buffer: ">= 2.1.2 < 3" - checksum: bd9f120f5a5b306f0bc0b9ae1edeb1577161503f5f8252a20f1a9e56ef8775c9959fd01c55f2d3a39d9a8abaf3e30c1abeb1895f367dcbbe0a8fd1c9ca01c4f6 - languageName: node - linkType: hard - "iconv-lite@npm:^0.6.2": version: 0.6.3 resolution: "iconv-lite@npm:0.6.3" @@ -3837,7 +3310,7 @@ __metadata: languageName: node linkType: hard -"inherits@npm:2, inherits@npm:2.0.4, inherits@npm:^2.0.3": +"inherits@npm:2, inherits@npm:^2.0.3": version: 2.0.4 resolution: "inherits@npm:2.0.4" checksum: 4a48a733847879d6cf6691860a6b1e3f0f4754176e4d71494c41f3475553768b10f84b5ce1d40fbd0e34e6bfbb864ee35858ad4dd2cf31e02fc4a154b724d7f1 @@ -3854,20 +3327,6 @@ __metadata: languageName: node linkType: hard -"ipaddr.js@npm:1.9.1": - version: 1.9.1 - resolution: "ipaddr.js@npm:1.9.1" - checksum: f88d3825981486f5a1942414c8d77dd6674dd71c065adcfa46f578d677edcb99fda25af42675cb59db492fdf427b34a5abfcde3982da11a8fd83a500b41cfe77 - languageName: node - linkType: hard - -"is-absolute-url@npm:^4.0.0": - version: 4.0.1 - resolution: "is-absolute-url@npm:4.0.1" - checksum: de172a718439982a54477fdae55f21be69ec0e6a4b205db5484975d2f4ee749851fd46c28f3790dfc51a274c2ed1d0f8457b6d1fff02ab829069fd9cc761e48c - languageName: node - linkType: hard - "is-arguments@npm:^1.0.4": version: 1.1.1 resolution: "is-arguments@npm:1.1.1" @@ -3949,13 +3408,6 @@ __metadata: languageName: node linkType: hard -"is-plain-object@npm:5.0.0": - version: 5.0.0 - resolution: "is-plain-object@npm:5.0.0" - checksum: e32d27061eef62c0847d303125440a38660517e586f2f3db7c9d179ae5b6674ab0f469d519b2e25c147a1a3bc87156d0d5f4d8821e0ce4a9ee7fe1fcf11ce45c - languageName: node - linkType: hard - "is-typed-array@npm:^1.1.3": version: 1.1.13 resolution: "is-typed-array@npm:1.1.13" @@ -4072,7 +3524,7 @@ __metadata: languageName: node linkType: hard -"jsonfile@npm:^6.0.1, jsonfile@npm:^6.1.0": +"jsonfile@npm:^6.1.0": version: 6.1.0 resolution: "jsonfile@npm:6.1.0" dependencies: @@ -4104,15 +3556,6 @@ __metadata: languageName: node linkType: hard -"locate-path@npm:^5.0.0": - version: 5.0.0 - resolution: "locate-path@npm:5.0.0" - dependencies: - p-locate: ^4.1.0 - checksum: 83e51725e67517287d73e1ded92b28602e3ae5580b301fe54bfb76c0c723e3f285b19252e375712316774cf52006cb236aed5704692c32db0d5d089b69696e30 - languageName: node - linkType: hard - "locate-path@npm:^6.0.0": version: 6.0.0 resolution: "locate-path@npm:6.0.0" @@ -4136,7 +3579,7 @@ __metadata: languageName: node linkType: hard -"loose-envify@npm:^1.1.0, loose-envify@npm:^1.4.0": +"loose-envify@npm:^1.1.0": version: 1.4.0 resolution: "loose-envify@npm:1.4.0" dependencies: @@ -4147,7 +3590,7 @@ __metadata: languageName: node linkType: hard -"loupe@npm:^3.1.0, loupe@npm:^3.1.1": +"loupe@npm:^3.1.0, loupe@npm:^3.1.1, loupe@npm:^3.1.2": version: 3.1.2 resolution: "loupe@npm:3.1.2" checksum: 4a75bbe8877a1ced3603e08b1095cd6f4c987c50fe63719fdc3009029560f91e07a915e7f6eff1322bb62bfb2a2beeef06b13ccb3c12f81bda9f3674434dcab9 @@ -4197,15 +3640,6 @@ __metadata: languageName: node linkType: hard -"make-dir@npm:^3.0.2": - version: 3.1.0 - resolution: "make-dir@npm:3.1.0" - dependencies: - semver: ^6.0.0 - checksum: 484200020ab5a1fdf12f393fe5f385fc8e4378824c940fba1729dcd198ae4ff24867bc7a5646331e50cead8abff5d9270c456314386e629acec6dff4b8016b78 - languageName: node - linkType: hard - "make-fetch-happen@npm:^13.0.0": version: 13.0.1 resolution: "make-fetch-happen@npm:13.0.1" @@ -4233,22 +3667,6 @@ __metadata: languageName: node linkType: hard -"markdown-to-jsx@npm:^7.4.5": - version: 7.5.0 - resolution: "markdown-to-jsx@npm:7.5.0" - peerDependencies: - react: ">= 0.14.0" - checksum: c9c6f1bfad5f2d9b1d3476eb0313ae3dffd0a9f14011c74efdd7c664fd32ee1842ef48abb16a496046f90361af49aa80a827e9d9c0bc04824a1986fdeb4d1852 - languageName: node - linkType: hard - -"media-typer@npm:0.3.0": - version: 0.3.0 - resolution: "media-typer@npm:0.3.0" - checksum: af1b38516c28ec95d6b0826f6c8f276c58aec391f76be42aa07646b4e39d317723e869700933ca6995b056db4b09a78c92d5440dc23657e6764be5d28874bba1 - languageName: node - linkType: hard - "memoizerific@npm:^1.11.3": version: 1.11.3 resolution: "memoizerific@npm:1.11.3" @@ -4258,13 +3676,6 @@ __metadata: languageName: node linkType: hard -"merge-descriptors@npm:1.0.3": - version: 1.0.3 - resolution: "merge-descriptors@npm:1.0.3" - checksum: 52117adbe0313d5defa771c9993fe081e2d2df9b840597e966aadafde04ae8d0e3da46bac7ca4efc37d4d2b839436582659cd49c6a43eacb3fe3050896a105d1 - languageName: node - linkType: hard - "merge2@npm:^1.3.0, merge2@npm:^1.4.1": version: 1.4.1 resolution: "merge2@npm:1.4.1" @@ -4272,13 +3683,6 @@ __metadata: languageName: node linkType: hard -"methods@npm:~1.1.2": - version: 1.1.2 - resolution: "methods@npm:1.1.2" - checksum: 0917ff4041fa8e2f2fda5425a955fe16ca411591fbd123c0d722fcf02b73971ed6f764d85f0a6f547ce49ee0221ce2c19a5fa692157931cecb422984f1dcd13a - languageName: node - linkType: hard - "micromatch@npm:^4.0.4": version: 4.0.8 resolution: "micromatch@npm:4.0.8" @@ -4289,31 +3693,6 @@ __metadata: languageName: node linkType: hard -"mime-db@npm:1.52.0": - version: 1.52.0 - resolution: "mime-db@npm:1.52.0" - checksum: 0d99a03585f8b39d68182803b12ac601d9c01abfa28ec56204fa330bc9f3d1c5e14beb049bafadb3dbdf646dfb94b87e24d4ec7b31b7279ef906a8ea9b6a513f - languageName: node - linkType: hard - -"mime-types@npm:~2.1.24, mime-types@npm:~2.1.34": - version: 2.1.35 - resolution: "mime-types@npm:2.1.35" - dependencies: - mime-db: 1.52.0 - checksum: 89a5b7f1def9f3af5dad6496c5ed50191ae4331cc5389d7c521c8ad28d5fdad2d06fd81baf38fed813dc4e46bb55c8145bb0ff406330818c9cf712fb2e9b3836 - languageName: node - linkType: hard - -"mime@npm:1.6.0": - version: 1.6.0 - resolution: "mime@npm:1.6.0" - bin: - mime: cli.js - checksum: fef25e39263e6d207580bdc629f8872a3f9772c923c7f8c7e793175cee22777bbe8bba95e5d509a40aaa292d8974514ce634ae35769faa45f22d17edda5e8557 - 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" @@ -4439,14 +3818,7 @@ __metadata: languageName: node linkType: hard -"ms@npm:2.0.0": - version: 2.0.0 - resolution: "ms@npm:2.0.0" - checksum: 0e6a22b8b746d2e0b65a430519934fefd41b6db0682e3477c10f60c76e947c4c0ad06f63ffdf1d78d335f83edee8c0aa928aa66a36c7cd95b69b26f468d527f4 - languageName: node - linkType: hard - -"ms@npm:2.1.3, ms@npm:^2.1.3": +"ms@npm:^2.1.3": version: 2.1.3 resolution: "ms@npm:2.1.3" checksum: aa92de608021b242401676e35cfa5aa42dd70cbdc082b916da7fb925c542173e36bce97ea3e804923fe92c0ad991434e4a38327e15a1b5b5f945d66df615ae6d @@ -4476,13 +3848,6 @@ __metadata: languageName: node linkType: hard -"negotiator@npm:0.6.3": - version: 0.6.3 - resolution: "negotiator@npm:0.6.3" - checksum: b8ffeb1e262eff7968fc90a2b6767b04cfd9842582a9d0ece0af7049537266e7b2506dfb1d107a32f06dd849ab2aea834d5830f7f4d0e5cb7d36e1ae55d021d9 - languageName: node - linkType: hard - "negotiator@npm:^0.6.3": version: 0.6.4 resolution: "negotiator@npm:0.6.4" @@ -4528,29 +3893,6 @@ __metadata: languageName: node linkType: hard -"object-assign@npm:^4.1.1": - version: 4.1.1 - resolution: "object-assign@npm:4.1.1" - checksum: fcc6e4ea8c7fe48abfbb552578b1c53e0d194086e2e6bbbf59e0a536381a292f39943c6e9628af05b5528aa5e3318bb30d6b2e53cadaf5b8fe9e12c4b69af23f - languageName: node - linkType: hard - -"object-inspect@npm:^1.13.1": - version: 1.13.2 - resolution: "object-inspect@npm:1.13.2" - checksum: 9f850b3c045db60e0e97746e809ee4090d6ce62195af17dd1e9438ac761394a7d8ec4f7906559aea5424eaf61e35d3e53feded2ccd5f62fcc7d9670d3c8eb353 - languageName: node - linkType: hard - -"on-finished@npm:2.4.1": - version: 2.4.1 - resolution: "on-finished@npm:2.4.1" - dependencies: - ee-first: 1.1.1 - checksum: d20929a25e7f0bb62f937a425b5edeb4e4cde0540d77ba146ec9357f00b0d497cdb3b9b05b9c8e46222407d1548d08166bff69cc56dfa55ba0e4469228920ff0 - languageName: node - linkType: hard - "once@npm:^1.3.0": version: 1.4.0 resolution: "once@npm:1.4.0" @@ -4585,15 +3927,6 @@ __metadata: languageName: node linkType: hard -"p-limit@npm:^2.2.0": - version: 2.3.0 - resolution: "p-limit@npm:2.3.0" - dependencies: - p-try: ^2.0.0 - checksum: 84ff17f1a38126c3314e91ecfe56aecbf36430940e2873dadaa773ffe072dc23b7af8e46d4b6485d302a11673fe94c6b67ca2cfbb60c989848b02100d0594ac1 - languageName: node - linkType: hard - "p-limit@npm:^3.0.2": version: 3.1.0 resolution: "p-limit@npm:3.1.0" @@ -4603,15 +3936,6 @@ __metadata: languageName: node linkType: hard -"p-locate@npm:^4.1.0": - version: 4.1.0 - resolution: "p-locate@npm:4.1.0" - dependencies: - p-limit: ^2.2.0 - checksum: 513bd14a455f5da4ebfcb819ef706c54adb09097703de6aeaa5d26fe5ea16df92b48d1ac45e01e3944ce1e6aa2a66f7f8894742b8c9d6e276e16cd2049a2b870 - languageName: node - linkType: hard - "p-locate@npm:^5.0.0": version: 5.0.0 resolution: "p-locate@npm:5.0.0" @@ -4630,13 +3954,6 @@ __metadata: languageName: node linkType: hard -"p-try@npm:^2.0.0": - version: 2.2.0 - resolution: "p-try@npm:2.2.0" - checksum: f8a8e9a7693659383f06aec604ad5ead237c7a261c18048a6e1b5b85a5f8a067e469aa24f5bc009b991ea3b058a87f5065ef4176793a200d4917349881216cae - languageName: node - linkType: hard - "package-json-from-dist@npm:^1.0.0": version: 1.0.1 resolution: "package-json-from-dist@npm:1.0.1" @@ -4653,13 +3970,6 @@ __metadata: languageName: node linkType: hard -"parseurl@npm:~1.3.3": - version: 1.3.3 - resolution: "parseurl@npm:1.3.3" - checksum: 407cee8e0a3a4c5cd472559bca8b6a45b82c124e9a4703302326e9ab60fc1081442ada4e02628efef1eb16197ddc7f8822f5a91fd7d7c86b51f530aedb17dfa2 - languageName: node - linkType: hard - "path-exists@npm:^4.0.0": version: 4.0.0 resolution: "path-exists@npm:4.0.0" @@ -4698,13 +4008,6 @@ __metadata: languageName: node linkType: hard -"path-to-regexp@npm:0.1.10": - version: 0.1.10 - resolution: "path-to-regexp@npm:0.1.10" - checksum: ab7a3b7a0b914476d44030340b0a65d69851af2a0f33427df1476100ccb87d409c39e2182837a96b98fb38c4ef2ba6b87bdad62bb70a2c153876b8061760583c - languageName: node - linkType: hard - "path-type@npm:^4.0.0": version: 4.0.0 resolution: "path-type@npm:4.0.0" @@ -4733,15 +4036,6 @@ __metadata: languageName: node linkType: hard -"pkg-dir@npm:^4.1.0": - version: 4.2.0 - resolution: "pkg-dir@npm:4.2.0" - dependencies: - find-up: ^4.0.0 - checksum: 9863e3f35132bf99ae1636d31ff1e1e3501251d480336edb1c211133c8d58906bed80f154a1d723652df1fda91e01c7442c2eeaf9dc83157c7ae89087e43c8d6 - languageName: node - linkType: hard - "polished@npm:^4.2.2": version: 4.3.1 resolution: "polished@npm:4.3.1" @@ -4820,27 +4114,6 @@ __metadata: languageName: node linkType: hard -"prop-types@npm:^15.7.2": - version: 15.8.1 - resolution: "prop-types@npm:15.8.1" - dependencies: - loose-envify: ^1.4.0 - object-assign: ^4.1.1 - react-is: ^16.13.1 - checksum: c056d3f1c057cb7ff8344c645450e14f088a915d078dcda795041765047fa080d38e5d626560ccaac94a4e16e3aa15f3557c1a9a8d1174530955e992c675e459 - languageName: node - linkType: hard - -"proxy-addr@npm:~2.0.7": - version: 2.0.7 - resolution: "proxy-addr@npm:2.0.7" - dependencies: - forwarded: 0.2.0 - ipaddr.js: 1.9.1 - checksum: 29c6990ce9364648255454842f06f8c46fcd124d3e6d7c5066df44662de63cdc0bad032e9bf5a3d653ff72141cc7b6019873d685708ac8210c30458ad99f2b74 - languageName: node - linkType: hard - "punycode@npm:^2.1.0": version: 2.3.1 resolution: "punycode@npm:2.3.1" @@ -4848,15 +4121,6 @@ __metadata: languageName: node linkType: hard -"qs@npm:6.13.0": - version: 6.13.0 - resolution: "qs@npm:6.13.0" - dependencies: - side-channel: ^1.0.6 - checksum: e9404dc0fc2849245107108ce9ec2766cde3be1b271de0bf1021d049dc5b98d1a2901e67b431ac5509f865420a7ed80b7acb3980099fe1c118a1c5d2e1432ad8 - languageName: node - linkType: hard - "queue-microtask@npm:^1.2.2": version: 1.2.3 resolution: "queue-microtask@npm:1.2.3" @@ -4864,35 +4128,6 @@ __metadata: languageName: node linkType: hard -"range-parser@npm:~1.2.1": - version: 1.2.1 - resolution: "range-parser@npm:1.2.1" - checksum: 0a268d4fea508661cf5743dfe3d5f47ce214fd6b7dec1de0da4d669dd4ef3d2144468ebe4179049eff253d9d27e719c88dae55be64f954e80135a0cada804ec9 - languageName: node - linkType: hard - -"raw-body@npm:2.5.2": - version: 2.5.2 - resolution: "raw-body@npm:2.5.2" - dependencies: - bytes: 3.1.2 - http-errors: 2.0.0 - iconv-lite: 0.4.24 - unpipe: 1.0.0 - checksum: ba1583c8d8a48e8fbb7a873fdbb2df66ea4ff83775421bfe21ee120140949ab048200668c47d9ae3880012f6e217052690628cf679ddfbd82c9fc9358d574676 - languageName: node - linkType: hard - -"react-colorful@npm:^5.1.2": - version: 5.6.1 - resolution: "react-colorful@npm:5.6.1" - peerDependencies: - react: ">=16.8.0" - react-dom: ">=16.8.0" - checksum: e432b7cb0df57e8f0bcdc3b012d2e93fcbcb6092c9e0f85654788d5ebfc4442536d8cc35b2418061ba3c4afb8b7788cc101c606d86a1732407921de7a9244c8d - languageName: node - linkType: hard - "react-confetti@npm:^6.1.0": version: 6.1.0 resolution: "react-confetti@npm:6.1.0" @@ -4943,34 +4178,6 @@ __metadata: languageName: node linkType: hard -"react-element-to-jsx-string@npm:^15.0.0": - version: 15.0.0 - resolution: "react-element-to-jsx-string@npm:15.0.0" - dependencies: - "@base2/pretty-print-object": 1.0.1 - is-plain-object: 5.0.0 - react-is: 18.1.0 - peerDependencies: - react: ^0.14.8 || ^15.0.1 || ^16.0.0 || ^17.0.1 || ^18.0.0 - react-dom: ^0.14.8 || ^15.0.1 || ^16.0.0 || ^17.0.1 || ^18.0.0 - checksum: c3907cc4c1d3e9ecc8ca7727058ebcba6ec89848d9e07bfd2c77ee8f28f1ad99bf55e38359dec8a1125de83d41ac09a2874f53c41415edc86ffa9840fa1b7856 - languageName: node - linkType: hard - -"react-is@npm:18.1.0": - version: 18.1.0 - resolution: "react-is@npm:18.1.0" - checksum: d206a0fe6790851bff168727bfb896de02c5591695afb0c441163e8630136a3e13ee1a7ddd59fdccddcc93968b4721ae112c10f790b194b03b35a3dc13a355ef - languageName: node - linkType: hard - -"react-is@npm:^16.13.1": - version: 16.13.1 - resolution: "react-is@npm:16.13.1" - checksum: f7a19ac3496de32ca9ae12aa030f00f14a3d45374f1ceca0af707c831b2a6098ef0d6bdae51bd437b0a306d7f01d4677fcc8de7c0d331eb47ad0f46130e53c5f - languageName: node - linkType: hard - "react-is@npm:^17.0.1": version: 17.0.2 resolution: "react-is@npm:17.0.2" @@ -5041,33 +4248,6 @@ __metadata: languageName: node linkType: hard -"rehype-external-links@npm:^3.0.0": - version: 3.0.0 - resolution: "rehype-external-links@npm:3.0.0" - dependencies: - "@types/hast": ^3.0.0 - "@ungap/structured-clone": ^1.0.0 - hast-util-is-element: ^3.0.0 - is-absolute-url: ^4.0.0 - space-separated-tokens: ^2.0.0 - unist-util-visit: ^5.0.0 - checksum: f776f306a2698a67b03665280fcc00448a5bf59b997d83fbb70fc3d71acff2c3025c70ee1840f48ca7dff209217ebe9adad085dc7caf9e5907badf8b104898b6 - languageName: node - linkType: hard - -"rehype-slug@npm:^6.0.0": - version: 6.0.0 - resolution: "rehype-slug@npm:6.0.0" - dependencies: - "@types/hast": ^3.0.0 - github-slugger: ^2.0.0 - hast-util-heading-rank: ^3.0.0 - hast-util-to-string: ^3.0.0 - unist-util-visit: ^5.0.0 - checksum: 0e13ec558eb142d14a6daeab21bbef7c9230bfabec45987e15a24283650226eae3898ad162b8cb29ee39a8bce536bcc013eeab7dc6faa0295b0e91612a8c9f6e - languageName: node - linkType: hard - "requireindex@npm:^1.2.0": version: 1.2.0 resolution: "requireindex@npm:1.2.0" @@ -5194,14 +4374,7 @@ __metadata: languageName: node linkType: hard -"safe-buffer@npm:5.2.1": - version: 5.2.1 - resolution: "safe-buffer@npm:5.2.1" - checksum: b99c4b41fdd67a6aaf280fcd05e9ffb0813654894223afb78a31f14a19ad220bba8aba1cb14eddce1fcfb037155fe6de4e861784eb434f7d11ed58d1e70dd491 - languageName: node - linkType: hard - -"safer-buffer@npm:>= 2.1.2 < 3, safer-buffer@npm:>= 2.1.2 < 3.0.0": +"safer-buffer@npm:>= 2.1.2 < 3.0.0": version: 2.1.2 resolution: "safer-buffer@npm:2.1.2" checksum: cab8f25ae6f1434abee8d80023d7e72b598cf1327164ddab31003c51215526801e40b66c5e65d658a0af1e9d6478cadcb4c745f4bd6751f97d8644786c0978b0 @@ -5217,7 +4390,7 @@ __metadata: languageName: node linkType: hard -"semver@npm:^6.0.0, semver@npm:^6.3.1": +"semver@npm:^6.3.1": version: 6.3.1 resolution: "semver@npm:6.3.1" bin: @@ -5235,39 +4408,6 @@ __metadata: languageName: node linkType: hard -"send@npm:0.19.0": - version: 0.19.0 - resolution: "send@npm:0.19.0" - dependencies: - debug: 2.6.9 - depd: 2.0.0 - destroy: 1.2.0 - encodeurl: ~1.0.2 - escape-html: ~1.0.3 - etag: ~1.8.1 - fresh: 0.5.2 - http-errors: 2.0.0 - mime: 1.6.0 - ms: 2.1.3 - on-finished: 2.4.1 - range-parser: ~1.2.1 - statuses: 2.0.1 - checksum: 5ae11bd900c1c2575525e2aa622e856804e2f96a09281ec1e39610d089f53aa69e13fd8db84b52f001d0318cf4bb0b3b904ad532fc4c0014eb90d32db0cff55f - languageName: node - linkType: hard - -"serve-static@npm:1.16.2": - version: 1.16.2 - resolution: "serve-static@npm:1.16.2" - dependencies: - encodeurl: ~2.0.0 - escape-html: ~1.0.3 - parseurl: ~1.3.3 - send: 0.19.0 - checksum: dffc52feb4cc5c68e66d0c7f3c1824d4e989f71050aefc9bd5f822a42c54c9b814f595fc5f2b717f4c7cc05396145f3e90422af31186a93f76cf15f707019759 - languageName: node - linkType: hard - "set-function-length@npm:^1.2.1": version: 1.2.2 resolution: "set-function-length@npm:1.2.2" @@ -5282,13 +4422,6 @@ __metadata: languageName: node linkType: hard -"setprototypeof@npm:1.2.0": - version: 1.2.0 - resolution: "setprototypeof@npm:1.2.0" - checksum: be18cbbf70e7d8097c97f713a2e76edf84e87299b40d085c6bf8b65314e994cc15e2e317727342fa6996e38e1f52c59720b53fe621e2eb593a6847bf0356db89 - languageName: node - linkType: hard - "shebang-command@npm:^2.0.0": version: 2.0.0 resolution: "shebang-command@npm:2.0.0" @@ -5305,18 +4438,6 @@ __metadata: languageName: node linkType: hard -"side-channel@npm:^1.0.6": - version: 1.0.6 - resolution: "side-channel@npm:1.0.6" - dependencies: - call-bind: ^1.0.7 - es-errors: ^1.3.0 - get-intrinsic: ^1.2.4 - object-inspect: ^1.13.1 - checksum: bfc1afc1827d712271453e91b7cd3878ac0efd767495fd4e594c4c2afaa7963b7b510e249572bfd54b0527e66e4a12b61b80c061389e129755f34c493aad9b97 - languageName: node - linkType: hard - "signal-exit@npm:^4.0.1": version: 4.1.0 resolution: "signal-exit@npm:4.1.0" @@ -5373,13 +4494,6 @@ __metadata: languageName: node linkType: hard -"space-separated-tokens@npm:^2.0.0": - version: 2.0.2 - resolution: "space-separated-tokens@npm:2.0.2" - checksum: 202e97d7ca1ba0758a0aa4fe226ff98142073bcceeff2da3aad037968878552c3bbce3b3231970025375bbba5aee00c5b8206eda408da837ab2dc9c0f26be990 - languageName: node - linkType: hard - "sprintf-js@npm:^1.1.3": version: 1.1.3 resolution: "sprintf-js@npm:1.1.3" @@ -5396,23 +4510,21 @@ __metadata: languageName: node linkType: hard -"statuses@npm:2.0.1": - version: 2.0.1 - resolution: "statuses@npm:2.0.1" - checksum: 18c7623fdb8f646fb213ca4051be4df7efb3484d4ab662937ca6fbef7ced9b9e12842709872eb3020cc3504b93bde88935c9f6417489627a7786f24f8031cbcb - languageName: node - linkType: hard - "storybook@npm:^8.3.5": - version: 8.3.6 - resolution: "storybook@npm:8.3.6" + version: 8.4.2 + resolution: "storybook@npm:8.4.2" dependencies: - "@storybook/core": 8.3.6 + "@storybook/core": 8.4.2 + peerDependencies: + prettier: ^2 || ^3 + peerDependenciesMeta: + prettier: + optional: true bin: getstorybook: ./bin/index.cjs sb: ./bin/index.cjs storybook: ./bin/index.cjs - checksum: 826eaaa84f295aa900a35bed9403e1a1853364f90d50b69270b105d00c945cca9fdbba260b18712f6e43faa07f3dd7ed64e2d9d7257c5f1653820039aeabf4ff + checksum: 8fe9013ea95d0f10493b3ba6c0b1599b6c1efdb9f5e59e36c1f4b4ec6200640581ab37b415d4aa86c0a70bd4cb919d25d6411f906580d0a7ca42542e8032d8de languageName: node linkType: hard @@ -5527,15 +4639,6 @@ __metadata: languageName: node linkType: hard -"telejson@npm:^7.2.0": - version: 7.2.0 - resolution: "telejson@npm:7.2.0" - dependencies: - memoizerific: ^1.11.3 - checksum: 55a3380c9ff3c5ad84581bb6bda28fc33c6b7c4a0c466894637da687639b8db0d21b0ff4c1bc1a7a92ae6b70662549d09e7b9e8b1ec334b2ef93078762ecdfb9 - languageName: node - linkType: hard - "text-table@npm:^0.2.0": version: 0.2.0 resolution: "text-table@npm:0.2.0" @@ -5580,13 +4683,6 @@ __metadata: languageName: node linkType: hard -"toidentifier@npm:1.0.1": - version: 1.0.1 - resolution: "toidentifier@npm:1.0.1" - checksum: 952c29e2a85d7123239b5cfdd889a0dde47ab0497f0913d70588f19c53f7e0b5327c95f4651e413c74b785147f9637b17410ac8c846d5d4a20a5a33eb6dc3a45 - languageName: node - linkType: hard - "ts-api-utils@npm:^1.3.0": version: 1.3.0 resolution: "ts-api-utils@npm:1.3.0" @@ -5655,23 +4751,13 @@ __metadata: languageName: node linkType: hard -"type-fest@npm:^2.19.0, type-fest@npm:~2.19": +"type-fest@npm:^2.19.0": version: 2.19.0 resolution: "type-fest@npm:2.19.0" checksum: a4ef07ece297c9fba78fc1bd6d85dff4472fe043ede98bd4710d2615d15776902b595abf62bd78339ed6278f021235fb28a96361f8be86ed754f778973a0d278 languageName: node linkType: hard -"type-is@npm:~1.6.18": - version: 1.6.18 - resolution: "type-is@npm:1.6.18" - dependencies: - media-typer: 0.3.0 - mime-types: ~2.1.24 - checksum: 2c8e47675d55f8b4e404bcf529abdf5036c537a04c2b20177bcf78c9e3c1da69da3942b1346e6edb09e823228c0ee656ef0e033765ec39a70d496ef601a0c657 - languageName: node - linkType: hard - "typescript-eslint@npm:^8.7.0": version: 8.10.0 resolution: "typescript-eslint@npm:8.10.0" @@ -5731,36 +4817,6 @@ __metadata: languageName: node linkType: hard -"unist-util-is@npm:^6.0.0": - version: 6.0.0 - resolution: "unist-util-is@npm:6.0.0" - dependencies: - "@types/unist": ^3.0.0 - checksum: f630a925126594af9993b091cf807b86811371e465b5049a6283e08537d3e6ba0f7e248e1e7dab52cfe33f9002606acef093441137181b327f6fe504884b20e2 - languageName: node - linkType: hard - -"unist-util-visit-parents@npm:^6.0.0": - version: 6.0.1 - resolution: "unist-util-visit-parents@npm:6.0.1" - dependencies: - "@types/unist": ^3.0.0 - unist-util-is: ^6.0.0 - checksum: 08927647c579f63b91aafcbec9966dc4a7d0af1e5e26fc69f4e3e6a01215084835a2321b06f3cbe7bf7914a852830fc1439f0fc3d7153d8804ac3ef851ddfa20 - languageName: node - linkType: hard - -"unist-util-visit@npm:^5.0.0": - version: 5.0.0 - resolution: "unist-util-visit@npm:5.0.0" - dependencies: - "@types/unist": ^3.0.0 - unist-util-is: ^6.0.0 - unist-util-visit-parents: ^6.0.0 - checksum: 9ec42e618e7e5d0202f3c191cd30791b51641285732767ee2e6bcd035931032e3c1b29093f4d7fd0c79175bbc1f26f24f26ee49770d32be76f8730a652a857e6 - languageName: node - linkType: hard - "universalify@npm:^2.0.0": version: 2.0.1 resolution: "universalify@npm:2.0.1" @@ -5768,13 +4824,6 @@ __metadata: languageName: node linkType: hard -"unpipe@npm:1.0.0, unpipe@npm:~1.0.0": - version: 1.0.0 - resolution: "unpipe@npm:1.0.0" - checksum: 4fa18d8d8d977c55cb09715385c203197105e10a6d220087ec819f50cb68870f02942244f1017565484237f1f8c5d3cd413631b1ae104d3096f24fdfde1b4aa2 - languageName: node - linkType: hard - "unplugin@npm:^1.3.1": version: 1.14.1 resolution: "unplugin@npm:1.14.1" @@ -5813,14 +4862,7 @@ __metadata: languageName: node linkType: hard -"util-deprecate@npm:^1.0.2": - version: 1.0.2 - resolution: "util-deprecate@npm:1.0.2" - checksum: 474acf1146cb2701fe3b074892217553dfcf9a031280919ba1b8d651a068c9b15d863b7303cb15bd00a862b498e6cf4ad7b4a08fb134edd5a6f7641681cb54a2 - languageName: node - linkType: hard - -"util@npm:^0.12.4, util@npm:^0.12.5": +"util@npm:^0.12.5": version: 0.12.5 resolution: "util@npm:0.12.5" dependencies: @@ -5833,13 +4875,6 @@ __metadata: languageName: node linkType: hard -"utils-merge@npm:1.0.1": - version: 1.0.1 - resolution: "utils-merge@npm:1.0.1" - checksum: c81095493225ecfc28add49c106ca4f09cdf56bc66731aa8dabc2edbbccb1e1bfe2de6a115e5c6a380d3ea166d1636410b62ef216bb07b3feb1cfde1d95d5080 - languageName: node - linkType: hard - "uuid@npm:^9.0.0": version: 9.0.1 resolution: "uuid@npm:9.0.1" @@ -5849,13 +4884,6 @@ __metadata: languageName: node linkType: hard -"vary@npm:~1.1.2": - version: 1.1.2 - resolution: "vary@npm:1.1.2" - checksum: ae0123222c6df65b437669d63dfa8c36cee20a504101b2fcd97b8bf76f91259c17f9f2b4d70a1e3c6bbcee7f51b28392833adb6b2770b23b01abec84e369660b - languageName: node - linkType: hard - "vite@npm:^5.4.8": version: 5.4.10 resolution: "vite@npm:5.4.10" From e19c53c46e9851a39941fd8db9a4213b069e3818 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Tue, 5 Nov 2024 10:01:26 +0100 Subject: [PATCH 092/161] cli: fix linking with react-router Signed-off-by: Patrik Oldsberg --- .changeset/slimy-penguins-care.md | 5 +++++ packages/cli/src/lib/bundler/linkWorkspaces.ts | 13 ++++++++----- 2 files changed, 13 insertions(+), 5 deletions(-) create mode 100644 .changeset/slimy-penguins-care.md diff --git a/.changeset/slimy-penguins-care.md b/.changeset/slimy-penguins-care.md new file mode 100644 index 0000000000..96016b1ba4 --- /dev/null +++ b/.changeset/slimy-penguins-care.md @@ -0,0 +1,5 @@ +--- +'@backstage/cli': patch +--- + +Fix for the `--link` flag for `package start` to deduplicate `react-router` and `react-router-dom`. diff --git a/packages/cli/src/lib/bundler/linkWorkspaces.ts b/packages/cli/src/lib/bundler/linkWorkspaces.ts index ff5223725c..2fe0eb2fb3 100644 --- a/packages/cli/src/lib/bundler/linkWorkspaces.ts +++ b/packages/cli/src/lib/bundler/linkWorkspaces.ts @@ -48,10 +48,13 @@ export async function createWorkspaceLinkingPlugins( }), // react and react-dom are always resolved from the target directory // Note: this often requires that the linked and target workspace use the same versions of React - new bundler.NormalModuleReplacementPlugin(/^react(?:-dom)?$/, resource => { - if (!relativePath(linkedRoot.dir, resource.context).startsWith('..')) { - resource.context = paths.targetDir; - } - }), + new bundler.NormalModuleReplacementPlugin( + /^react(?:-router)?(?:-dom)?$/, + resource => { + if (!relativePath(linkedRoot.dir, resource.context).startsWith('..')) { + resource.context = paths.targetDir; + } + }, + ), ]; } From e93b958e7ef76cd42b75d5eb20c56af3dbd53e6a Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 5 Nov 2024 10:17:15 +0000 Subject: [PATCH 093/161] fix(deps): update codemirror Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/yarn.lock b/yarn.lock index 338dc6939f..5192c57f99 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9159,11 +9159,11 @@ __metadata: linkType: hard "@codemirror/legacy-modes@npm:^6.1.0": - version: 6.4.1 - resolution: "@codemirror/legacy-modes@npm:6.4.1" + version: 6.4.2 + resolution: "@codemirror/legacy-modes@npm:6.4.2" dependencies: "@codemirror/language": ^6.0.0 - checksum: 3947842c5f06db49a152bf7dd03a626806c5f2e80abfa9840927396fef08ff8bc2dfb228e7231bd8d0b7bb1a84b7ef582df8361b2bef77419e0e04bf43cc6b7d + checksum: fe55df97efe980a573ff5572f480eae323d7652a4a61435c654a90142def7102218023590112de7cd826c495ecaadae68a89fb5e5d4323d207af267bcce1d0c1 languageName: node linkType: hard @@ -9209,13 +9209,13 @@ __metadata: linkType: hard "@codemirror/view@npm:^6.0.0, @codemirror/view@npm:^6.23.0": - version: 6.34.1 - resolution: "@codemirror/view@npm:6.34.1" + version: 6.34.2 + resolution: "@codemirror/view@npm:6.34.2" dependencies: "@codemirror/state": ^6.4.0 style-mod: ^4.1.0 w3c-keyname: ^2.2.4 - checksum: 5c7bf199f0b45a3cc192f08c2ac89e5ab972f313cb4f2c979edf6e05b27bccd60c6cb42d5dacb6813ef3a928d75476eb0a00ffdeffd7431c8e9f44bab4f6e12e + checksum: 31c492e83b0a02c962203896f219c6184e4ee07832f3c71b0065a9bcad70158aa23f286ecfd2c251acde8061ba8dfa4d3a286da71be2951e995ad3e0d21f9e79 languageName: node linkType: hard From 50648277ef42ca5e0917c86358a939a18dec68a5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fredrik=20Adel=C3=B6w?= Date: Tue, 5 Nov 2024 11:35:31 +0100 Subject: [PATCH 094/161] Made it possible to construct mockServices.database with a given knex instance MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Fredrik Adelöw --- .changeset/little-rivers-deny.md | 5 +++ .../02-testing.md | 5 +-- .../auth/plugin/keys/DatabaseKeyStore.test.ts | 2 +- .../lib/DefaultSchedulerService.test.ts | 24 +++-------- packages/backend-test-utils/report.api.md | 21 ++++++--- .../src/next/services/mockServices.ts | 41 +++++++++++++++++- .../src/lib/assets/StaticAssetsStore.test.ts | 43 ++++++------------- .../getEntitiesPerformance.test.ts | 26 +++++------ .../performance/stitchingPerformance.test.ts | 20 ++------- .../src/service/EventsPlugin.test.ts | 4 +- .../DatabaseNotificationsStore.test.ts | 15 +++---- .../database/DatabaseDocumentStore.test.ts | 24 +++-------- .../DatabaseUserSettingsStore.test.ts | 13 +++--- 13 files changed, 119 insertions(+), 124 deletions(-) create mode 100644 .changeset/little-rivers-deny.md diff --git a/.changeset/little-rivers-deny.md b/.changeset/little-rivers-deny.md new file mode 100644 index 0000000000..8a6c60311e --- /dev/null +++ b/.changeset/little-rivers-deny.md @@ -0,0 +1,5 @@ +--- +'@backstage/backend-test-utils': minor +--- + +Made it possible to construct `mockServices.database` with a given knex instance diff --git a/docs/backend-system/building-plugins-and-modules/02-testing.md b/docs/backend-system/building-plugins-and-modules/02-testing.md index 38107f0242..1ec100cff3 100644 --- a/docs/backend-system/building-plugins-and-modules/02-testing.md +++ b/docs/backend-system/building-plugins-and-modules/02-testing.md @@ -224,10 +224,7 @@ your test database. ```ts const { knex, subject } = await createSubject(databaseId); const { server } = await startTestBackend({ - features: [ - myPlugin(), - mockServices.database.mock({ getClient: async () => knex }), - ], + features: [myPlugin(), mockServices.database.factory({ knex })], }); ``` diff --git a/packages/backend-defaults/src/entrypoints/auth/plugin/keys/DatabaseKeyStore.test.ts b/packages/backend-defaults/src/entrypoints/auth/plugin/keys/DatabaseKeyStore.test.ts index 551cccaf73..feb253e7ed 100644 --- a/packages/backend-defaults/src/entrypoints/auth/plugin/keys/DatabaseKeyStore.test.ts +++ b/packages/backend-defaults/src/entrypoints/auth/plugin/keys/DatabaseKeyStore.test.ts @@ -46,7 +46,7 @@ describe('DatabaseKeyStore', () => { knex, logger, keyStore: await DatabaseKeyStore.create({ - database: { getClient: async () => knex }, + database: mockServices.database({ knex }), logger, }), }; diff --git a/packages/backend-defaults/src/entrypoints/scheduler/lib/DefaultSchedulerService.test.ts b/packages/backend-defaults/src/entrypoints/scheduler/lib/DefaultSchedulerService.test.ts index 63b900fab2..199d25f2aa 100644 --- a/packages/backend-defaults/src/entrypoints/scheduler/lib/DefaultSchedulerService.test.ts +++ b/packages/backend-defaults/src/entrypoints/scheduler/lib/DefaultSchedulerService.test.ts @@ -14,16 +14,11 @@ * limitations under the License. */ -import { - TestDatabaseId, - TestDatabases, - mockServices, -} from '@backstage/backend-test-utils'; +import { TestDatabases, mockServices } from '@backstage/backend-test-utils'; import { Duration } from 'luxon'; import waitForExpect from 'wait-for-expect'; import { DefaultSchedulerService } from './DefaultSchedulerService'; import { createTestScopedSignal } from './__testUtils__/createTestScopedSignal'; -import { DatabaseService } from '@backstage/backend-plugin-api'; jest.setTimeout(60_000); @@ -32,19 +27,12 @@ describe('TaskScheduler', () => { const databases = TestDatabases.create(); const testScopedSignal = createTestScopedSignal(); - async function createDatabase( - databaseId: TestDatabaseId, - ): Promise { - const knex = await databases.init(databaseId); - return { - getClient: async () => knex, - }; - } - it.each(databases.eachSupportedId())( 'can return a working v1 plugin impl, %p', async databaseId => { - const database = await createDatabase(databaseId); + const knex = await databases.init(databaseId); + const database = mockServices.database({ knex }); + const manager = DefaultSchedulerService.create({ database, logger }); const fn = jest.fn(); @@ -65,7 +53,9 @@ describe('TaskScheduler', () => { it.each(databases.eachSupportedId())( 'can return a working v2 plugin impl, %p', async databaseId => { - const database = await createDatabase(databaseId); + const knex = await databases.init(databaseId); + const database = mockServices.database({ knex }); + const manager = DefaultSchedulerService.create({ database, logger }); const fn = jest.fn(); diff --git a/packages/backend-test-utils/report.api.md b/packages/backend-test-utils/report.api.md index 263435c920..a79bd9d03c 100644 --- a/packages/backend-test-utils/report.api.md +++ b/packages/backend-test-utils/report.api.md @@ -175,14 +175,23 @@ export namespace mockServices { partialImpl?: Partial | undefined, ) => ServiceMock; } + export function database(options: { + knex: Knex; + migrations?: { + skip?: boolean; + }; + }): DatabaseService; // (undocumented) export namespace database { - const // (undocumented) - factory: () => ServiceFactory; - const // (undocumented) - mock: ( - partialImpl?: Partial | undefined, - ) => ServiceMock; + const factory: (options?: { + knex: Knex; + migrations?: { + skip?: boolean; + }; + }) => ServiceFactory; + const mock: ( + partialImpl?: Partial | undefined, + ) => ServiceMock; } // (undocumented) export function discovery(): DiscoveryService; diff --git a/packages/backend-test-utils/src/next/services/mockServices.ts b/packages/backend-test-utils/src/next/services/mockServices.ts index 55632f4734..a2c3b34ead 100644 --- a/packages/backend-test-utils/src/next/services/mockServices.ts +++ b/packages/backend-test-utils/src/next/services/mockServices.ts @@ -30,6 +30,7 @@ import { AuthService, BackstageCredentials, BackstageUserInfo, + DatabaseService, DiscoveryService, HttpAuthService, LoggerService, @@ -51,6 +52,7 @@ import { MockHttpAuthService } from './MockHttpAuthService'; import { MockRootLoggerService } from './MockRootLoggerService'; import { MockUserInfoService } from './MockUserInfoService'; import { mockCredentials } from './mockCredentials'; +import { Knex } from 'knex'; /** @internal */ function createLoggerMock() { @@ -376,8 +378,45 @@ export namespace mockServices { })); } + /** + * Creates a mock implementation of the + * {@link @backstage/backend-plugin-api#coreServices.database}. Just returns + * the given `knex` instance, which is useful in combination with the + * {@link TestDatabases} facility. + */ + export function database(options: { + knex: Knex; + migrations?: { skip?: boolean }; + }): DatabaseService { + return { + getClient: async () => options.knex, + migrations: options.migrations, + }; + } export namespace database { - export const factory = () => databaseServiceFactory; + /** + * Creates a mock factory for the + * {@link @backstage/backend-plugin-api#coreServices.database}. Just returns + * the given `knex` instance if you supply one, which is useful in + * combination with the {@link TestDatabases} facility. Otherwise, it + * returns the regular default database factory which reads config settings. + */ + export const factory = (options?: { + knex: Knex; + migrations?: { skip?: boolean }; + }) => + options + ? createServiceFactory({ + service: coreServices.database, + deps: {}, + factory: () => database(options), + }) + : databaseServiceFactory; + /** + * Creates a mock of the + * {@link @backstage/backend-plugin-api#coreServices.database}, optionally + * with some given method implementations. + */ export const mock = simpleMock(coreServices.database, () => ({ getClient: jest.fn(), })); diff --git a/plugins/app-backend/src/lib/assets/StaticAssetsStore.test.ts b/plugins/app-backend/src/lib/assets/StaticAssetsStore.test.ts index 51b949a623..bd7a01e5e8 100644 --- a/plugins/app-backend/src/lib/assets/StaticAssetsStore.test.ts +++ b/plugins/app-backend/src/lib/assets/StaticAssetsStore.test.ts @@ -14,24 +14,9 @@ * limitations under the License. */ -import { Knex as KnexType } from 'knex'; import { TestDatabases, mockServices } from '@backstage/backend-test-utils'; import { StaticAssetsStore } from './StaticAssetsStore'; -const logger = mockServices.logger.mock(); - -function createDatabaseManager( - client: KnexType, - skipMigrations: boolean = false, -) { - return { - getClient: async () => client, - migrations: { - skip: skipMigrations, - }, - }; -} - jest.setTimeout(60_000); describe('StaticAssetsStore', () => { @@ -40,11 +25,11 @@ describe('StaticAssetsStore', () => { it.each(databases.eachSupportedId())( 'should store and retrieve assets, %p', async databaseId => { - const client = await databases.init(databaseId); - const database = createDatabaseManager(client); + const knex = await databases.init(databaseId); + const store = await StaticAssetsStore.create({ - logger, - database, + logger: mockServices.logger.mock(), + database: mockServices.database({ knex }), }); await store.storeAssets([ @@ -82,11 +67,11 @@ describe('StaticAssetsStore', () => { it.each(databases.eachSupportedId())( 'should update assets timestamps, but not contents, %p', async databaseId => { - const client = await databases.init(databaseId); - const database = createDatabaseManager(client); + const knex = await databases.init(databaseId); + const store = await StaticAssetsStore.create({ - logger, - database, + logger: mockServices.logger.mock(), + database: mockServices.database({ knex }), }); await store.storeAssets([ @@ -134,10 +119,10 @@ describe('StaticAssetsStore', () => { 'should trim old assets, %p', async databaseId => { const knex = await databases.init(databaseId); - const database = createDatabaseManager(knex); + const store = await StaticAssetsStore.create({ - logger, - database, + logger: mockServices.logger.mock(), + database: mockServices.database({ knex }), }); await store.storeAssets([ @@ -179,10 +164,10 @@ describe('StaticAssetsStore', () => { 'should isolate assets in namespace, %p', async databaseId => { const knex = await databases.init(databaseId); - const database = createDatabaseManager(knex); + const store = await StaticAssetsStore.create({ - logger, - database, + logger: mockServices.logger.mock(), + database: mockServices.database({ knex }), }); const otherStore = store.withNamespace('other'); diff --git a/plugins/catalog-backend/src/tests/performance/getEntitiesPerformance.test.ts b/plugins/catalog-backend/src/tests/performance/getEntitiesPerformance.test.ts index 47fd664b71..5721fd8218 100644 --- a/plugins/catalog-backend/src/tests/performance/getEntitiesPerformance.test.ts +++ b/plugins/catalog-backend/src/tests/performance/getEntitiesPerformance.test.ts @@ -14,22 +14,22 @@ * limitations under the License. */ -import { describePerformanceTest, performanceTraceEnabled } from './lib/env'; -import { startTestBackend, TestDatabases } from '@backstage/backend-test-utils'; +import { createBackendModule } from '@backstage/backend-plugin-api'; +import { + TestDatabases, + mockServices, + startTestBackend, +} from '@backstage/backend-test-utils'; +import { CatalogClient } from '@backstage/catalog-client'; +import { catalogProcessingExtensionPoint } from '@backstage/plugin-catalog-node/alpha'; +import { Knex } from 'knex'; import { applyDatabaseMigrations } from '../../database/migrations'; import { SyntheticLoadEntitiesProcessor, SyntheticLoadEntitiesProvider, SyntheticLoadOptions, } from './lib/catalogModuleSyntheticLoadEntities'; -import { CatalogClient } from '@backstage/catalog-client'; -import { - coreServices, - createBackendModule, - createServiceFactory, -} from '@backstage/backend-plugin-api'; -import { catalogProcessingExtensionPoint } from '@backstage/plugin-catalog-node/alpha'; -import { Knex } from 'knex'; +import { describePerformanceTest, performanceTraceEnabled } from './lib/env'; jest.setTimeout(600_000); @@ -85,11 +85,7 @@ describePerformanceTest('getEntitiesPerformanceTest', () => { const backend = await startTestBackend({ features: [ import('@backstage/plugin-catalog-backend/alpha'), - createServiceFactory({ - service: coreServices.database, - deps: {}, - factory: () => ({ getClient: async () => knex }), - }), + mockServices.database.factory({ knex }), createBackendModule({ pluginId: 'catalog', moduleId: 'synthetic-load-entities', diff --git a/plugins/catalog-backend/src/tests/performance/stitchingPerformance.test.ts b/plugins/catalog-backend/src/tests/performance/stitchingPerformance.test.ts index e0d3f87124..9e515edb5d 100644 --- a/plugins/catalog-backend/src/tests/performance/stitchingPerformance.test.ts +++ b/plugins/catalog-backend/src/tests/performance/stitchingPerformance.test.ts @@ -14,15 +14,11 @@ * limitations under the License. */ +import { createBackendModule } from '@backstage/backend-plugin-api'; import { - coreServices, - createBackendModule, - createServiceFactory, -} from '@backstage/backend-plugin-api'; -import { + TestDatabases, mockServices, startTestBackend, - TestDatabases, } from '@backstage/backend-test-utils'; import { catalogProcessingExtensionPoint } from '@backstage/plugin-catalog-node/alpha'; import { Knex } from 'knex'; @@ -182,11 +178,7 @@ describePerformanceTest('stitchingPerformance', () => { features: [ import('@backstage/plugin-catalog-backend/alpha'), mockServices.rootConfig.factory({ data: config }), - createServiceFactory({ - service: coreServices.database, - deps: {}, - factory: () => ({ getClient: async () => knex }), - }), + mockServices.database.factory({ knex }), createBackendModule({ pluginId: 'catalog', moduleId: 'synthetic-load-entities', @@ -239,11 +231,7 @@ describePerformanceTest('stitchingPerformance', () => { features: [ import('@backstage/plugin-catalog-backend/alpha'), mockServices.rootConfig.factory({ data: config }), - createServiceFactory({ - service: coreServices.database, - deps: {}, - factory: () => ({ getClient: async () => knex }), - }), + mockServices.database.factory({ knex }), createBackendModule({ pluginId: 'catalog', moduleId: 'synthetic-load-entities', diff --git a/plugins/events-backend/src/service/EventsPlugin.test.ts b/plugins/events-backend/src/service/EventsPlugin.test.ts index 2c0befe1fd..c14659573d 100644 --- a/plugins/events-backend/src/service/EventsPlugin.test.ts +++ b/plugins/events-backend/src/service/EventsPlugin.test.ts @@ -144,9 +144,7 @@ describe('eventsPlugin', () => { async function mockKnexFactory(databaseId: TestDatabaseId) { const knex = await databases.init(databaseId); - return mockServices.database.mock({ - getClient: async () => knex, - }).factory; + return mockServices.database.factory({ knex }); } let backend: TestBackend | undefined = undefined; diff --git a/plugins/notifications-backend/src/database/DatabaseNotificationsStore.test.ts b/plugins/notifications-backend/src/database/DatabaseNotificationsStore.test.ts index 90dd3932d0..e0536c50ac 100644 --- a/plugins/notifications-backend/src/database/DatabaseNotificationsStore.test.ts +++ b/plugins/notifications-backend/src/database/DatabaseNotificationsStore.test.ts @@ -13,7 +13,11 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import { TestDatabaseId, TestDatabases } from '@backstage/backend-test-utils'; +import { + TestDatabaseId, + TestDatabases, + mockServices, +} from '@backstage/backend-test-utils'; import { DatabaseNotificationsStore } from './DatabaseNotificationsStore'; import { Knex } from 'knex'; import { @@ -28,15 +32,10 @@ const databases = TestDatabases.create(); async function createStore(databaseId: TestDatabaseId) { const knex = await databases.init(databaseId); - const mgr = { - getClient: async () => knex, - migrations: { - skip: false, - }, - }; + const database = mockServices.database({ knex, migrations: { skip: false } }); return { knex, - storage: await DatabaseNotificationsStore.create({ database: mgr }), + storage: await DatabaseNotificationsStore.create({ database }), }; } diff --git a/plugins/search-backend-module-pg/src/database/DatabaseDocumentStore.test.ts b/plugins/search-backend-module-pg/src/database/DatabaseDocumentStore.test.ts index c638ffc3f9..d68b36fb54 100644 --- a/plugins/search-backend-module-pg/src/database/DatabaseDocumentStore.test.ts +++ b/plugins/search-backend-module-pg/src/database/DatabaseDocumentStore.test.ts @@ -14,8 +14,11 @@ * limitations under the License. */ -import { Knex as KnexType } from 'knex'; -import { TestDatabaseId, TestDatabases } from '@backstage/backend-test-utils'; +import { + TestDatabaseId, + TestDatabases, + mockServices, +} from '@backstage/backend-test-utils'; import { IndexableDocument } from '@backstage/plugin-search-common'; import { PgSearchHighlightOptions } from '../PgSearchEngine'; import { DatabaseDocumentStore } from './DatabaseDocumentStore'; @@ -32,18 +35,6 @@ const highlightOptions: PgSearchHighlightOptions = { fragmentDelimiter: ' ... ', }; -function createDatabaseManager( - client: KnexType, - skipMigrations: boolean = false, -) { - return { - getClient: async () => client, - migrations: { - skip: skipMigrations, - }, - }; -} - jest.setTimeout(60_000); describe('DatabaseDocumentStore', () => { @@ -66,8 +57,7 @@ describe('DatabaseDocumentStore', () => { 'should fail to create, %p', async databaseId => { const knex = await databases.init(databaseId); - const databaseManager = createDatabaseManager(knex); - + const databaseManager = mockServices.database({ knex }); await expect( async () => await DatabaseDocumentStore.create(databaseManager), ).rejects.toThrow(); @@ -82,7 +72,7 @@ describe('DatabaseDocumentStore', () => { async function createStore(databaseId: TestDatabaseId) { const knex = await databases.init(databaseId); - const databaseManager = createDatabaseManager(knex); + const databaseManager = mockServices.database({ knex }); const store = await DatabaseDocumentStore.create(databaseManager); return { store, knex }; diff --git a/plugins/user-settings-backend/src/database/DatabaseUserSettingsStore.test.ts b/plugins/user-settings-backend/src/database/DatabaseUserSettingsStore.test.ts index eb50e26179..3b8b18e61c 100644 --- a/plugins/user-settings-backend/src/database/DatabaseUserSettingsStore.test.ts +++ b/plugins/user-settings-backend/src/database/DatabaseUserSettingsStore.test.ts @@ -14,7 +14,11 @@ * limitations under the License. */ -import { TestDatabaseId, TestDatabases } from '@backstage/backend-test-utils'; +import { + TestDatabaseId, + TestDatabases, + mockServices, +} from '@backstage/backend-test-utils'; import { Knex } from 'knex'; import { DatabaseUserSettingsStore, @@ -29,12 +33,7 @@ const databases = TestDatabases.create({ async function createStore(databaseId: TestDatabaseId) { const knex = await databases.init(databaseId); - const databaseManager = { - getClient: async () => knex, - migrations: { - skip: false, - }, - }; + const databaseManager = mockServices.database({ knex }); return { knex, From 6c48ebdf59c9ddde6912bc76ed5aafa808539fcf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tommi=20P=C3=A4=C3=A4kk=C3=B6?= Date: Mon, 4 Nov 2024 16:13:13 +0200 Subject: [PATCH 095/161] feat(lint): Add `--max-warnings -1` option to package lint MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Tommi Pääkkö --- .changeset/loud-plants-dream.md | 5 +++++ docs/tooling/cli/03-commands.md | 13 ++++++++----- packages/cli/src/commands/index.ts | 2 +- packages/cli/src/commands/lint.ts | 6 ++++-- packages/cli/src/commands/repo/lint.ts | 7 +++++-- 5 files changed, 23 insertions(+), 10 deletions(-) create mode 100644 .changeset/loud-plants-dream.md diff --git a/.changeset/loud-plants-dream.md b/.changeset/loud-plants-dream.md new file mode 100644 index 0000000000..a5099a088d --- /dev/null +++ b/.changeset/loud-plants-dream.md @@ -0,0 +1,5 @@ +--- +'@backstage/cli': patch +--- + +Add `--max-warnings -1` support to `backstage-cli package lint` diff --git a/docs/tooling/cli/03-commands.md b/docs/tooling/cli/03-commands.md index db108a2687..2da7e11ef4 100644 --- a/docs/tooling/cli/03-commands.md +++ b/docs/tooling/cli/03-commands.md @@ -92,9 +92,11 @@ Usage: backstage-cli repo lint [options] Lint all packages in the project Options: - --format Lint report output format (default: "eslint-formatter-friendly") - --since Only lint packages that changed since the specified ref - --fix Attempt to automatically fix violations + --format Lint report output format (default: "eslint-formatter-friendly") + --since Only lint packages that changed since the specified ref + --successCache Enable success caching, which skips running tests for unchanged packages that were successful in the previous run + --successCacheDir Set the success cache location, (default: node_modules/.cache/backstage-cli) + --fix Attempt to automatically fix violations ``` ## repo test @@ -185,8 +187,9 @@ Usage: backstage-cli package lint [options] Lint a package Options: - --format Lint report output format (default: "eslint-formatter-friendly") - --fix Attempt to automatically fix violations + --format Lint report output format (default: "eslint-formatter-friendly") + --fix Attempt to automatically fix violations + --max-warnings Fail if more than this number of warnings. -1 allows warnings. (default: 0) ``` ## package test diff --git a/packages/cli/src/commands/index.ts b/packages/cli/src/commands/index.ts index 674da516a8..2a77d527c1 100644 --- a/packages/cli/src/commands/index.ts +++ b/packages/cli/src/commands/index.ts @@ -175,7 +175,7 @@ export function registerScriptCommand(program: Command) { .option('--fix', 'Attempt to automatically fix violations') .option( '--max-warnings ', - 'Fail if more than this number of warnings (default: 0)', + 'Fail if more than this number of warnings. -1 allows warnings. (default: 0)', ) .description('Lint a package') .action(lazy(() => import('./lint').then(m => m.default))); diff --git a/packages/cli/src/commands/lint.ts b/packages/cli/src/commands/lint.ts index 8816221fb4..0c67d84c86 100644 --- a/packages/cli/src/commands/lint.ts +++ b/packages/cli/src/commands/lint.ts @@ -30,11 +30,13 @@ export default async (directories: string[], opts: OptionValues) => { ); const maxWarnings = opts.maxWarnings ?? 0; + const ignoreWarnings = +maxWarnings === -1; const failed = results.some(r => r.errorCount > 0) || - results.reduce((current, next) => current + next.warningCount, 0) > - maxWarnings; + (!ignoreWarnings && + results.reduce((current, next) => current + next.warningCount, 0) > + maxWarnings); if (opts.fix) { await ESLint.outputFixes(results); diff --git a/packages/cli/src/commands/repo/lint.ts b/packages/cli/src/commands/repo/lint.ts index 50ea09046b..7be021f8dd 100644 --- a/packages/cli/src/commands/repo/lint.ts +++ b/packages/cli/src/commands/repo/lint.ts @@ -199,11 +199,14 @@ export async function command(opts: OptionValues, cmd: Command): Promise { } const maxWarnings = lintOptions?.maxWarnings ?? 0; + const ignoreWarnings = +maxWarnings === -1; + const resultText = formatter.format(results) as string; const failed = results.some(r => r.errorCount > 0) || - results.reduce((current, next) => current + next.warningCount, 0) > - maxWarnings; + (!ignoreWarnings && + results.reduce((current, next) => current + next.warningCount, 0) > + maxWarnings); return { relativeDir, From 42386c21197674dfb8807b72c4e67683cd963cd5 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Tue, 5 Nov 2024 12:34:28 +0000 Subject: [PATCH 096/161] Version Packages (next) --- .changeset/create-app-1730809984.md | 5 + .changeset/pre.json | 20 + docs/releases/v1.33.0-next.2-changelog.md | 1812 +++++++++++++++++ package.json | 2 +- packages/app-next/CHANGELOG.md | 45 + packages/app-next/package.json | 2 +- packages/app/CHANGELOG.md | 41 + packages/app/package.json | 2 +- packages/backend-app-api/CHANGELOG.md | 14 + packages/backend-app-api/package.json | 2 +- packages/backend-defaults/CHANGELOG.md | 21 + packages/backend-defaults/package.json | 2 +- .../CHANGELOG.md | 36 + .../package.json | 2 +- packages/backend-legacy/CHANGELOG.md | 41 + packages/backend-legacy/package.json | 2 +- packages/backend-openapi-utils/CHANGELOG.md | 13 + packages/backend-openapi-utils/package.json | 2 +- packages/backend-plugin-api/CHANGELOG.md | 12 + packages/backend-plugin-api/package.json | 2 +- packages/backend-test-utils/CHANGELOG.md | 18 + packages/backend-test-utils/package.json | 2 +- packages/backend/CHANGELOG.md | 38 + packages/backend/package.json | 2 +- packages/catalog-client/CHANGELOG.md | 12 + packages/catalog-client/package.json | 2 +- packages/cli/CHANGELOG.md | 22 + packages/cli/package.json | 2 +- packages/create-app/CHANGELOG.md | 8 + packages/create-app/package.json | 2 +- packages/dev-utils/CHANGELOG.md | 14 + packages/dev-utils/package.json | 2 +- packages/e2e-test/CHANGELOG.md | 9 + packages/e2e-test/package.json | 2 +- packages/repo-tools/CHANGELOG.md | 16 + packages/repo-tools/package.json | 2 +- packages/scaffolder-internal/CHANGELOG.md | 7 + packages/scaffolder-internal/package.json | 2 +- .../techdocs-cli-embedded-app/CHANGELOG.md | 19 + .../techdocs-cli-embedded-app/package.json | 2 +- packages/techdocs-cli/CHANGELOG.md | 11 + packages/techdocs-cli/package.json | 2 +- plugins/api-docs/CHANGELOG.md | 15 + plugins/api-docs/package.json | 2 +- plugins/app-backend/CHANGELOG.md | 13 + plugins/app-backend/package.json | 2 +- plugins/app-node/CHANGELOG.md | 8 + plugins/app-node/package.json | 2 +- plugins/app-visualizer/CHANGELOG.md | 10 + plugins/app-visualizer/package.json | 2 +- .../CHANGELOG.md | 8 + .../package.json | 2 +- .../CHANGELOG.md | 8 + .../package.json | 2 +- .../CHANGELOG.md | 10 + .../package.json | 2 +- .../CHANGELOG.md | 10 + .../package.json | 2 +- .../CHANGELOG.md | 8 + .../package.json | 2 +- .../CHANGELOG.md | 8 + .../package.json | 2 +- .../CHANGELOG.md | 10 + .../package.json | 2 +- .../CHANGELOG.md | 10 + .../package.json | 2 +- .../CHANGELOG.md | 8 + .../package.json | 2 +- .../CHANGELOG.md | 8 + .../package.json | 2 +- .../CHANGELOG.md | 8 + .../package.json | 2 +- .../CHANGELOG.md | 10 + .../package.json | 2 +- .../CHANGELOG.md | 8 + .../package.json | 2 +- .../CHANGELOG.md | 8 + .../package.json | 2 +- .../CHANGELOG.md | 9 + .../package.json | 2 +- .../CHANGELOG.md | 9 + .../package.json | 2 +- .../CHANGELOG.md | 8 + .../package.json | 2 +- .../CHANGELOG.md | 8 + .../package.json | 2 +- .../CHANGELOG.md | 9 + .../package.json | 2 +- .../CHANGELOG.md | 9 + .../package.json | 2 +- plugins/auth-backend/CHANGELOG.md | 31 + plugins/auth-backend/package.json | 2 +- plugins/auth-node/CHANGELOG.md | 12 + plugins/auth-node/package.json | 2 +- .../catalog-backend-module-aws/CHANGELOG.md | 16 + .../catalog-backend-module-aws/package.json | 2 +- .../catalog-backend-module-azure/CHANGELOG.md | 11 + .../catalog-backend-module-azure/package.json | 2 +- .../CHANGELOG.md | 12 + .../package.json | 2 +- .../CHANGELOG.md | 15 + .../package.json | 2 +- .../CHANGELOG.md | 12 + .../package.json | 2 +- .../catalog-backend-module-gcp/CHANGELOG.md | 11 + .../catalog-backend-module-gcp/package.json | 2 +- .../CHANGELOG.md | 11 + .../package.json | 2 +- .../CHANGELOG.md | 11 + .../package.json | 2 +- .../CHANGELOG.md | 15 + .../package.json | 2 +- .../CHANGELOG.md | 10 + .../package.json | 2 +- .../CHANGELOG.md | 18 + .../package.json | 2 +- .../CHANGELOG.md | 15 + .../package.json | 2 +- .../catalog-backend-module-ldap/CHANGELOG.md | 17 + .../catalog-backend-module-ldap/package.json | 2 +- .../catalog-backend-module-logs/CHANGELOG.md | 9 + .../catalog-backend-module-logs/package.json | 2 +- .../CHANGELOG.md | 11 + .../package.json | 2 +- .../CHANGELOG.md | 14 + .../package.json | 2 +- .../CHANGELOG.md | 12 + .../package.json | 2 +- .../CHANGELOG.md | 11 + .../package.json | 2 +- .../CHANGELOG.md | 13 + .../package.json | 2 +- plugins/catalog-backend/CHANGELOG.md | 24 + plugins/catalog-backend/package.json | 2 +- plugins/catalog-graph/CHANGELOG.md | 14 + plugins/catalog-graph/package.json | 2 +- plugins/catalog-import/CHANGELOG.md | 19 + plugins/catalog-import/package.json | 2 +- plugins/catalog-node/CHANGELOG.md | 14 + plugins/catalog-node/package.json | 2 +- plugins/catalog-react/CHANGELOG.md | 20 + plugins/catalog-react/package.json | 2 +- plugins/catalog/CHANGELOG.md | 21 + plugins/catalog/package.json | 2 +- plugins/devtools-backend/CHANGELOG.md | 15 + plugins/devtools-backend/package.json | 2 +- .../CHANGELOG.md | 10 + .../package.json | 2 +- .../events-backend-module-azure/CHANGELOG.md | 8 + .../events-backend-module-azure/package.json | 2 +- .../CHANGELOG.md | 8 + .../package.json | 2 +- .../events-backend-module-gerrit/CHANGELOG.md | 8 + .../events-backend-module-gerrit/package.json | 2 +- .../events-backend-module-github/CHANGELOG.md | 9 + .../events-backend-module-github/package.json | 2 +- .../events-backend-module-gitlab/CHANGELOG.md | 9 + .../events-backend-module-gitlab/package.json | 2 +- .../events-backend-test-utils/CHANGELOG.md | 7 + .../events-backend-test-utils/package.json | 2 +- plugins/events-backend/CHANGELOG.md | 13 + plugins/events-backend/package.json | 2 +- plugins/events-node/CHANGELOG.md | 10 + plugins/events-node/package.json | 2 +- .../example-todo-list-backend/CHANGELOG.md | 9 + .../example-todo-list-backend/package.json | 2 +- plugins/home/CHANGELOG.md | 17 + plugins/home/package.json | 2 +- plugins/kubernetes-backend/CHANGELOG.md | 20 + plugins/kubernetes-backend/package.json | 2 +- plugins/kubernetes-cluster/CHANGELOG.md | 12 + plugins/kubernetes-cluster/package.json | 2 +- plugins/kubernetes-node/CHANGELOG.md | 10 + plugins/kubernetes-node/package.json | 2 +- plugins/kubernetes/CHANGELOG.md | 14 + plugins/kubernetes/package.json | 2 +- .../CHANGELOG.md | 15 + .../package.json | 2 +- plugins/notifications-backend/CHANGELOG.md | 17 + plugins/notifications-backend/package.json | 2 +- plugins/notifications-node/CHANGELOG.md | 11 + plugins/notifications-node/package.json | 2 +- plugins/org-react/CHANGELOG.md | 11 + plugins/org-react/package.json | 2 +- plugins/org/CHANGELOG.md | 13 + plugins/org/package.json | 2 +- .../CHANGELOG.md | 10 + .../package.json | 2 +- plugins/permission-backend/CHANGELOG.md | 12 + plugins/permission-backend/package.json | 2 +- plugins/permission-node/CHANGELOG.md | 11 + plugins/permission-node/package.json | 2 +- plugins/proxy-backend/CHANGELOG.md | 9 + plugins/proxy-backend/package.json | 2 +- .../CHANGELOG.md | 11 + .../package.json | 2 +- .../CHANGELOG.md | 12 + .../package.json | 2 +- .../CHANGELOG.md | 11 + .../package.json | 2 +- .../CHANGELOG.md | 13 + .../package.json | 2 +- .../CHANGELOG.md | 11 + .../package.json | 2 +- .../CHANGELOG.md | 13 + .../package.json | 2 +- .../CHANGELOG.md | 11 + .../package.json | 2 +- .../CHANGELOG.md | 11 + .../package.json | 2 +- .../CHANGELOG.md | 11 + .../package.json | 2 +- .../CHANGELOG.md | 13 + .../package.json | 2 +- .../CHANGELOG.md | 11 + .../package.json | 2 +- .../CHANGELOG.md | 10 + .../package.json | 2 +- .../CHANGELOG.md | 12 + .../package.json | 2 +- .../CHANGELOG.md | 10 + .../package.json | 2 +- .../CHANGELOG.md | 10 + .../package.json | 2 +- plugins/scaffolder-backend/CHANGELOG.md | 30 + plugins/scaffolder-backend/package.json | 2 +- .../scaffolder-node-test-utils/CHANGELOG.md | 9 + .../scaffolder-node-test-utils/package.json | 2 +- plugins/scaffolder-node/CHANGELOG.md | 12 + plugins/scaffolder-node/package.json | 2 +- plugins/scaffolder-react/CHANGELOG.md | 17 + plugins/scaffolder-react/package.json | 2 +- plugins/scaffolder/CHANGELOG.md | 22 + plugins/scaffolder/package.json | 2 +- .../CHANGELOG.md | 16 + .../package.json | 2 +- .../CHANGELOG.md | 11 + .../package.json | 2 +- .../CHANGELOG.md | 10 + .../package.json | 2 +- plugins/search-backend-module-pg/CHANGELOG.md | 10 + plugins/search-backend-module-pg/package.json | 2 +- .../CHANGELOG.md | 10 + .../package.json | 2 +- .../CHANGELOG.md | 16 + .../package.json | 2 +- plugins/search-backend-node/CHANGELOG.md | 12 + plugins/search-backend-node/package.json | 2 +- plugins/search-backend/CHANGELOG.md | 20 + plugins/search-backend/package.json | 2 +- plugins/search/CHANGELOG.md | 16 + plugins/search/package.json | 2 +- plugins/signals-backend/CHANGELOG.md | 12 + plugins/signals-backend/package.json | 2 +- plugins/signals-node/CHANGELOG.md | 11 + plugins/signals-node/package.json | 2 +- .../techdocs-addons-test-utils/CHANGELOG.md | 15 + .../techdocs-addons-test-utils/package.json | 2 +- plugins/techdocs-backend/CHANGELOG.md | 18 + plugins/techdocs-backend/package.json | 2 +- plugins/techdocs-node/CHANGELOG.md | 14 + plugins/techdocs-node/package.json | 2 +- plugins/techdocs/CHANGELOG.md | 22 + plugins/techdocs/package.json | 2 +- plugins/user-settings-backend/CHANGELOG.md | 14 + plugins/user-settings-backend/package.json | 2 +- plugins/user-settings/CHANGELOG.md | 18 + plugins/user-settings/package.json | 2 +- 268 files changed, 3779 insertions(+), 133 deletions(-) create mode 100644 .changeset/create-app-1730809984.md create mode 100644 docs/releases/v1.33.0-next.2-changelog.md diff --git a/.changeset/create-app-1730809984.md b/.changeset/create-app-1730809984.md new file mode 100644 index 0000000000..b50d431d4b --- /dev/null +++ b/.changeset/create-app-1730809984.md @@ -0,0 +1,5 @@ +--- +'@backstage/create-app': patch +--- + +Bumped create-app version. diff --git a/.changeset/pre.json b/.changeset/pre.json index 68ff2e92d0..2af6227d6d 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -196,8 +196,11 @@ }, "changesets": [ "afraid-bananas-behave", + "big-tips-heal", + "bright-singers-do", "chilled-taxis-dance", "create-app-1729608704", + "create-app-1730809984", "curvy-bears-nail", "cyan-trees-bow", "early-cobras-compare", @@ -207,15 +210,21 @@ "flat-feet-do", "forty-pets-wave", "forty-spoons-burn", + "fresh-jeans-relate", + "friendly-melons-shake", "green-tools-arrive", "grumpy-shoes-return", "healthy-lions-judge", + "healthy-tables-wonder", "heavy-mice-raise", + "heavy-phones-shave", "hungry-owls-sell", "itchy-elephants-trade", "khaki-fireants-march", "late-kings-wave", + "little-rivers-deny", "loud-trainers-yawn", + "lucky-bananas-eat", "mean-years-deliver", "metal-files-itch", "mighty-jobs-unite", @@ -225,26 +234,35 @@ "perfect-goats-mate", "plenty-students-check", "pretty-zebras-listen", + "purple-masks-swim", "quick-cougars-fry", "rare-otters-judge", "rare-trains-scream", "red-fishes-press", "renovate-3d822ce", "renovate-7b59eed", + "renovate-b2c2aaf", "renovate-bcc9782", "rotten-lions-cover", "rotten-needles-relax", "selfish-ads-count", + "selfish-spies-cough", "short-geckos-sniff", "shy-clouds-brake", "shy-pots-speak", "shy-rats-hear", "silent-wasps-whisper", + "silly-kiwis-destroy", + "silver-ears-grin", + "silver-kings-sort", "slimy-jobs-scream", + "slimy-penguins-care", "slow-mayflies-sleep", "slow-shrimps-call", + "smart-bags-sell", "spotty-snails-worry", "swift-laws-applaud", + "ten-pears-unite", "three-mangos-dance", "tough-onions-dance", "tricky-crabs-lick", @@ -253,8 +271,10 @@ "violet-ears-dance", "warm-tomatoes-develop", "wild-experts-unite", + "wise-avocados-behave", "witty-bobcats-push", "witty-socks-repeat", + "yellow-horses-pretend", "young-penguins-act" ] } diff --git a/docs/releases/v1.33.0-next.2-changelog.md b/docs/releases/v1.33.0-next.2-changelog.md new file mode 100644 index 0000000000..f967286e69 --- /dev/null +++ b/docs/releases/v1.33.0-next.2-changelog.md @@ -0,0 +1,1812 @@ +# Release v1.33.0-next.2 + +Upgrade Helper: [https://backstage.github.io/upgrade-helper/?to=1.33.0-next.2](https://backstage.github.io/upgrade-helper/?to=1.33.0-next.2) + +## @backstage/backend-dynamic-feature-service@0.5.0-next.2 + +### Minor Changes + +- e939cd7: **BREAKING** The `dynamicPluginsFeatureLoader` options related to the root logger behavior (`transports`, `level`, `format`) are now gathered under a single `logger` option which is a function taking an optional `Config` argument and returning the logger options. + + This breaking change is required for 2 reasons: + + - it's totally possible that the current `Config` would be required to provide the logger options, + - the logger-related options should be gathered under a common `logger` option because, when the root auditing service is introduced, distinct but similarly-named options would be required for the auditor as well. + +### Patch Changes + +- 1aeec12: Enhance the `CommonJSModuleLoader` to add support for `resolvePackagePath` calls from backend dynamic plugins, with customizable package resolution, and make the `CommonJSModuleLoader` public API. + Fixing this backend dynamic plugin limitation related to `resolvePackagePath` is important for backend dynamic plugins which use the database, since database migration scripts systematically use `resolvePackagePath`. +- Updated dependencies + - @backstage/plugin-catalog-backend@1.28.0-next.2 + - @backstage/backend-defaults@0.5.3-next.2 + - @backstage/plugin-events-backend@0.3.16-next.2 + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-app-api@1.0.2-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/cli-common@0.1.15-next.0 + - @backstage/cli-node@0.2.10-next.0 + - @backstage/config@1.2.0 + - @backstage/config-loader@1.9.2-next.0 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + - @backstage/plugin-app-node@0.1.27-next.2 + - @backstage/plugin-permission-common@0.8.1 + - @backstage/plugin-permission-node@0.8.5-next.2 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + - @backstage/plugin-search-backend-node@1.3.5-next.2 + - @backstage/plugin-search-common@1.2.14 + +## @backstage/backend-openapi-utils@0.3.0-next.2 + +### Minor Changes + +- 1440232: Adds a new `createValidatedOpenApiRouterFromGeneratedEndpointMap` function that uses the new static server generation in `backstage-cli package schema openapi generate --server` to create a typed express router. + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + +## @backstage/backend-test-utils@1.1.0-next.2 + +### Minor Changes + +- 5064827: Made it possible to construct `mockServices.database` with a given knex instance + +### Patch Changes + +- Updated dependencies + - @backstage/backend-defaults@0.5.3-next.2 + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-app-api@1.0.2-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + +## @backstage/catalog-client@1.8.0-next.1 + +### Minor Changes + +- 656d1ef: Internal update to use the updated generated code from `backstage-cli package schema openapi generate --client-package ...`. + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.7.0 + - @backstage/errors@1.2.4 + +## @backstage/cli@0.29.0-next.2 + +### Minor Changes + +- bc47b17: **BREAKING**: Updates ESLint config to ignore all generated source code under `src/**/generated/**/*.ts`. + +### Patch Changes + +- e19c53c: Fix for the `--link` flag for `package start` to deduplicate `react-router` and `react-router-dom`. +- e565f73: Added support for `.webp` files in the frontend tooling. +- Updated dependencies + - @backstage/catalog-model@1.7.0 + - @backstage/cli-common@0.1.15-next.0 + - @backstage/cli-node@0.2.10-next.0 + - @backstage/config@1.2.0 + - @backstage/config-loader@1.9.2-next.0 + - @backstage/errors@1.2.4 + - @backstage/eslint-plugin@0.1.10 + - @backstage/integration@1.15.1 + - @backstage/release-manifests@0.0.11 + - @backstage/types@1.1.1 + +## @backstage/repo-tools@0.11.0-next.2 + +### Minor Changes + +- 1440232: `backstage-repo-tools package schema openapi generate --server` now generates complete TS interfaces for all request/response objects in your OpenAPI schema. This fixes an edge case around recursive schemas and standardizes both the generated client and server to have similar generated types. + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/cli-common@0.1.15-next.0 + - @backstage/cli-node@0.2.10-next.0 + - @backstage/config-loader@1.9.2-next.0 + - @backstage/errors@1.2.4 + +## @backstage/plugin-catalog-backend@1.28.0-next.2 + +### Minor Changes + +- 39fd704: Internal update to use the new generated server types from `backstage-cli package schema openapi generate --server`. + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/backend-openapi-utils@0.3.0-next.2 + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/plugin-search-backend-module-catalog@0.2.5-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/types@1.1.1 + - @backstage/plugin-catalog-common@1.1.0 + - @backstage/plugin-permission-common@0.8.1 + - @backstage/plugin-permission-node@0.8.5-next.2 + +## @backstage/plugin-catalog-backend-module-gitlab@0.5.0-next.2 + +### Minor Changes + +- 1b5fdd9: Extended the configuration with the `includeArchivedRepos` property, which allows including repositories when the project is archived. + +### Patch Changes + +- Updated dependencies + - @backstage/backend-defaults@0.5.3-next.2 + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/integration@1.15.1 + - @backstage/plugin-catalog-common@1.1.0 + +## @backstage/plugin-catalog-backend-module-ldap@0.10.0-next.2 + +### Minor Changes + +- 415aeb3: Add Support for Google LDAP Vendor + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + - @backstage/plugin-catalog-common@1.1.0 + +## @backstage/plugin-search-backend@1.7.0-next.2 + +### Minor Changes + +- 39fd704: Internal update to use the new generated server types from `backstage-cli package schema openapi generate --server`. + +### Patch Changes + +- Updated dependencies + - @backstage/backend-defaults@0.5.3-next.2 + - @backstage/backend-openapi-utils@0.3.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + - @backstage/plugin-permission-common@0.8.1 + - @backstage/plugin-permission-node@0.8.5-next.2 + - @backstage/plugin-search-backend-node@1.3.5-next.2 + - @backstage/plugin-search-common@1.2.14 + +## @backstage/backend-app-api@1.0.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/cli-common@0.1.15-next.0 + - @backstage/config@1.2.0 + - @backstage/config-loader@1.9.2-next.0 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + - @backstage/plugin-permission-node@0.8.5-next.2 + +## @backstage/backend-defaults@0.5.3-next.2 + +### Patch Changes + +- e30bb46: Disabling database migrations now correctly uses the `backend.default.skipMigrations` config value. +- Updated dependencies + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-app-api@1.0.2-next.2 + - @backstage/backend-dev-utils@0.1.5 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/cli-common@0.1.15-next.0 + - @backstage/cli-node@0.2.10-next.0 + - @backstage/config@1.2.0 + - @backstage/config-loader@1.9.2-next.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/integration-aws-node@0.1.12 + - @backstage/types@1.1.1 + - @backstage/plugin-permission-node@0.8.5-next.2 + +## @backstage/backend-plugin-api@1.0.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/cli-common@0.1.15-next.0 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + - @backstage/plugin-permission-common@0.8.1 + +## @backstage/create-app@0.5.22-next.2 + +### Patch Changes + +- Bumped create-app version. +- Updated dependencies + - @backstage/cli-common@0.1.15-next.0 + +## @backstage/dev-utils@1.1.3-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/app-defaults@1.5.13-next.1 + - @backstage/catalog-model@1.7.0 + - @backstage/core-app-api@1.15.1 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/integration-react@1.2.0 + - @backstage/theme@0.6.1-next.0 + +## @techdocs/cli@1.8.22-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-defaults@0.5.3-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/cli-common@0.1.15-next.0 + - @backstage/config@1.2.0 + - @backstage/plugin-techdocs-node@1.12.13-next.2 + +## @backstage/plugin-api-docs@0.11.12-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog@1.24.1-next.2 + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/core-compat-api@0.3.2-next.1 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/frontend-plugin-api@0.9.1-next.1 + - @backstage/plugin-catalog-common@1.1.0 + - @backstage/plugin-permission-react@0.4.27 + +## @backstage/plugin-app-backend@0.3.77-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/config-loader@1.9.2-next.0 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + - @backstage/plugin-app-node@0.1.27-next.2 + +## @backstage/plugin-app-node@0.1.27-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config-loader@1.9.2-next.0 + +## @backstage/plugin-app-visualizer@0.1.12-next.2 + +### Patch Changes + +- e586e77: New `devDependency` for local development setup. +- Updated dependencies + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/frontend-plugin-api@0.9.1-next.1 + +## @backstage/plugin-auth-backend@0.24.0-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + - @backstage/plugin-auth-backend-module-atlassian-provider@0.3.2-next.2 + - @backstage/plugin-auth-backend-module-auth0-provider@0.1.2-next.2 + - @backstage/plugin-auth-backend-module-aws-alb-provider@0.3.0-next.2 + - @backstage/plugin-auth-backend-module-azure-easyauth-provider@0.2.2-next.2 + - @backstage/plugin-auth-backend-module-bitbucket-provider@0.2.2-next.2 + - @backstage/plugin-auth-backend-module-bitbucket-server-provider@0.1.2-next.2 + - @backstage/plugin-auth-backend-module-cloudflare-access-provider@0.3.2-next.2 + - @backstage/plugin-auth-backend-module-gcp-iap-provider@0.3.2-next.2 + - @backstage/plugin-auth-backend-module-github-provider@0.2.2-next.2 + - @backstage/plugin-auth-backend-module-gitlab-provider@0.2.2-next.2 + - @backstage/plugin-auth-backend-module-google-provider@0.2.2-next.2 + - @backstage/plugin-auth-backend-module-microsoft-provider@0.2.2-next.2 + - @backstage/plugin-auth-backend-module-oauth2-provider@0.3.2-next.2 + - @backstage/plugin-auth-backend-module-oauth2-proxy-provider@0.2.2-next.2 + - @backstage/plugin-auth-backend-module-oidc-provider@0.3.2-next.2 + - @backstage/plugin-auth-backend-module-okta-provider@0.1.2-next.2 + - @backstage/plugin-auth-backend-module-onelogin-provider@0.2.2-next.2 + +## @backstage/plugin-auth-backend-module-atlassian-provider@0.3.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + +## @backstage/plugin-auth-backend-module-auth0-provider@0.1.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + +## @backstage/plugin-auth-backend-module-aws-alb-provider@0.3.0-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-backend@0.24.0-next.2 + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/errors@1.2.4 + +## @backstage/plugin-auth-backend-module-azure-easyauth-provider@0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/errors@1.2.4 + +## @backstage/plugin-auth-backend-module-bitbucket-provider@0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + +## @backstage/plugin-auth-backend-module-bitbucket-server-provider@0.1.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + +## @backstage/plugin-auth-backend-module-cloudflare-access-provider@0.3.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + +## @backstage/plugin-auth-backend-module-gcp-iap-provider@0.3.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + +## @backstage/plugin-auth-backend-module-github-provider@0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + +## @backstage/plugin-auth-backend-module-gitlab-provider@0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + +## @backstage/plugin-auth-backend-module-google-provider@0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + +## @backstage/plugin-auth-backend-module-guest-provider@0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/errors@1.2.4 + +## @backstage/plugin-auth-backend-module-microsoft-provider@0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + +## @backstage/plugin-auth-backend-module-oauth2-provider@0.3.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + +## @backstage/plugin-auth-backend-module-oauth2-proxy-provider@0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/errors@1.2.4 + +## @backstage/plugin-auth-backend-module-oidc-provider@0.3.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-backend@0.24.0-next.2 + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + +## @backstage/plugin-auth-backend-module-okta-provider@0.1.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + +## @backstage/plugin-auth-backend-module-onelogin-provider@0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + +## @backstage/plugin-auth-backend-module-pinniped-provider@0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + +## @backstage/plugin-auth-backend-module-vmware-cloud-provider@0.4.1-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + +## @backstage/plugin-auth-node@0.5.4-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + +## @backstage/plugin-catalog@1.24.1-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/core-compat-api@0.3.2-next.1 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/errors@1.2.4 + - @backstage/frontend-plugin-api@0.9.1-next.1 + - @backstage/integration-react@1.2.0 + - @backstage/types@1.1.1 + - @backstage/plugin-catalog-common@1.1.0 + - @backstage/plugin-permission-react@0.4.27 + - @backstage/plugin-scaffolder-common@1.5.6 + - @backstage/plugin-search-common@1.2.14 + - @backstage/plugin-search-react@1.8.2-next.1 + +## @backstage/plugin-catalog-backend-module-aws@0.4.5-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-defaults@0.5.3-next.2 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/integration-aws-node@0.1.12 + - @backstage/plugin-catalog-common@1.1.0 + - @backstage/plugin-kubernetes-common@0.9.0-next.0 + +## @backstage/plugin-catalog-backend-module-azure@0.2.4-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/integration@1.15.1 + - @backstage/plugin-catalog-common@1.1.0 + +## @backstage/plugin-catalog-backend-module-backstage-openapi@0.4.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-openapi-utils@0.3.0-next.2 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + +## @backstage/plugin-catalog-backend-module-bitbucket-cloud@0.4.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/integration@1.15.1 + - @backstage/plugin-bitbucket-cloud-common@0.2.24 + - @backstage/plugin-catalog-common@1.1.0 + +## @backstage/plugin-catalog-backend-module-bitbucket-server@0.2.4-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + +## @backstage/plugin-catalog-backend-module-gcp@0.3.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/plugin-kubernetes-common@0.9.0-next.0 + +## @backstage/plugin-catalog-backend-module-gerrit@0.2.4-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + +## @backstage/plugin-catalog-backend-module-github@0.7.7-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/plugin-catalog-backend@1.28.0-next.2 + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/integration@1.15.1 + - @backstage/plugin-catalog-common@1.1.0 + +## @backstage/plugin-catalog-backend-module-github-org@0.3.4-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/plugin-catalog-backend-module-github@0.7.7-next.2 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + +## @backstage/plugin-catalog-backend-module-gitlab-org@0.2.3-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-backend-module-gitlab@0.5.0-next.2 + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + +## @backstage/plugin-catalog-backend-module-incremental-ingestion@0.6.0-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-backend@1.28.0-next.2 + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + - @backstage/plugin-permission-common@0.8.1 + +## @backstage/plugin-catalog-backend-module-logs@0.1.4-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-backend@1.28.0-next.2 + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + +## @backstage/plugin-catalog-backend-module-msgraph@0.6.4-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/plugin-catalog-common@1.1.0 + +## @backstage/plugin-catalog-backend-module-openapi@0.2.4-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-backend@1.28.0-next.2 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/integration@1.15.1 + - @backstage/types@1.1.1 + - @backstage/plugin-catalog-common@1.1.0 + +## @backstage/plugin-catalog-backend-module-puppetdb@0.2.4-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + +## @backstage/plugin-catalog-backend-module-scaffolder-entity-model@0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/plugin-catalog-common@1.1.0 + - @backstage/plugin-scaffolder-common@1.5.6 + +## @backstage/plugin-catalog-backend-module-unprocessed@0.5.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/errors@1.2.4 + - @backstage/plugin-catalog-unprocessed-entities-common@0.0.4 + - @backstage/plugin-permission-common@0.8.1 + +## @backstage/plugin-catalog-graph@0.4.12-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/core-compat-api@0.3.2-next.1 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/frontend-plugin-api@0.9.1-next.1 + - @backstage/types@1.1.1 + +## @backstage/plugin-catalog-import@0.12.6-next.2 + +### Patch Changes + +- ea5b7f3: Fixed parsing of catalog-info.yaml when creating a PR to register a repository if the file contains more than one document +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/core-compat-api@0.3.2-next.1 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/errors@1.2.4 + - @backstage/frontend-plugin-api@0.9.1-next.1 + - @backstage/integration@1.15.1 + - @backstage/integration-react@1.2.0 + - @backstage/plugin-catalog-common@1.1.0 + +## @backstage/plugin-catalog-node@1.14.0-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + - @backstage/plugin-catalog-common@1.1.0 + - @backstage/plugin-permission-common@0.8.1 + - @backstage/plugin-permission-node@0.8.5-next.2 + +## @backstage/plugin-catalog-react@1.14.1-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/catalog-model@1.7.0 + - @backstage/core-compat-api@0.3.2-next.1 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/errors@1.2.4 + - @backstage/frontend-plugin-api@0.9.1-next.1 + - @backstage/frontend-test-utils@0.2.2-next.1 + - @backstage/integration-react@1.2.0 + - @backstage/types@1.1.1 + - @backstage/version-bridge@1.0.10 + - @backstage/plugin-catalog-common@1.1.0 + - @backstage/plugin-permission-common@0.8.1 + - @backstage/plugin-permission-react@0.4.27 + +## @backstage/plugin-devtools-backend@0.4.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/cli-common@0.1.15-next.0 + - @backstage/config@1.2.0 + - @backstage/config-loader@1.9.2-next.0 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + - @backstage/plugin-devtools-common@0.1.12 + - @backstage/plugin-permission-common@0.8.1 + - @backstage/plugin-permission-node@0.8.5-next.2 + +## @backstage/plugin-events-backend@0.3.16-next.2 + +### Patch Changes + +- b7d0334: Cleaning up event subscriptions after the max age window +- Updated dependencies + - @backstage/backend-openapi-utils@0.3.0-next.2 + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + +## @backstage/plugin-events-backend-module-aws-sqs@0.4.5-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/types@1.1.1 + +## @backstage/plugin-events-backend-module-azure@0.2.14-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + +## @backstage/plugin-events-backend-module-bitbucket-cloud@0.2.14-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + +## @backstage/plugin-events-backend-module-gerrit@0.2.14-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + +## @backstage/plugin-events-backend-module-github@0.2.14-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + +## @backstage/plugin-events-backend-module-gitlab@0.2.14-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + +## @backstage/plugin-events-backend-test-utils@0.1.38-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-events-node@0.4.5-next.2 + +## @backstage/plugin-events-node@0.4.5-next.2 + +### Patch Changes + +- 0b57aa1: Fixed an issue where the event bus polling would duplicate and increase exponentially over time. +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + +## @backstage/plugin-home@0.8.1-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/core-app-api@1.15.1 + - @backstage/core-compat-api@0.3.2-next.1 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/frontend-plugin-api@0.9.1-next.1 + - @backstage/theme@0.6.1-next.0 + - @backstage/plugin-home-react@0.1.19-next.1 + +## @backstage/plugin-kubernetes@0.12.0-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/core-compat-api@0.3.2-next.1 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/frontend-plugin-api@0.9.1-next.1 + - @backstage/plugin-kubernetes-common@0.9.0-next.0 + - @backstage/plugin-kubernetes-react@0.5.0-next.1 + +## @backstage/plugin-kubernetes-backend@0.19.0-next.2 + +### Patch Changes + +- bee9664: Adapted the config.d.ts for custom k8s cluster authProvider implementations +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration-aws-node@0.1.12 + - @backstage/types@1.1.1 + - @backstage/plugin-kubernetes-common@0.9.0-next.0 + - @backstage/plugin-kubernetes-node@0.2.0-next.2 + - @backstage/plugin-permission-common@0.8.1 + - @backstage/plugin-permission-node@0.8.5-next.2 + +## @backstage/plugin-kubernetes-cluster@0.0.18-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/plugin-kubernetes-common@0.9.0-next.0 + - @backstage/plugin-kubernetes-react@0.5.0-next.1 + +## @backstage/plugin-kubernetes-node@0.2.0-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/types@1.1.1 + - @backstage/plugin-kubernetes-common@0.9.0-next.0 + +## @backstage/plugin-notifications-backend@0.4.3-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/plugin-notifications-node@0.2.9-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/plugin-notifications-common@0.0.6-next.0 + - @backstage/plugin-signals-node@0.1.14-next.2 + +## @backstage/plugin-notifications-backend-module-email@0.3.3-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/plugin-notifications-node@0.2.9-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/integration-aws-node@0.1.12 + - @backstage/types@1.1.1 + - @backstage/plugin-notifications-common@0.0.6-next.0 + +## @backstage/plugin-notifications-node@0.2.9-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/plugin-notifications-common@0.0.6-next.0 + - @backstage/plugin-signals-node@0.1.14-next.2 + +## @backstage/plugin-org@0.6.32-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/core-compat-api@0.3.2-next.1 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/frontend-plugin-api@0.9.1-next.1 + - @backstage/plugin-catalog-common@1.1.0 + +## @backstage/plugin-org-react@0.1.31-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + +## @backstage/plugin-permission-backend@0.5.51-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/plugin-permission-common@0.8.1 + - @backstage/plugin-permission-node@0.8.5-next.2 + +## @backstage/plugin-permission-backend-module-allow-all-policy@0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/plugin-permission-common@0.8.1 + - @backstage/plugin-permission-node@0.8.5-next.2 + +## @backstage/plugin-permission-node@0.8.5-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/plugin-permission-common@0.8.1 + +## @backstage/plugin-proxy-backend@0.5.8-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/types@1.1.1 + +## @backstage/plugin-scaffolder@1.26.3-next.2 + +### Patch Changes + +- 8e4bed4: Updated dependency `idb-keyval` to `5.1.5`. +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/plugin-scaffolder-react@1.13.3-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/core-compat-api@0.3.2-next.1 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/errors@1.2.4 + - @backstage/frontend-plugin-api@0.9.1-next.1 + - @backstage/integration@1.15.1 + - @backstage/integration-react@1.2.0 + - @backstage/types@1.1.1 + - @backstage/plugin-catalog-common@1.1.0 + - @backstage/plugin-permission-react@0.4.27 + - @backstage/plugin-scaffolder-common@1.5.6 + +## @backstage/plugin-scaffolder-backend@1.27.0-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/backend-defaults@0.5.3-next.2 + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/plugin-scaffolder-backend-module-github@0.5.2-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/types@1.1.1 + - @backstage/plugin-bitbucket-cloud-common@0.2.24 + - @backstage/plugin-catalog-backend-module-scaffolder-entity-model@0.2.2-next.2 + - @backstage/plugin-permission-common@0.8.1 + - @backstage/plugin-permission-node@0.8.5-next.2 + - @backstage/plugin-scaffolder-backend-module-azure@0.2.2-next.2 + - @backstage/plugin-scaffolder-backend-module-bitbucket@0.3.2-next.2 + - @backstage/plugin-scaffolder-backend-module-bitbucket-cloud@0.2.2-next.2 + - @backstage/plugin-scaffolder-backend-module-bitbucket-server@0.2.2-next.2 + - @backstage/plugin-scaffolder-backend-module-gerrit@0.2.2-next.2 + - @backstage/plugin-scaffolder-backend-module-gitea@0.2.2-next.2 + - @backstage/plugin-scaffolder-backend-module-gitlab@0.6.1-next.2 + - @backstage/plugin-scaffolder-common@1.5.6 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + +## @backstage/plugin-scaffolder-backend-module-azure@0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + +## @backstage/plugin-scaffolder-backend-module-bitbucket@0.3.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/plugin-scaffolder-backend-module-bitbucket-cloud@0.2.2-next.2 + - @backstage/plugin-scaffolder-backend-module-bitbucket-server@0.2.2-next.2 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + +## @backstage/plugin-scaffolder-backend-module-bitbucket-cloud@0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/plugin-bitbucket-cloud-common@0.2.24 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + +## @backstage/plugin-scaffolder-backend-module-bitbucket-server@0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + +## @backstage/plugin-scaffolder-backend-module-confluence-to-markdown@0.3.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + +## @backstage/plugin-scaffolder-backend-module-cookiecutter@0.3.3-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-defaults@0.5.3-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/types@1.1.1 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + +## @backstage/plugin-scaffolder-backend-module-gcp@0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + +## @backstage/plugin-scaffolder-backend-module-gerrit@0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + +## @backstage/plugin-scaffolder-backend-module-gitea@0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + +## @backstage/plugin-scaffolder-backend-module-github@0.5.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + +## @backstage/plugin-scaffolder-backend-module-gitlab@0.6.1-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + +## @backstage/plugin-scaffolder-backend-module-notifications@0.1.3-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-notifications-node@0.2.9-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/plugin-notifications-common@0.0.6-next.0 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + +## @backstage/plugin-scaffolder-backend-module-rails@0.5.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/types@1.1.1 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + +## @backstage/plugin-scaffolder-backend-module-sentry@0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + +## @backstage/plugin-scaffolder-backend-module-yeoman@0.4.3-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/types@1.1.1 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + - @backstage/plugin-scaffolder-node-test-utils@0.1.15-next.2 + +## @backstage/plugin-scaffolder-node@0.5.1-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/types@1.1.1 + - @backstage/plugin-scaffolder-common@1.5.6 + +## @backstage/plugin-scaffolder-node-test-utils@0.1.15-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-test-utils@1.1.0-next.2 + - @backstage/types@1.1.1 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + +## @backstage/plugin-scaffolder-react@1.13.3-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/frontend-plugin-api@0.9.1-next.1 + - @backstage/theme@0.6.1-next.0 + - @backstage/types@1.1.1 + - @backstage/version-bridge@1.0.10 + - @backstage/plugin-permission-react@0.4.27 + - @backstage/plugin-scaffolder-common@1.5.6 + +## @backstage/plugin-search@1.4.19-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/core-compat-api@0.3.2-next.1 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/errors@1.2.4 + - @backstage/frontend-plugin-api@0.9.1-next.1 + - @backstage/types@1.1.1 + - @backstage/version-bridge@1.0.10 + - @backstage/plugin-search-common@1.2.14 + - @backstage/plugin-search-react@1.8.2-next.1 + +## @backstage/plugin-search-backend-module-catalog@0.2.5-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/plugin-catalog-common@1.1.0 + - @backstage/plugin-permission-common@0.8.1 + - @backstage/plugin-search-backend-node@1.3.5-next.2 + - @backstage/plugin-search-common@1.2.14 + +## @backstage/plugin-search-backend-module-elasticsearch@1.6.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/integration-aws-node@0.1.12 + - @backstage/plugin-search-backend-node@1.3.5-next.2 + - @backstage/plugin-search-common@1.2.14 + +## @backstage/plugin-search-backend-module-explore@0.2.5-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/plugin-search-backend-node@1.3.5-next.2 + - @backstage/plugin-search-common@1.2.14 + +## @backstage/plugin-search-backend-module-pg@0.5.38-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/plugin-search-backend-node@1.3.5-next.2 + - @backstage/plugin-search-common@1.2.14 + +## @backstage/plugin-search-backend-module-stack-overflow-collator@0.3.3-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/plugin-search-backend-node@1.3.5-next.2 + - @backstage/plugin-search-common@1.2.14 + +## @backstage/plugin-search-backend-module-techdocs@0.3.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/plugin-catalog-common@1.1.0 + - @backstage/plugin-permission-common@0.8.1 + - @backstage/plugin-search-backend-node@1.3.5-next.2 + - @backstage/plugin-search-common@1.2.14 + - @backstage/plugin-techdocs-node@1.12.13-next.2 + +## @backstage/plugin-search-backend-node@1.3.5-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-defaults@0.5.3-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/plugin-permission-common@0.8.1 + - @backstage/plugin-search-common@1.2.14 + +## @backstage/plugin-signals-backend@0.2.3-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/types@1.1.1 + - @backstage/plugin-signals-node@0.1.14-next.2 + +## @backstage/plugin-signals-node@0.1.14-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/types@1.1.1 + +## @backstage/plugin-techdocs@1.11.1-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/core-compat-api@0.3.2-next.1 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/errors@1.2.4 + - @backstage/frontend-plugin-api@0.9.1-next.1 + - @backstage/integration@1.15.1 + - @backstage/integration-react@1.2.0 + - @backstage/theme@0.6.1-next.0 + - @backstage/plugin-auth-react@0.1.8-next.1 + - @backstage/plugin-search-common@1.2.14 + - @backstage/plugin-search-react@1.8.2-next.1 + - @backstage/plugin-techdocs-common@0.1.0 + - @backstage/plugin-techdocs-react@1.2.10-next.1 + +## @backstage/plugin-techdocs-addons-test-utils@1.0.41-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog@1.24.1-next.2 + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/core-app-api@1.15.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/integration-react@1.2.0 + - @backstage/test-utils@1.7.1-next.0 + - @backstage/plugin-search-react@1.8.2-next.1 + - @backstage/plugin-techdocs@1.11.1-next.2 + - @backstage/plugin-techdocs-react@1.2.10-next.1 + +## @backstage/plugin-techdocs-backend@1.11.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/plugin-search-backend-module-techdocs@0.3.2-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/plugin-catalog-common@1.1.0 + - @backstage/plugin-permission-common@0.8.1 + - @backstage/plugin-techdocs-common@0.1.0 + - @backstage/plugin-techdocs-node@1.12.13-next.2 + +## @backstage/plugin-techdocs-node@1.12.13-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/integration-aws-node@0.1.12 + - @backstage/plugin-search-common@1.2.14 + - @backstage/plugin-techdocs-common@0.1.0 + +## @backstage/plugin-user-settings@0.8.15-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/core-app-api@1.15.1 + - @backstage/core-compat-api@0.3.2-next.1 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/errors@1.2.4 + - @backstage/frontend-plugin-api@0.9.1-next.1 + - @backstage/theme@0.6.1-next.0 + - @backstage/types@1.1.1 + - @backstage/plugin-signals-react@0.0.6 + - @backstage/plugin-user-settings-common@0.0.1 + +## @backstage/plugin-user-settings-backend@0.2.27-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-defaults@0.5.3-next.2 + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + - @backstage/plugin-signals-node@0.1.14-next.2 + - @backstage/plugin-user-settings-common@0.0.1 + +## example-app@0.2.103-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/cli@0.29.0-next.2 + - @backstage/plugin-catalog-import@0.12.6-next.2 + - @backstage/plugin-scaffolder@1.26.3-next.2 + - @backstage/plugin-catalog@1.24.1-next.2 + - @backstage/plugin-catalog-graph@0.4.12-next.2 + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/plugin-home@0.8.1-next.2 + - @backstage/plugin-org@0.6.32-next.2 + - @backstage/plugin-scaffolder-react@1.13.3-next.2 + - @backstage/app-defaults@1.5.13-next.1 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/core-app-api@1.15.1 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/frontend-app-api@0.10.1-next.1 + - @backstage/integration-react@1.2.0 + - @backstage/theme@0.6.1-next.0 + - @backstage/plugin-api-docs@0.11.12-next.2 + - @backstage/plugin-auth-react@0.1.8-next.1 + - @backstage/plugin-catalog-common@1.1.0 + - @backstage/plugin-catalog-unprocessed-entities@0.2.10-next.1 + - @backstage/plugin-devtools@0.1.20-next.1 + - @backstage/plugin-kubernetes@0.12.0-next.2 + - @backstage/plugin-kubernetes-cluster@0.0.18-next.2 + - @backstage/plugin-notifications@0.3.3-next.1 + - @backstage/plugin-permission-react@0.4.27 + - @backstage/plugin-search@1.4.19-next.2 + - @backstage/plugin-search-common@1.2.14 + - @backstage/plugin-search-react@1.8.2-next.1 + - @backstage/plugin-signals@0.0.12-next.1 + - @backstage/plugin-techdocs@1.11.1-next.2 + - @backstage/plugin-techdocs-module-addons-contrib@1.1.17-next.1 + - @backstage/plugin-techdocs-react@1.2.10-next.1 + - @backstage/plugin-user-settings@0.8.15-next.2 + +## example-app-next@0.0.17-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/cli@0.29.0-next.2 + - @backstage/plugin-catalog-import@0.12.6-next.2 + - @backstage/plugin-scaffolder@1.26.3-next.2 + - @backstage/plugin-app-visualizer@0.1.12-next.2 + - @backstage/plugin-catalog@1.24.1-next.2 + - @backstage/plugin-catalog-graph@0.4.12-next.2 + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/plugin-home@0.8.1-next.2 + - @backstage/plugin-org@0.6.32-next.2 + - @backstage/plugin-scaffolder-react@1.13.3-next.2 + - @backstage/app-defaults@1.5.13-next.1 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/core-app-api@1.15.1 + - @backstage/core-compat-api@0.3.2-next.1 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/frontend-app-api@0.10.1-next.1 + - @backstage/frontend-defaults@0.1.2-next.1 + - @backstage/frontend-plugin-api@0.9.1-next.1 + - @backstage/integration-react@1.2.0 + - @backstage/theme@0.6.1-next.0 + - @backstage/plugin-api-docs@0.11.12-next.2 + - @backstage/plugin-app@0.1.2-next.1 + - @backstage/plugin-auth-react@0.1.8-next.1 + - @backstage/plugin-catalog-common@1.1.0 + - @backstage/plugin-catalog-unprocessed-entities@0.2.10-next.1 + - @backstage/plugin-kubernetes@0.12.0-next.2 + - @backstage/plugin-kubernetes-cluster@0.0.18-next.2 + - @backstage/plugin-notifications@0.3.3-next.1 + - @backstage/plugin-permission-react@0.4.27 + - @backstage/plugin-search@1.4.19-next.2 + - @backstage/plugin-search-common@1.2.14 + - @backstage/plugin-search-react@1.8.2-next.1 + - @backstage/plugin-signals@0.0.12-next.1 + - @backstage/plugin-techdocs@1.11.1-next.2 + - @backstage/plugin-techdocs-module-addons-contrib@1.1.17-next.1 + - @backstage/plugin-techdocs-react@1.2.10-next.1 + - @backstage/plugin-user-settings@0.8.15-next.2 + +## example-backend@0.0.32-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-backend@1.28.0-next.2 + - @backstage/plugin-search-backend@1.7.0-next.2 + - @backstage/plugin-kubernetes-backend@0.19.0-next.2 + - @backstage/backend-defaults@0.5.3-next.2 + - @backstage/plugin-events-backend@0.3.16-next.2 + - @backstage/plugin-auth-backend@0.24.0-next.2 + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/plugin-notifications-backend@0.4.3-next.2 + - @backstage/plugin-scaffolder-backend@1.27.0-next.2 + - @backstage/plugin-scaffolder-backend-module-github@0.5.2-next.2 + - @backstage/plugin-search-backend-module-catalog@0.2.5-next.2 + - @backstage/plugin-search-backend-module-techdocs@0.3.2-next.2 + - @backstage/plugin-techdocs-backend@1.11.2-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/plugin-app-backend@0.3.77-next.2 + - @backstage/plugin-auth-backend-module-github-provider@0.2.2-next.2 + - @backstage/plugin-auth-backend-module-guest-provider@0.2.2-next.2 + - @backstage/plugin-catalog-backend-module-backstage-openapi@0.4.2-next.2 + - @backstage/plugin-catalog-backend-module-openapi@0.2.4-next.2 + - @backstage/plugin-catalog-backend-module-scaffolder-entity-model@0.2.2-next.2 + - @backstage/plugin-catalog-backend-module-unprocessed@0.5.2-next.2 + - @backstage/plugin-devtools-backend@0.4.2-next.2 + - @backstage/plugin-permission-backend@0.5.51-next.2 + - @backstage/plugin-permission-backend-module-allow-all-policy@0.2.2-next.2 + - @backstage/plugin-permission-common@0.8.1 + - @backstage/plugin-permission-node@0.8.5-next.2 + - @backstage/plugin-proxy-backend@0.5.8-next.2 + - @backstage/plugin-scaffolder-backend-module-notifications@0.1.3-next.2 + - @backstage/plugin-search-backend-module-explore@0.2.5-next.2 + - @backstage/plugin-search-backend-node@1.3.5-next.2 + - @backstage/plugin-signals-backend@0.2.3-next.2 + +## example-backend-legacy@0.2.104-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/plugin-catalog-backend@1.28.0-next.2 + - @backstage/plugin-search-backend@1.7.0-next.2 + - @backstage/plugin-kubernetes-backend@0.19.0-next.2 + - @backstage/backend-defaults@0.5.3-next.2 + - @backstage/plugin-events-backend@0.3.16-next.2 + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/plugin-auth-backend@0.24.0-next.2 + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/plugin-scaffolder-backend@1.27.0-next.2 + - @backstage/plugin-search-backend-module-catalog@0.2.5-next.2 + - @backstage/plugin-search-backend-module-techdocs@0.3.2-next.2 + - @backstage/plugin-techdocs-backend@1.11.2-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/integration@1.15.1 + - @backstage/plugin-app-backend@0.3.77-next.2 + - @backstage/plugin-catalog-backend-module-scaffolder-entity-model@0.2.2-next.2 + - @backstage/plugin-catalog-backend-module-unprocessed@0.5.2-next.2 + - @backstage/plugin-devtools-backend@0.4.2-next.2 + - @backstage/plugin-permission-backend@0.5.51-next.2 + - @backstage/plugin-permission-common@0.8.1 + - @backstage/plugin-permission-node@0.8.5-next.2 + - @backstage/plugin-proxy-backend@0.5.8-next.2 + - @backstage/plugin-scaffolder-backend-module-confluence-to-markdown@0.3.2-next.2 + - @backstage/plugin-scaffolder-backend-module-gitlab@0.6.1-next.2 + - @backstage/plugin-scaffolder-backend-module-rails@0.5.2-next.2 + - @backstage/plugin-search-backend-module-elasticsearch@1.6.2-next.2 + - @backstage/plugin-search-backend-module-explore@0.2.5-next.2 + - @backstage/plugin-search-backend-module-pg@0.5.38-next.2 + - @backstage/plugin-search-backend-node@1.3.5-next.2 + - @backstage/plugin-signals-backend@0.2.3-next.2 + - @backstage/plugin-signals-node@0.1.14-next.2 + +## e2e-test@0.2.22-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/create-app@0.5.22-next.2 + - @backstage/cli-common@0.1.15-next.0 + - @backstage/errors@1.2.4 + +## @internal/scaffolder@0.0.3-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-scaffolder-react@1.13.3-next.2 + +## techdocs-cli-embedded-app@0.2.102-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/cli@0.29.0-next.2 + - @backstage/plugin-catalog@1.24.1-next.2 + - @backstage/app-defaults@1.5.13-next.1 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/core-app-api@1.15.1 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/integration-react@1.2.0 + - @backstage/test-utils@1.7.1-next.0 + - @backstage/theme@0.6.1-next.0 + - @backstage/plugin-techdocs@1.11.1-next.2 + - @backstage/plugin-techdocs-react@1.2.10-next.1 + +## @internal/plugin-todo-list-backend@1.0.33-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/errors@1.2.4 diff --git a/package.json b/package.json index f9628dd4a8..36db733024 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "root", - "version": "1.33.0-next.1", + "version": "1.33.0-next.2", "private": true, "repository": { "type": "git", diff --git a/packages/app-next/CHANGELOG.md b/packages/app-next/CHANGELOG.md index e64756ad0f..908cd8996c 100644 --- a/packages/app-next/CHANGELOG.md +++ b/packages/app-next/CHANGELOG.md @@ -1,5 +1,50 @@ # example-app-next +## 0.0.17-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/cli@0.29.0-next.2 + - @backstage/plugin-catalog-import@0.12.6-next.2 + - @backstage/plugin-scaffolder@1.26.3-next.2 + - @backstage/plugin-app-visualizer@0.1.12-next.2 + - @backstage/plugin-catalog@1.24.1-next.2 + - @backstage/plugin-catalog-graph@0.4.12-next.2 + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/plugin-home@0.8.1-next.2 + - @backstage/plugin-org@0.6.32-next.2 + - @backstage/plugin-scaffolder-react@1.13.3-next.2 + - @backstage/app-defaults@1.5.13-next.1 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/core-app-api@1.15.1 + - @backstage/core-compat-api@0.3.2-next.1 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/frontend-app-api@0.10.1-next.1 + - @backstage/frontend-defaults@0.1.2-next.1 + - @backstage/frontend-plugin-api@0.9.1-next.1 + - @backstage/integration-react@1.2.0 + - @backstage/theme@0.6.1-next.0 + - @backstage/plugin-api-docs@0.11.12-next.2 + - @backstage/plugin-app@0.1.2-next.1 + - @backstage/plugin-auth-react@0.1.8-next.1 + - @backstage/plugin-catalog-common@1.1.0 + - @backstage/plugin-catalog-unprocessed-entities@0.2.10-next.1 + - @backstage/plugin-kubernetes@0.12.0-next.2 + - @backstage/plugin-kubernetes-cluster@0.0.18-next.2 + - @backstage/plugin-notifications@0.3.3-next.1 + - @backstage/plugin-permission-react@0.4.27 + - @backstage/plugin-search@1.4.19-next.2 + - @backstage/plugin-search-common@1.2.14 + - @backstage/plugin-search-react@1.8.2-next.1 + - @backstage/plugin-signals@0.0.12-next.1 + - @backstage/plugin-techdocs@1.11.1-next.2 + - @backstage/plugin-techdocs-module-addons-contrib@1.1.17-next.1 + - @backstage/plugin-techdocs-react@1.2.10-next.1 + - @backstage/plugin-user-settings@0.8.15-next.2 + ## 0.0.17-next.1 ### Patch Changes diff --git a/packages/app-next/package.json b/packages/app-next/package.json index 9399a81bde..66f0bb6632 100644 --- a/packages/app-next/package.json +++ b/packages/app-next/package.json @@ -1,6 +1,6 @@ { "name": "example-app-next", - "version": "0.0.17-next.1", + "version": "0.0.17-next.2", "backstage": { "role": "frontend" }, diff --git a/packages/app/CHANGELOG.md b/packages/app/CHANGELOG.md index 89648ca4b9..af7d72321a 100644 --- a/packages/app/CHANGELOG.md +++ b/packages/app/CHANGELOG.md @@ -1,5 +1,46 @@ # example-app +## 0.2.103-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/cli@0.29.0-next.2 + - @backstage/plugin-catalog-import@0.12.6-next.2 + - @backstage/plugin-scaffolder@1.26.3-next.2 + - @backstage/plugin-catalog@1.24.1-next.2 + - @backstage/plugin-catalog-graph@0.4.12-next.2 + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/plugin-home@0.8.1-next.2 + - @backstage/plugin-org@0.6.32-next.2 + - @backstage/plugin-scaffolder-react@1.13.3-next.2 + - @backstage/app-defaults@1.5.13-next.1 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/core-app-api@1.15.1 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/frontend-app-api@0.10.1-next.1 + - @backstage/integration-react@1.2.0 + - @backstage/theme@0.6.1-next.0 + - @backstage/plugin-api-docs@0.11.12-next.2 + - @backstage/plugin-auth-react@0.1.8-next.1 + - @backstage/plugin-catalog-common@1.1.0 + - @backstage/plugin-catalog-unprocessed-entities@0.2.10-next.1 + - @backstage/plugin-devtools@0.1.20-next.1 + - @backstage/plugin-kubernetes@0.12.0-next.2 + - @backstage/plugin-kubernetes-cluster@0.0.18-next.2 + - @backstage/plugin-notifications@0.3.3-next.1 + - @backstage/plugin-permission-react@0.4.27 + - @backstage/plugin-search@1.4.19-next.2 + - @backstage/plugin-search-common@1.2.14 + - @backstage/plugin-search-react@1.8.2-next.1 + - @backstage/plugin-signals@0.0.12-next.1 + - @backstage/plugin-techdocs@1.11.1-next.2 + - @backstage/plugin-techdocs-module-addons-contrib@1.1.17-next.1 + - @backstage/plugin-techdocs-react@1.2.10-next.1 + - @backstage/plugin-user-settings@0.8.15-next.2 + ## 0.2.103-next.1 ### Patch Changes diff --git a/packages/app/package.json b/packages/app/package.json index 94dd6e4d21..d9c7f56c45 100644 --- a/packages/app/package.json +++ b/packages/app/package.json @@ -1,6 +1,6 @@ { "name": "example-app", - "version": "0.2.103-next.1", + "version": "0.2.103-next.2", "backstage": { "role": "frontend" }, diff --git a/packages/backend-app-api/CHANGELOG.md b/packages/backend-app-api/CHANGELOG.md index 7f25b5ad5a..884d7adff0 100644 --- a/packages/backend-app-api/CHANGELOG.md +++ b/packages/backend-app-api/CHANGELOG.md @@ -1,5 +1,19 @@ # @backstage/backend-app-api +## 1.0.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/cli-common@0.1.15-next.0 + - @backstage/config@1.2.0 + - @backstage/config-loader@1.9.2-next.0 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + - @backstage/plugin-permission-node@0.8.5-next.2 + ## 1.0.2-next.1 ### Patch Changes diff --git a/packages/backend-app-api/package.json b/packages/backend-app-api/package.json index 2848b4e11e..3971989528 100644 --- a/packages/backend-app-api/package.json +++ b/packages/backend-app-api/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/backend-app-api", - "version": "1.0.2-next.1", + "version": "1.0.2-next.2", "description": "Core API used by Backstage backend apps", "backstage": { "role": "node-library" diff --git a/packages/backend-defaults/CHANGELOG.md b/packages/backend-defaults/CHANGELOG.md index 8241f63389..80f74769b1 100644 --- a/packages/backend-defaults/CHANGELOG.md +++ b/packages/backend-defaults/CHANGELOG.md @@ -1,5 +1,26 @@ # @backstage/backend-defaults +## 0.5.3-next.2 + +### Patch Changes + +- e30bb46: Disabling database migrations now correctly uses the `backend.default.skipMigrations` config value. +- Updated dependencies + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-app-api@1.0.2-next.2 + - @backstage/backend-dev-utils@0.1.5 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/cli-common@0.1.15-next.0 + - @backstage/cli-node@0.2.10-next.0 + - @backstage/config@1.2.0 + - @backstage/config-loader@1.9.2-next.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/integration-aws-node@0.1.12 + - @backstage/types@1.1.1 + - @backstage/plugin-permission-node@0.8.5-next.2 + ## 0.5.3-next.1 ### Patch Changes diff --git a/packages/backend-defaults/package.json b/packages/backend-defaults/package.json index 99407cc567..65b8e296c2 100644 --- a/packages/backend-defaults/package.json +++ b/packages/backend-defaults/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/backend-defaults", - "version": "0.5.3-next.1", + "version": "0.5.3-next.2", "description": "Backend defaults used by Backstage backend apps", "backstage": { "role": "node-library" diff --git a/packages/backend-dynamic-feature-service/CHANGELOG.md b/packages/backend-dynamic-feature-service/CHANGELOG.md index 9e63da01ad..231d177be3 100644 --- a/packages/backend-dynamic-feature-service/CHANGELOG.md +++ b/packages/backend-dynamic-feature-service/CHANGELOG.md @@ -1,5 +1,41 @@ # @backstage/backend-dynamic-feature-service +## 0.5.0-next.2 + +### Minor Changes + +- e939cd7: **BREAKING** The `dynamicPluginsFeatureLoader` options related to the root logger behavior (`transports`, `level`, `format`) are now gathered under a single `logger` option which is a function taking an optional `Config` argument and returning the logger options. + + This breaking change is required for 2 reasons: + + - it's totally possible that the current `Config` would be required to provide the logger options, + - the logger-related options should be gathered under a common `logger` option because, when the root auditing service is introduced, distinct but similarly-named options would be required for the auditor as well. + +### Patch Changes + +- 1aeec12: Enhance the `CommonJSModuleLoader` to add support for `resolvePackagePath` calls from backend dynamic plugins, with customizable package resolution, and make the `CommonJSModuleLoader` public API. + Fixing this backend dynamic plugin limitation related to `resolvePackagePath` is important for backend dynamic plugins which use the database, since database migration scripts systematically use `resolvePackagePath`. +- Updated dependencies + - @backstage/plugin-catalog-backend@1.28.0-next.2 + - @backstage/backend-defaults@0.5.3-next.2 + - @backstage/plugin-events-backend@0.3.16-next.2 + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-app-api@1.0.2-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/cli-common@0.1.15-next.0 + - @backstage/cli-node@0.2.10-next.0 + - @backstage/config@1.2.0 + - @backstage/config-loader@1.9.2-next.0 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + - @backstage/plugin-app-node@0.1.27-next.2 + - @backstage/plugin-permission-common@0.8.1 + - @backstage/plugin-permission-node@0.8.5-next.2 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + - @backstage/plugin-search-backend-node@1.3.5-next.2 + - @backstage/plugin-search-common@1.2.14 + ## 0.4.4-next.1 ### Patch Changes diff --git a/packages/backend-dynamic-feature-service/package.json b/packages/backend-dynamic-feature-service/package.json index 2d04c1abb6..83a760320d 100644 --- a/packages/backend-dynamic-feature-service/package.json +++ b/packages/backend-dynamic-feature-service/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/backend-dynamic-feature-service", - "version": "0.4.4-next.1", + "version": "0.5.0-next.2", "description": "Backstage dynamic feature service", "backstage": { "role": "node-library" diff --git a/packages/backend-legacy/CHANGELOG.md b/packages/backend-legacy/CHANGELOG.md index 37cef59bef..973e88572e 100644 --- a/packages/backend-legacy/CHANGELOG.md +++ b/packages/backend-legacy/CHANGELOG.md @@ -1,5 +1,46 @@ # example-backend-legacy +## 0.2.104-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/plugin-catalog-backend@1.28.0-next.2 + - @backstage/plugin-search-backend@1.7.0-next.2 + - @backstage/plugin-kubernetes-backend@0.19.0-next.2 + - @backstage/backend-defaults@0.5.3-next.2 + - @backstage/plugin-events-backend@0.3.16-next.2 + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/plugin-auth-backend@0.24.0-next.2 + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/plugin-scaffolder-backend@1.27.0-next.2 + - @backstage/plugin-search-backend-module-catalog@0.2.5-next.2 + - @backstage/plugin-search-backend-module-techdocs@0.3.2-next.2 + - @backstage/plugin-techdocs-backend@1.11.2-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/integration@1.15.1 + - @backstage/plugin-app-backend@0.3.77-next.2 + - @backstage/plugin-catalog-backend-module-scaffolder-entity-model@0.2.2-next.2 + - @backstage/plugin-catalog-backend-module-unprocessed@0.5.2-next.2 + - @backstage/plugin-devtools-backend@0.4.2-next.2 + - @backstage/plugin-permission-backend@0.5.51-next.2 + - @backstage/plugin-permission-common@0.8.1 + - @backstage/plugin-permission-node@0.8.5-next.2 + - @backstage/plugin-proxy-backend@0.5.8-next.2 + - @backstage/plugin-scaffolder-backend-module-confluence-to-markdown@0.3.2-next.2 + - @backstage/plugin-scaffolder-backend-module-gitlab@0.6.1-next.2 + - @backstage/plugin-scaffolder-backend-module-rails@0.5.2-next.2 + - @backstage/plugin-search-backend-module-elasticsearch@1.6.2-next.2 + - @backstage/plugin-search-backend-module-explore@0.2.5-next.2 + - @backstage/plugin-search-backend-module-pg@0.5.38-next.2 + - @backstage/plugin-search-backend-node@1.3.5-next.2 + - @backstage/plugin-signals-backend@0.2.3-next.2 + - @backstage/plugin-signals-node@0.1.14-next.2 + ## 0.2.104-next.1 ### Patch Changes diff --git a/packages/backend-legacy/package.json b/packages/backend-legacy/package.json index eb968541f5..0d71b9af67 100644 --- a/packages/backend-legacy/package.json +++ b/packages/backend-legacy/package.json @@ -1,6 +1,6 @@ { "name": "example-backend-legacy", - "version": "0.2.104-next.1", + "version": "0.2.104-next.2", "backstage": { "role": "backend" }, diff --git a/packages/backend-openapi-utils/CHANGELOG.md b/packages/backend-openapi-utils/CHANGELOG.md index 9966f25f99..dd268da771 100644 --- a/packages/backend-openapi-utils/CHANGELOG.md +++ b/packages/backend-openapi-utils/CHANGELOG.md @@ -1,5 +1,18 @@ # @backstage/backend-openapi-utils +## 0.3.0-next.2 + +### Minor Changes + +- 1440232: Adds a new `createValidatedOpenApiRouterFromGeneratedEndpointMap` function that uses the new static server generation in `backstage-cli package schema openapi generate --server` to create a typed express router. + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + ## 0.2.1-next.1 ### Patch Changes diff --git a/packages/backend-openapi-utils/package.json b/packages/backend-openapi-utils/package.json index 663e76fd26..bb06c18740 100644 --- a/packages/backend-openapi-utils/package.json +++ b/packages/backend-openapi-utils/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/backend-openapi-utils", - "version": "0.2.1-next.1", + "version": "0.3.0-next.2", "description": "OpenAPI typescript support.", "backstage": { "role": "node-library" diff --git a/packages/backend-plugin-api/CHANGELOG.md b/packages/backend-plugin-api/CHANGELOG.md index 6fec3f1859..7aa27f59a0 100644 --- a/packages/backend-plugin-api/CHANGELOG.md +++ b/packages/backend-plugin-api/CHANGELOG.md @@ -1,5 +1,17 @@ # @backstage/backend-plugin-api +## 1.0.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/cli-common@0.1.15-next.0 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + - @backstage/plugin-permission-common@0.8.1 + ## 1.0.2-next.1 ### Patch Changes diff --git a/packages/backend-plugin-api/package.json b/packages/backend-plugin-api/package.json index 5fcab7c8ea..0bbab5a913 100644 --- a/packages/backend-plugin-api/package.json +++ b/packages/backend-plugin-api/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/backend-plugin-api", - "version": "1.0.2-next.1", + "version": "1.0.2-next.2", "description": "Core API used by Backstage backend plugins", "backstage": { "role": "node-library" diff --git a/packages/backend-test-utils/CHANGELOG.md b/packages/backend-test-utils/CHANGELOG.md index 1e144c69af..d4a81aff1b 100644 --- a/packages/backend-test-utils/CHANGELOG.md +++ b/packages/backend-test-utils/CHANGELOG.md @@ -1,5 +1,23 @@ # @backstage/backend-test-utils +## 1.1.0-next.2 + +### Minor Changes + +- 5064827: Made it possible to construct `mockServices.database` with a given knex instance + +### Patch Changes + +- Updated dependencies + - @backstage/backend-defaults@0.5.3-next.2 + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-app-api@1.0.2-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + ## 1.0.3-next.1 ### Patch Changes diff --git a/packages/backend-test-utils/package.json b/packages/backend-test-utils/package.json index ebd532ae49..311d40e352 100644 --- a/packages/backend-test-utils/package.json +++ b/packages/backend-test-utils/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/backend-test-utils", - "version": "1.0.3-next.1", + "version": "1.1.0-next.2", "description": "Test helpers library for Backstage backends", "backstage": { "role": "node-library" diff --git a/packages/backend/CHANGELOG.md b/packages/backend/CHANGELOG.md index 5a2d40ad39..0dfd1e4100 100644 --- a/packages/backend/CHANGELOG.md +++ b/packages/backend/CHANGELOG.md @@ -1,5 +1,43 @@ # example-backend +## 0.0.32-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-backend@1.28.0-next.2 + - @backstage/plugin-search-backend@1.7.0-next.2 + - @backstage/plugin-kubernetes-backend@0.19.0-next.2 + - @backstage/backend-defaults@0.5.3-next.2 + - @backstage/plugin-events-backend@0.3.16-next.2 + - @backstage/plugin-auth-backend@0.24.0-next.2 + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/plugin-notifications-backend@0.4.3-next.2 + - @backstage/plugin-scaffolder-backend@1.27.0-next.2 + - @backstage/plugin-scaffolder-backend-module-github@0.5.2-next.2 + - @backstage/plugin-search-backend-module-catalog@0.2.5-next.2 + - @backstage/plugin-search-backend-module-techdocs@0.3.2-next.2 + - @backstage/plugin-techdocs-backend@1.11.2-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/plugin-app-backend@0.3.77-next.2 + - @backstage/plugin-auth-backend-module-github-provider@0.2.2-next.2 + - @backstage/plugin-auth-backend-module-guest-provider@0.2.2-next.2 + - @backstage/plugin-catalog-backend-module-backstage-openapi@0.4.2-next.2 + - @backstage/plugin-catalog-backend-module-openapi@0.2.4-next.2 + - @backstage/plugin-catalog-backend-module-scaffolder-entity-model@0.2.2-next.2 + - @backstage/plugin-catalog-backend-module-unprocessed@0.5.2-next.2 + - @backstage/plugin-devtools-backend@0.4.2-next.2 + - @backstage/plugin-permission-backend@0.5.51-next.2 + - @backstage/plugin-permission-backend-module-allow-all-policy@0.2.2-next.2 + - @backstage/plugin-permission-common@0.8.1 + - @backstage/plugin-permission-node@0.8.5-next.2 + - @backstage/plugin-proxy-backend@0.5.8-next.2 + - @backstage/plugin-scaffolder-backend-module-notifications@0.1.3-next.2 + - @backstage/plugin-search-backend-module-explore@0.2.5-next.2 + - @backstage/plugin-search-backend-node@1.3.5-next.2 + - @backstage/plugin-signals-backend@0.2.3-next.2 + ## 0.0.32-next.1 ### Patch Changes diff --git a/packages/backend/package.json b/packages/backend/package.json index 7378975861..76f26ed84d 100644 --- a/packages/backend/package.json +++ b/packages/backend/package.json @@ -1,6 +1,6 @@ { "name": "example-backend", - "version": "0.0.32-next.1", + "version": "0.0.32-next.2", "backstage": { "role": "backend" }, diff --git a/packages/catalog-client/CHANGELOG.md b/packages/catalog-client/CHANGELOG.md index 2802f8f3d7..3326f2a5f7 100644 --- a/packages/catalog-client/CHANGELOG.md +++ b/packages/catalog-client/CHANGELOG.md @@ -1,5 +1,17 @@ # @backstage/catalog-client +## 1.8.0-next.1 + +### Minor Changes + +- 656d1ef: Internal update to use the updated generated code from `backstage-cli package schema openapi generate --client-package ...`. + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.7.0 + - @backstage/errors@1.2.4 + ## 1.8.0-next.0 ### Minor Changes diff --git a/packages/catalog-client/package.json b/packages/catalog-client/package.json index 1e6501f470..6e193132f0 100644 --- a/packages/catalog-client/package.json +++ b/packages/catalog-client/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/catalog-client", - "version": "1.8.0-next.0", + "version": "1.8.0-next.1", "description": "An isomorphic client for the catalog backend", "backstage": { "role": "common-library" diff --git a/packages/cli/CHANGELOG.md b/packages/cli/CHANGELOG.md index da60db3ceb..60384e7599 100644 --- a/packages/cli/CHANGELOG.md +++ b/packages/cli/CHANGELOG.md @@ -1,5 +1,27 @@ # @backstage/cli +## 0.29.0-next.2 + +### Minor Changes + +- bc47b17: **BREAKING**: Updates ESLint config to ignore all generated source code under `src/**/generated/**/*.ts`. + +### Patch Changes + +- e19c53c: Fix for the `--link` flag for `package start` to deduplicate `react-router` and `react-router-dom`. +- e565f73: Added support for `.webp` files in the frontend tooling. +- Updated dependencies + - @backstage/catalog-model@1.7.0 + - @backstage/cli-common@0.1.15-next.0 + - @backstage/cli-node@0.2.10-next.0 + - @backstage/config@1.2.0 + - @backstage/config-loader@1.9.2-next.0 + - @backstage/errors@1.2.4 + - @backstage/eslint-plugin@0.1.10 + - @backstage/integration@1.15.1 + - @backstage/release-manifests@0.0.11 + - @backstage/types@1.1.1 + ## 0.29.0-next.1 ### Minor Changes diff --git a/packages/cli/package.json b/packages/cli/package.json index 1e79b78da9..7cd6b55f43 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/cli", - "version": "0.29.0-next.1", + "version": "0.29.0-next.2", "description": "CLI for developing Backstage plugins and apps", "backstage": { "role": "cli" diff --git a/packages/create-app/CHANGELOG.md b/packages/create-app/CHANGELOG.md index 3fa69439c6..c95689cc49 100644 --- a/packages/create-app/CHANGELOG.md +++ b/packages/create-app/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/create-app +## 0.5.22-next.2 + +### Patch Changes + +- Bumped create-app version. +- Updated dependencies + - @backstage/cli-common@0.1.15-next.0 + ## 0.5.22-next.1 ### Patch Changes diff --git a/packages/create-app/package.json b/packages/create-app/package.json index af455c7f3f..74a4f09998 100644 --- a/packages/create-app/package.json +++ b/packages/create-app/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/create-app", - "version": "0.5.22-next.1", + "version": "0.5.22-next.2", "description": "A CLI that helps you create your own Backstage app", "backstage": { "role": "cli" diff --git a/packages/dev-utils/CHANGELOG.md b/packages/dev-utils/CHANGELOG.md index 6afd46fb5f..fef207d12c 100644 --- a/packages/dev-utils/CHANGELOG.md +++ b/packages/dev-utils/CHANGELOG.md @@ -1,5 +1,19 @@ # @backstage/dev-utils +## 1.1.3-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/app-defaults@1.5.13-next.1 + - @backstage/catalog-model@1.7.0 + - @backstage/core-app-api@1.15.1 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/integration-react@1.2.0 + - @backstage/theme@0.6.1-next.0 + ## 1.1.3-next.1 ### Patch Changes diff --git a/packages/dev-utils/package.json b/packages/dev-utils/package.json index 971bcc2874..a542099cdd 100644 --- a/packages/dev-utils/package.json +++ b/packages/dev-utils/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/dev-utils", - "version": "1.1.3-next.1", + "version": "1.1.3-next.2", "description": "Utilities for developing Backstage plugins.", "backstage": { "role": "web-library" diff --git a/packages/e2e-test/CHANGELOG.md b/packages/e2e-test/CHANGELOG.md index 9b9f58f7ac..6a6f685ad9 100644 --- a/packages/e2e-test/CHANGELOG.md +++ b/packages/e2e-test/CHANGELOG.md @@ -1,5 +1,14 @@ # e2e-test +## 0.2.22-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/create-app@0.5.22-next.2 + - @backstage/cli-common@0.1.15-next.0 + - @backstage/errors@1.2.4 + ## 0.2.22-next.1 ### Patch Changes diff --git a/packages/e2e-test/package.json b/packages/e2e-test/package.json index 9765f3f999..55e4573896 100644 --- a/packages/e2e-test/package.json +++ b/packages/e2e-test/package.json @@ -1,6 +1,6 @@ { "name": "e2e-test", - "version": "0.2.22-next.1", + "version": "0.2.22-next.2", "description": "E2E test for verifying Backstage packages", "backstage": { "role": "cli" diff --git a/packages/repo-tools/CHANGELOG.md b/packages/repo-tools/CHANGELOG.md index 2296384b63..5716c566c4 100644 --- a/packages/repo-tools/CHANGELOG.md +++ b/packages/repo-tools/CHANGELOG.md @@ -1,5 +1,21 @@ # @backstage/repo-tools +## 0.11.0-next.2 + +### Minor Changes + +- 1440232: `backstage-repo-tools package schema openapi generate --server` now generates complete TS interfaces for all request/response objects in your OpenAPI schema. This fixes an edge case around recursive schemas and standardizes both the generated client and server to have similar generated types. + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/cli-common@0.1.15-next.0 + - @backstage/cli-node@0.2.10-next.0 + - @backstage/config-loader@1.9.2-next.0 + - @backstage/errors@1.2.4 + ## 0.11.0-next.1 ### Patch Changes diff --git a/packages/repo-tools/package.json b/packages/repo-tools/package.json index 26cc4ff6d5..87a067c660 100644 --- a/packages/repo-tools/package.json +++ b/packages/repo-tools/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/repo-tools", - "version": "0.11.0-next.1", + "version": "0.11.0-next.2", "description": "CLI for Backstage repo tooling ", "backstage": { "role": "cli" diff --git a/packages/scaffolder-internal/CHANGELOG.md b/packages/scaffolder-internal/CHANGELOG.md index f95d9d71d5..6c5baaa7b8 100644 --- a/packages/scaffolder-internal/CHANGELOG.md +++ b/packages/scaffolder-internal/CHANGELOG.md @@ -1,5 +1,12 @@ # @internal/scaffolder +## 0.0.3-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-scaffolder-react@1.13.3-next.2 + ## 0.0.3-next.1 ### Patch Changes diff --git a/packages/scaffolder-internal/package.json b/packages/scaffolder-internal/package.json index 6aae109d5e..39cee73998 100644 --- a/packages/scaffolder-internal/package.json +++ b/packages/scaffolder-internal/package.json @@ -1,6 +1,6 @@ { "name": "@internal/scaffolder", - "version": "0.0.3-next.1", + "version": "0.0.3-next.2", "backstage": { "role": "web-library", "inline": true diff --git a/packages/techdocs-cli-embedded-app/CHANGELOG.md b/packages/techdocs-cli-embedded-app/CHANGELOG.md index 7f413a4c3a..c175e2c978 100644 --- a/packages/techdocs-cli-embedded-app/CHANGELOG.md +++ b/packages/techdocs-cli-embedded-app/CHANGELOG.md @@ -1,5 +1,24 @@ # techdocs-cli-embedded-app +## 0.2.102-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/cli@0.29.0-next.2 + - @backstage/plugin-catalog@1.24.1-next.2 + - @backstage/app-defaults@1.5.13-next.1 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/core-app-api@1.15.1 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/integration-react@1.2.0 + - @backstage/test-utils@1.7.1-next.0 + - @backstage/theme@0.6.1-next.0 + - @backstage/plugin-techdocs@1.11.1-next.2 + - @backstage/plugin-techdocs-react@1.2.10-next.1 + ## 0.2.102-next.1 ### Patch Changes diff --git a/packages/techdocs-cli-embedded-app/package.json b/packages/techdocs-cli-embedded-app/package.json index c6509cf6a5..1fd259d57d 100644 --- a/packages/techdocs-cli-embedded-app/package.json +++ b/packages/techdocs-cli-embedded-app/package.json @@ -1,6 +1,6 @@ { "name": "techdocs-cli-embedded-app", - "version": "0.2.102-next.1", + "version": "0.2.102-next.2", "backstage": { "role": "frontend" }, diff --git a/packages/techdocs-cli/CHANGELOG.md b/packages/techdocs-cli/CHANGELOG.md index d521cfc05e..f5b6276adf 100644 --- a/packages/techdocs-cli/CHANGELOG.md +++ b/packages/techdocs-cli/CHANGELOG.md @@ -1,5 +1,16 @@ # @techdocs/cli +## 1.8.22-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-defaults@0.5.3-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/cli-common@0.1.15-next.0 + - @backstage/config@1.2.0 + - @backstage/plugin-techdocs-node@1.12.13-next.2 + ## 1.8.22-next.1 ### Patch Changes diff --git a/packages/techdocs-cli/package.json b/packages/techdocs-cli/package.json index d666b89637..c4b93d7ac9 100644 --- a/packages/techdocs-cli/package.json +++ b/packages/techdocs-cli/package.json @@ -1,6 +1,6 @@ { "name": "@techdocs/cli", - "version": "1.8.22-next.1", + "version": "1.8.22-next.2", "description": "Utility CLI for managing TechDocs sites in Backstage.", "backstage": { "role": "cli" diff --git a/plugins/api-docs/CHANGELOG.md b/plugins/api-docs/CHANGELOG.md index 9e203186c6..e61d88db6b 100644 --- a/plugins/api-docs/CHANGELOG.md +++ b/plugins/api-docs/CHANGELOG.md @@ -1,5 +1,20 @@ # @backstage/plugin-api-docs +## 0.11.12-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog@1.24.1-next.2 + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/core-compat-api@0.3.2-next.1 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/frontend-plugin-api@0.9.1-next.1 + - @backstage/plugin-catalog-common@1.1.0 + - @backstage/plugin-permission-react@0.4.27 + ## 0.11.12-next.1 ### Patch Changes diff --git a/plugins/api-docs/package.json b/plugins/api-docs/package.json index cd4837cdb7..2ec636fc97 100644 --- a/plugins/api-docs/package.json +++ b/plugins/api-docs/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-api-docs", - "version": "0.11.12-next.1", + "version": "0.11.12-next.2", "description": "A Backstage plugin that helps represent API entities in the frontend", "backstage": { "role": "frontend-plugin", diff --git a/plugins/app-backend/CHANGELOG.md b/plugins/app-backend/CHANGELOG.md index 6e22f015bc..3a41ded85d 100644 --- a/plugins/app-backend/CHANGELOG.md +++ b/plugins/app-backend/CHANGELOG.md @@ -1,5 +1,18 @@ # @backstage/plugin-app-backend +## 0.3.77-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/config-loader@1.9.2-next.0 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + - @backstage/plugin-app-node@0.1.27-next.2 + ## 0.3.77-next.1 ### Patch Changes diff --git a/plugins/app-backend/package.json b/plugins/app-backend/package.json index 9e8422daba..b095dedbde 100644 --- a/plugins/app-backend/package.json +++ b/plugins/app-backend/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-app-backend", - "version": "0.3.77-next.1", + "version": "0.3.77-next.2", "description": "A Backstage backend plugin that serves the Backstage frontend app", "backstage": { "role": "backend-plugin", diff --git a/plugins/app-node/CHANGELOG.md b/plugins/app-node/CHANGELOG.md index 2c7b0c7b46..b322ce0664 100644 --- a/plugins/app-node/CHANGELOG.md +++ b/plugins/app-node/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-app-node +## 0.1.27-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config-loader@1.9.2-next.0 + ## 0.1.27-next.1 ### Patch Changes diff --git a/plugins/app-node/package.json b/plugins/app-node/package.json index 0804f3bd53..ca7f825f5f 100644 --- a/plugins/app-node/package.json +++ b/plugins/app-node/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-app-node", - "version": "0.1.27-next.1", + "version": "0.1.27-next.2", "description": "Node.js library for the app plugin", "backstage": { "role": "node-library", diff --git a/plugins/app-visualizer/CHANGELOG.md b/plugins/app-visualizer/CHANGELOG.md index 089624002b..6ff5700aaf 100644 --- a/plugins/app-visualizer/CHANGELOG.md +++ b/plugins/app-visualizer/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-app-visualizer +## 0.1.12-next.2 + +### Patch Changes + +- e586e77: New `devDependency` for local development setup. +- Updated dependencies + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/frontend-plugin-api@0.9.1-next.1 + ## 0.1.12-next.1 ### Patch Changes diff --git a/plugins/app-visualizer/package.json b/plugins/app-visualizer/package.json index 5adbc95e7c..5b2e87a6c0 100644 --- a/plugins/app-visualizer/package.json +++ b/plugins/app-visualizer/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-app-visualizer", - "version": "0.1.12-next.1", + "version": "0.1.12-next.2", "description": "Visualizes the Backstage app structure", "backstage": { "role": "frontend-plugin", diff --git a/plugins/auth-backend-module-atlassian-provider/CHANGELOG.md b/plugins/auth-backend-module-atlassian-provider/CHANGELOG.md index 1da43c7628..f8d02959dc 100644 --- a/plugins/auth-backend-module-atlassian-provider/CHANGELOG.md +++ b/plugins/auth-backend-module-atlassian-provider/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-auth-backend-module-atlassian-provider +## 0.3.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + ## 0.3.2-next.1 ### Patch Changes diff --git a/plugins/auth-backend-module-atlassian-provider/package.json b/plugins/auth-backend-module-atlassian-provider/package.json index 3b9660e337..e02c1740b6 100644 --- a/plugins/auth-backend-module-atlassian-provider/package.json +++ b/plugins/auth-backend-module-atlassian-provider/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-auth-backend-module-atlassian-provider", - "version": "0.3.2-next.1", + "version": "0.3.2-next.2", "description": "The atlassian-provider backend module for the auth plugin.", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/auth-backend-module-auth0-provider/CHANGELOG.md b/plugins/auth-backend-module-auth0-provider/CHANGELOG.md index d4f5b14345..c62fe61b67 100644 --- a/plugins/auth-backend-module-auth0-provider/CHANGELOG.md +++ b/plugins/auth-backend-module-auth0-provider/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-auth-backend-module-auth0-provider +## 0.1.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + ## 0.1.2-next.1 ### Patch Changes diff --git a/plugins/auth-backend-module-auth0-provider/package.json b/plugins/auth-backend-module-auth0-provider/package.json index bdc40d83f2..3cfa733c5b 100644 --- a/plugins/auth-backend-module-auth0-provider/package.json +++ b/plugins/auth-backend-module-auth0-provider/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-auth-backend-module-auth0-provider", - "version": "0.1.2-next.1", + "version": "0.1.2-next.2", "description": "The auth0-provider backend module for the auth plugin.", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/auth-backend-module-aws-alb-provider/CHANGELOG.md b/plugins/auth-backend-module-aws-alb-provider/CHANGELOG.md index 38dfa53fc8..e4b35d4672 100644 --- a/plugins/auth-backend-module-aws-alb-provider/CHANGELOG.md +++ b/plugins/auth-backend-module-aws-alb-provider/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-auth-backend-module-aws-alb-provider +## 0.3.0-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-backend@0.24.0-next.2 + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/errors@1.2.4 + ## 0.3.0-next.1 ### Patch Changes diff --git a/plugins/auth-backend-module-aws-alb-provider/package.json b/plugins/auth-backend-module-aws-alb-provider/package.json index 51d3da9564..15e430a095 100644 --- a/plugins/auth-backend-module-aws-alb-provider/package.json +++ b/plugins/auth-backend-module-aws-alb-provider/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-auth-backend-module-aws-alb-provider", - "version": "0.3.0-next.1", + "version": "0.3.0-next.2", "description": "The aws-alb provider module for the Backstage auth backend.", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/auth-backend-module-azure-easyauth-provider/CHANGELOG.md b/plugins/auth-backend-module-azure-easyauth-provider/CHANGELOG.md index 66cad23ac4..7f925c8318 100644 --- a/plugins/auth-backend-module-azure-easyauth-provider/CHANGELOG.md +++ b/plugins/auth-backend-module-azure-easyauth-provider/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-auth-backend-module-azure-easyauth-provider +## 0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/errors@1.2.4 + ## 0.2.2-next.1 ### Patch Changes diff --git a/plugins/auth-backend-module-azure-easyauth-provider/package.json b/plugins/auth-backend-module-azure-easyauth-provider/package.json index 83dcb8ad26..81bbf78daa 100644 --- a/plugins/auth-backend-module-azure-easyauth-provider/package.json +++ b/plugins/auth-backend-module-azure-easyauth-provider/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-auth-backend-module-azure-easyauth-provider", - "version": "0.2.2-next.1", + "version": "0.2.2-next.2", "description": "The azure-easyauth-provider backend module for the auth plugin.", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/auth-backend-module-bitbucket-provider/CHANGELOG.md b/plugins/auth-backend-module-bitbucket-provider/CHANGELOG.md index 21dca65898..8c4ca68dc0 100644 --- a/plugins/auth-backend-module-bitbucket-provider/CHANGELOG.md +++ b/plugins/auth-backend-module-bitbucket-provider/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-auth-backend-module-bitbucket-provider +## 0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + ## 0.2.2-next.1 ### Patch Changes diff --git a/plugins/auth-backend-module-bitbucket-provider/package.json b/plugins/auth-backend-module-bitbucket-provider/package.json index e39f264438..96fcd14a60 100644 --- a/plugins/auth-backend-module-bitbucket-provider/package.json +++ b/plugins/auth-backend-module-bitbucket-provider/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-auth-backend-module-bitbucket-provider", - "version": "0.2.2-next.1", + "version": "0.2.2-next.2", "description": "The bitbucket-provider backend module for the auth plugin.", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/auth-backend-module-bitbucket-server-provider/CHANGELOG.md b/plugins/auth-backend-module-bitbucket-server-provider/CHANGELOG.md index df4da76ac4..f3c14ca776 100644 --- a/plugins/auth-backend-module-bitbucket-server-provider/CHANGELOG.md +++ b/plugins/auth-backend-module-bitbucket-server-provider/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-auth-backend-module-bitbucket-server-provider +## 0.1.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + ## 0.1.2-next.1 ### Patch Changes diff --git a/plugins/auth-backend-module-bitbucket-server-provider/package.json b/plugins/auth-backend-module-bitbucket-server-provider/package.json index cb5c1a4033..4ff6a60c3d 100644 --- a/plugins/auth-backend-module-bitbucket-server-provider/package.json +++ b/plugins/auth-backend-module-bitbucket-server-provider/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-auth-backend-module-bitbucket-server-provider", - "version": "0.1.2-next.1", + "version": "0.1.2-next.2", "description": "The bitbucket-server-provider backend module for the auth plugin.", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/auth-backend-module-cloudflare-access-provider/CHANGELOG.md b/plugins/auth-backend-module-cloudflare-access-provider/CHANGELOG.md index 86f957d487..99c6e6a9bf 100644 --- a/plugins/auth-backend-module-cloudflare-access-provider/CHANGELOG.md +++ b/plugins/auth-backend-module-cloudflare-access-provider/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-auth-backend-module-cloudflare-access-provider +## 0.3.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + ## 0.3.2-next.1 ### Patch Changes diff --git a/plugins/auth-backend-module-cloudflare-access-provider/package.json b/plugins/auth-backend-module-cloudflare-access-provider/package.json index 0e0123cde3..9b7881d1d1 100644 --- a/plugins/auth-backend-module-cloudflare-access-provider/package.json +++ b/plugins/auth-backend-module-cloudflare-access-provider/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-auth-backend-module-cloudflare-access-provider", - "version": "0.3.2-next.1", + "version": "0.3.2-next.2", "description": "The cloudflare-access-provider backend module for the auth plugin.", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/auth-backend-module-gcp-iap-provider/CHANGELOG.md b/plugins/auth-backend-module-gcp-iap-provider/CHANGELOG.md index e704f6c355..3a4afd76b5 100644 --- a/plugins/auth-backend-module-gcp-iap-provider/CHANGELOG.md +++ b/plugins/auth-backend-module-gcp-iap-provider/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-auth-backend-module-gcp-iap-provider +## 0.3.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + ## 0.3.2-next.1 ### Patch Changes diff --git a/plugins/auth-backend-module-gcp-iap-provider/package.json b/plugins/auth-backend-module-gcp-iap-provider/package.json index 212808da61..6ecd2d3b01 100644 --- a/plugins/auth-backend-module-gcp-iap-provider/package.json +++ b/plugins/auth-backend-module-gcp-iap-provider/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-auth-backend-module-gcp-iap-provider", - "version": "0.3.2-next.1", + "version": "0.3.2-next.2", "description": "A GCP IAP auth provider module for the Backstage auth backend", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/auth-backend-module-github-provider/CHANGELOG.md b/plugins/auth-backend-module-github-provider/CHANGELOG.md index ad4ed72c4c..30ead105c7 100644 --- a/plugins/auth-backend-module-github-provider/CHANGELOG.md +++ b/plugins/auth-backend-module-github-provider/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-auth-backend-module-github-provider +## 0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + ## 0.2.2-next.1 ### Patch Changes diff --git a/plugins/auth-backend-module-github-provider/package.json b/plugins/auth-backend-module-github-provider/package.json index 6a314bba4a..461571084b 100644 --- a/plugins/auth-backend-module-github-provider/package.json +++ b/plugins/auth-backend-module-github-provider/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-auth-backend-module-github-provider", - "version": "0.2.2-next.1", + "version": "0.2.2-next.2", "description": "The github-provider backend module for the auth plugin.", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/auth-backend-module-gitlab-provider/CHANGELOG.md b/plugins/auth-backend-module-gitlab-provider/CHANGELOG.md index 776119efa8..597a5f9862 100644 --- a/plugins/auth-backend-module-gitlab-provider/CHANGELOG.md +++ b/plugins/auth-backend-module-gitlab-provider/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-auth-backend-module-gitlab-provider +## 0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + ## 0.2.2-next.1 ### Patch Changes diff --git a/plugins/auth-backend-module-gitlab-provider/package.json b/plugins/auth-backend-module-gitlab-provider/package.json index 3210e0ca7f..c4c1a50ee1 100644 --- a/plugins/auth-backend-module-gitlab-provider/package.json +++ b/plugins/auth-backend-module-gitlab-provider/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-auth-backend-module-gitlab-provider", - "version": "0.2.2-next.1", + "version": "0.2.2-next.2", "description": "The gitlab-provider backend module for the auth plugin.", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/auth-backend-module-google-provider/CHANGELOG.md b/plugins/auth-backend-module-google-provider/CHANGELOG.md index ae9e89b07f..70752df8dd 100644 --- a/plugins/auth-backend-module-google-provider/CHANGELOG.md +++ b/plugins/auth-backend-module-google-provider/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-auth-backend-module-google-provider +## 0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + ## 0.2.2-next.1 ### Patch Changes diff --git a/plugins/auth-backend-module-google-provider/package.json b/plugins/auth-backend-module-google-provider/package.json index 81d5307c4e..9dc8c6efdd 100644 --- a/plugins/auth-backend-module-google-provider/package.json +++ b/plugins/auth-backend-module-google-provider/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-auth-backend-module-google-provider", - "version": "0.2.2-next.1", + "version": "0.2.2-next.2", "description": "A Google auth provider module for the Backstage auth backend", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/auth-backend-module-guest-provider/CHANGELOG.md b/plugins/auth-backend-module-guest-provider/CHANGELOG.md index fab7c5119c..e8ebf5eeb9 100644 --- a/plugins/auth-backend-module-guest-provider/CHANGELOG.md +++ b/plugins/auth-backend-module-guest-provider/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-auth-backend-module-guest-provider +## 0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/errors@1.2.4 + ## 0.2.2-next.1 ### Patch Changes diff --git a/plugins/auth-backend-module-guest-provider/package.json b/plugins/auth-backend-module-guest-provider/package.json index 7670f7d266..c689d1b963 100644 --- a/plugins/auth-backend-module-guest-provider/package.json +++ b/plugins/auth-backend-module-guest-provider/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-auth-backend-module-guest-provider", - "version": "0.2.2-next.1", + "version": "0.2.2-next.2", "description": "The guest-provider backend module for the auth plugin.", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/auth-backend-module-microsoft-provider/CHANGELOG.md b/plugins/auth-backend-module-microsoft-provider/CHANGELOG.md index 716f2c4c9d..5a88594cb7 100644 --- a/plugins/auth-backend-module-microsoft-provider/CHANGELOG.md +++ b/plugins/auth-backend-module-microsoft-provider/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-auth-backend-module-microsoft-provider +## 0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + ## 0.2.2-next.1 ### Patch Changes diff --git a/plugins/auth-backend-module-microsoft-provider/package.json b/plugins/auth-backend-module-microsoft-provider/package.json index 61dc3ac429..be830895cc 100644 --- a/plugins/auth-backend-module-microsoft-provider/package.json +++ b/plugins/auth-backend-module-microsoft-provider/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-auth-backend-module-microsoft-provider", - "version": "0.2.2-next.1", + "version": "0.2.2-next.2", "description": "The microsoft-provider backend module for the auth plugin.", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/auth-backend-module-oauth2-provider/CHANGELOG.md b/plugins/auth-backend-module-oauth2-provider/CHANGELOG.md index 10625e77dd..423e01124b 100644 --- a/plugins/auth-backend-module-oauth2-provider/CHANGELOG.md +++ b/plugins/auth-backend-module-oauth2-provider/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-auth-backend-module-oauth2-provider +## 0.3.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + ## 0.3.2-next.1 ### Patch Changes diff --git a/plugins/auth-backend-module-oauth2-provider/package.json b/plugins/auth-backend-module-oauth2-provider/package.json index 609803e22d..2bbbe4bb67 100644 --- a/plugins/auth-backend-module-oauth2-provider/package.json +++ b/plugins/auth-backend-module-oauth2-provider/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-auth-backend-module-oauth2-provider", - "version": "0.3.2-next.1", + "version": "0.3.2-next.2", "description": "The oauth2-provider backend module for the auth plugin.", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/auth-backend-module-oauth2-proxy-provider/CHANGELOG.md b/plugins/auth-backend-module-oauth2-proxy-provider/CHANGELOG.md index 60ea19180e..3956310123 100644 --- a/plugins/auth-backend-module-oauth2-proxy-provider/CHANGELOG.md +++ b/plugins/auth-backend-module-oauth2-proxy-provider/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-auth-backend-module-oauth2-proxy-provider +## 0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/errors@1.2.4 + ## 0.2.2-next.1 ### Patch Changes diff --git a/plugins/auth-backend-module-oauth2-proxy-provider/package.json b/plugins/auth-backend-module-oauth2-proxy-provider/package.json index cc3861c26d..ea0b9c9481 100644 --- a/plugins/auth-backend-module-oauth2-proxy-provider/package.json +++ b/plugins/auth-backend-module-oauth2-proxy-provider/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-auth-backend-module-oauth2-proxy-provider", - "version": "0.2.2-next.1", + "version": "0.2.2-next.2", "description": "The oauth2-proxy-provider backend module for the auth plugin.", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/auth-backend-module-oidc-provider/CHANGELOG.md b/plugins/auth-backend-module-oidc-provider/CHANGELOG.md index 57d9a5814c..806529ba7f 100644 --- a/plugins/auth-backend-module-oidc-provider/CHANGELOG.md +++ b/plugins/auth-backend-module-oidc-provider/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-auth-backend-module-oidc-provider +## 0.3.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-backend@0.24.0-next.2 + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + ## 0.3.2-next.1 ### Patch Changes diff --git a/plugins/auth-backend-module-oidc-provider/package.json b/plugins/auth-backend-module-oidc-provider/package.json index eac00791d9..86fc853d58 100644 --- a/plugins/auth-backend-module-oidc-provider/package.json +++ b/plugins/auth-backend-module-oidc-provider/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-auth-backend-module-oidc-provider", - "version": "0.3.2-next.1", + "version": "0.3.2-next.2", "description": "The oidc-provider backend module for the auth plugin.", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/auth-backend-module-okta-provider/CHANGELOG.md b/plugins/auth-backend-module-okta-provider/CHANGELOG.md index 5ae2e1d789..10837b65b5 100644 --- a/plugins/auth-backend-module-okta-provider/CHANGELOG.md +++ b/plugins/auth-backend-module-okta-provider/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-auth-backend-module-okta-provider +## 0.1.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + ## 0.1.2-next.1 ### Patch Changes diff --git a/plugins/auth-backend-module-okta-provider/package.json b/plugins/auth-backend-module-okta-provider/package.json index 42b5cd507f..247cc1601f 100644 --- a/plugins/auth-backend-module-okta-provider/package.json +++ b/plugins/auth-backend-module-okta-provider/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-auth-backend-module-okta-provider", - "version": "0.1.2-next.1", + "version": "0.1.2-next.2", "description": "The okta-provider backend module for the auth plugin.", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/auth-backend-module-onelogin-provider/CHANGELOG.md b/plugins/auth-backend-module-onelogin-provider/CHANGELOG.md index 90d151025c..46d4a272e3 100644 --- a/plugins/auth-backend-module-onelogin-provider/CHANGELOG.md +++ b/plugins/auth-backend-module-onelogin-provider/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-auth-backend-module-onelogin-provider +## 0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + ## 0.2.2-next.1 ### Patch Changes diff --git a/plugins/auth-backend-module-onelogin-provider/package.json b/plugins/auth-backend-module-onelogin-provider/package.json index 7893025cf0..f3bfcc5547 100644 --- a/plugins/auth-backend-module-onelogin-provider/package.json +++ b/plugins/auth-backend-module-onelogin-provider/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-auth-backend-module-onelogin-provider", - "version": "0.2.2-next.1", + "version": "0.2.2-next.2", "description": "The onelogin-provider backend module for the auth plugin.", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/auth-backend-module-pinniped-provider/CHANGELOG.md b/plugins/auth-backend-module-pinniped-provider/CHANGELOG.md index e91752670d..8ace47b0d6 100644 --- a/plugins/auth-backend-module-pinniped-provider/CHANGELOG.md +++ b/plugins/auth-backend-module-pinniped-provider/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-auth-backend-module-pinniped-provider +## 0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + ## 0.2.2-next.1 ### Patch Changes diff --git a/plugins/auth-backend-module-pinniped-provider/package.json b/plugins/auth-backend-module-pinniped-provider/package.json index d7e7492b3c..d745576615 100644 --- a/plugins/auth-backend-module-pinniped-provider/package.json +++ b/plugins/auth-backend-module-pinniped-provider/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-auth-backend-module-pinniped-provider", - "version": "0.2.2-next.1", + "version": "0.2.2-next.2", "description": "The pinniped-provider backend module for the auth plugin.", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/auth-backend-module-vmware-cloud-provider/CHANGELOG.md b/plugins/auth-backend-module-vmware-cloud-provider/CHANGELOG.md index b810df97b6..64684b8b19 100644 --- a/plugins/auth-backend-module-vmware-cloud-provider/CHANGELOG.md +++ b/plugins/auth-backend-module-vmware-cloud-provider/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-auth-backend-module-vmware-cloud-provider +## 0.4.1-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + ## 0.4.1-next.1 ### Patch Changes diff --git a/plugins/auth-backend-module-vmware-cloud-provider/package.json b/plugins/auth-backend-module-vmware-cloud-provider/package.json index eb63ab2757..a54a7c4ed4 100644 --- a/plugins/auth-backend-module-vmware-cloud-provider/package.json +++ b/plugins/auth-backend-module-vmware-cloud-provider/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-auth-backend-module-vmware-cloud-provider", - "version": "0.4.1-next.1", + "version": "0.4.1-next.2", "description": "The vmware-cloud-provider backend module for the auth plugin.", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/auth-backend/CHANGELOG.md b/plugins/auth-backend/CHANGELOG.md index 637605a732..c2eca8003a 100644 --- a/plugins/auth-backend/CHANGELOG.md +++ b/plugins/auth-backend/CHANGELOG.md @@ -1,5 +1,36 @@ # @backstage/plugin-auth-backend +## 0.24.0-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + - @backstage/plugin-auth-backend-module-atlassian-provider@0.3.2-next.2 + - @backstage/plugin-auth-backend-module-auth0-provider@0.1.2-next.2 + - @backstage/plugin-auth-backend-module-aws-alb-provider@0.3.0-next.2 + - @backstage/plugin-auth-backend-module-azure-easyauth-provider@0.2.2-next.2 + - @backstage/plugin-auth-backend-module-bitbucket-provider@0.2.2-next.2 + - @backstage/plugin-auth-backend-module-bitbucket-server-provider@0.1.2-next.2 + - @backstage/plugin-auth-backend-module-cloudflare-access-provider@0.3.2-next.2 + - @backstage/plugin-auth-backend-module-gcp-iap-provider@0.3.2-next.2 + - @backstage/plugin-auth-backend-module-github-provider@0.2.2-next.2 + - @backstage/plugin-auth-backend-module-gitlab-provider@0.2.2-next.2 + - @backstage/plugin-auth-backend-module-google-provider@0.2.2-next.2 + - @backstage/plugin-auth-backend-module-microsoft-provider@0.2.2-next.2 + - @backstage/plugin-auth-backend-module-oauth2-provider@0.3.2-next.2 + - @backstage/plugin-auth-backend-module-oauth2-proxy-provider@0.2.2-next.2 + - @backstage/plugin-auth-backend-module-oidc-provider@0.3.2-next.2 + - @backstage/plugin-auth-backend-module-okta-provider@0.1.2-next.2 + - @backstage/plugin-auth-backend-module-onelogin-provider@0.2.2-next.2 + ## 0.24.0-next.1 ### Patch Changes diff --git a/plugins/auth-backend/package.json b/plugins/auth-backend/package.json index ef6f6cbd80..bae0e30a0f 100644 --- a/plugins/auth-backend/package.json +++ b/plugins/auth-backend/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-auth-backend", - "version": "0.24.0-next.1", + "version": "0.24.0-next.2", "description": "A Backstage backend plugin that handles authentication", "backstage": { "role": "backend-plugin", diff --git a/plugins/auth-node/CHANGELOG.md b/plugins/auth-node/CHANGELOG.md index 213357f213..2a23784592 100644 --- a/plugins/auth-node/CHANGELOG.md +++ b/plugins/auth-node/CHANGELOG.md @@ -1,5 +1,17 @@ # @backstage/plugin-auth-node +## 0.5.4-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + ## 0.5.4-next.1 ### Patch Changes diff --git a/plugins/auth-node/package.json b/plugins/auth-node/package.json index 7dfb770b91..5d7f6d4d2f 100644 --- a/plugins/auth-node/package.json +++ b/plugins/auth-node/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-auth-node", - "version": "0.5.4-next.1", + "version": "0.5.4-next.2", "backstage": { "role": "node-library", "pluginId": "auth", diff --git a/plugins/catalog-backend-module-aws/CHANGELOG.md b/plugins/catalog-backend-module-aws/CHANGELOG.md index c42990af5e..2b307c84e0 100644 --- a/plugins/catalog-backend-module-aws/CHANGELOG.md +++ b/plugins/catalog-backend-module-aws/CHANGELOG.md @@ -1,5 +1,21 @@ # @backstage/plugin-catalog-backend-module-aws +## 0.4.5-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-defaults@0.5.3-next.2 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/integration-aws-node@0.1.12 + - @backstage/plugin-catalog-common@1.1.0 + - @backstage/plugin-kubernetes-common@0.9.0-next.0 + ## 0.4.5-next.1 ### Patch Changes diff --git a/plugins/catalog-backend-module-aws/package.json b/plugins/catalog-backend-module-aws/package.json index 3c8c1c2468..32c4466af1 100644 --- a/plugins/catalog-backend-module-aws/package.json +++ b/plugins/catalog-backend-module-aws/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-catalog-backend-module-aws", - "version": "0.4.5-next.1", + "version": "0.4.5-next.2", "description": "A Backstage catalog backend module that helps integrate towards AWS", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/catalog-backend-module-azure/CHANGELOG.md b/plugins/catalog-backend-module-azure/CHANGELOG.md index 78bb05db95..bb7c9bfec4 100644 --- a/plugins/catalog-backend-module-azure/CHANGELOG.md +++ b/plugins/catalog-backend-module-azure/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-catalog-backend-module-azure +## 0.2.4-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/integration@1.15.1 + - @backstage/plugin-catalog-common@1.1.0 + ## 0.2.4-next.1 ### Patch Changes diff --git a/plugins/catalog-backend-module-azure/package.json b/plugins/catalog-backend-module-azure/package.json index 6aa74f0917..2578aa138a 100644 --- a/plugins/catalog-backend-module-azure/package.json +++ b/plugins/catalog-backend-module-azure/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-catalog-backend-module-azure", - "version": "0.2.4-next.1", + "version": "0.2.4-next.2", "description": "A Backstage catalog backend module that helps integrate towards Azure", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/catalog-backend-module-backstage-openapi/CHANGELOG.md b/plugins/catalog-backend-module-backstage-openapi/CHANGELOG.md index ea547fef4c..fbae7e340e 100644 --- a/plugins/catalog-backend-module-backstage-openapi/CHANGELOG.md +++ b/plugins/catalog-backend-module-backstage-openapi/CHANGELOG.md @@ -1,5 +1,17 @@ # @backstage/plugin-catalog-backend-module-backstage-openapi +## 0.4.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-openapi-utils@0.3.0-next.2 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + ## 0.4.2-next.1 ### Patch Changes diff --git a/plugins/catalog-backend-module-backstage-openapi/package.json b/plugins/catalog-backend-module-backstage-openapi/package.json index 9a18748a30..9c74251ec7 100644 --- a/plugins/catalog-backend-module-backstage-openapi/package.json +++ b/plugins/catalog-backend-module-backstage-openapi/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-catalog-backend-module-backstage-openapi", - "version": "0.4.2-next.1", + "version": "0.4.2-next.2", "backstage": { "role": "backend-plugin-module", "pluginId": "catalog", diff --git a/plugins/catalog-backend-module-bitbucket-cloud/CHANGELOG.md b/plugins/catalog-backend-module-bitbucket-cloud/CHANGELOG.md index e4c8d95f6d..c8c804da71 100644 --- a/plugins/catalog-backend-module-bitbucket-cloud/CHANGELOG.md +++ b/plugins/catalog-backend-module-bitbucket-cloud/CHANGELOG.md @@ -1,5 +1,20 @@ # @backstage/plugin-catalog-backend-module-bitbucket-cloud +## 0.4.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/integration@1.15.1 + - @backstage/plugin-bitbucket-cloud-common@0.2.24 + - @backstage/plugin-catalog-common@1.1.0 + ## 0.4.2-next.1 ### Patch Changes diff --git a/plugins/catalog-backend-module-bitbucket-cloud/package.json b/plugins/catalog-backend-module-bitbucket-cloud/package.json index 4fbb23e0c4..0bc3121b5a 100644 --- a/plugins/catalog-backend-module-bitbucket-cloud/package.json +++ b/plugins/catalog-backend-module-bitbucket-cloud/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-catalog-backend-module-bitbucket-cloud", - "version": "0.4.2-next.1", + "version": "0.4.2-next.2", "description": "A Backstage catalog backend module that helps integrate towards Bitbucket Cloud", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/catalog-backend-module-bitbucket-server/CHANGELOG.md b/plugins/catalog-backend-module-bitbucket-server/CHANGELOG.md index eea18bf03c..85f3c68faf 100644 --- a/plugins/catalog-backend-module-bitbucket-server/CHANGELOG.md +++ b/plugins/catalog-backend-module-bitbucket-server/CHANGELOG.md @@ -1,5 +1,17 @@ # @backstage/plugin-catalog-backend-module-bitbucket-server +## 0.2.4-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + ## 0.2.4-next.1 ### Patch Changes diff --git a/plugins/catalog-backend-module-bitbucket-server/package.json b/plugins/catalog-backend-module-bitbucket-server/package.json index 010f0903d8..d72e5dbc8e 100644 --- a/plugins/catalog-backend-module-bitbucket-server/package.json +++ b/plugins/catalog-backend-module-bitbucket-server/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-catalog-backend-module-bitbucket-server", - "version": "0.2.4-next.1", + "version": "0.2.4-next.2", "backstage": { "role": "backend-plugin-module", "pluginId": "catalog", diff --git a/plugins/catalog-backend-module-gcp/CHANGELOG.md b/plugins/catalog-backend-module-gcp/CHANGELOG.md index 13e9a4e735..5f3103839d 100644 --- a/plugins/catalog-backend-module-gcp/CHANGELOG.md +++ b/plugins/catalog-backend-module-gcp/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-catalog-backend-module-gcp +## 0.3.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/plugin-kubernetes-common@0.9.0-next.0 + ## 0.3.2-next.1 ### Patch Changes diff --git a/plugins/catalog-backend-module-gcp/package.json b/plugins/catalog-backend-module-gcp/package.json index 8815c05724..f3f2466a9c 100644 --- a/plugins/catalog-backend-module-gcp/package.json +++ b/plugins/catalog-backend-module-gcp/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-catalog-backend-module-gcp", - "version": "0.3.2-next.1", + "version": "0.3.2-next.2", "description": "A Backstage catalog backend module that helps integrate towards GCP", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/catalog-backend-module-gerrit/CHANGELOG.md b/plugins/catalog-backend-module-gerrit/CHANGELOG.md index a0ed06b248..f4aa85e083 100644 --- a/plugins/catalog-backend-module-gerrit/CHANGELOG.md +++ b/plugins/catalog-backend-module-gerrit/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-catalog-backend-module-gerrit +## 0.2.4-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + ## 0.2.4-next.1 ### Patch Changes diff --git a/plugins/catalog-backend-module-gerrit/package.json b/plugins/catalog-backend-module-gerrit/package.json index 043dc09d59..f644cdb837 100644 --- a/plugins/catalog-backend-module-gerrit/package.json +++ b/plugins/catalog-backend-module-gerrit/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-catalog-backend-module-gerrit", - "version": "0.2.4-next.1", + "version": "0.2.4-next.2", "backstage": { "role": "backend-plugin-module", "pluginId": "catalog", diff --git a/plugins/catalog-backend-module-github-org/CHANGELOG.md b/plugins/catalog-backend-module-github-org/CHANGELOG.md index a90e23a8d2..6f0f83ddc5 100644 --- a/plugins/catalog-backend-module-github-org/CHANGELOG.md +++ b/plugins/catalog-backend-module-github-org/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-catalog-backend-module-github-org +## 0.3.4-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/plugin-catalog-backend-module-github@0.7.7-next.2 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + ## 0.3.4-next.1 ### Patch Changes diff --git a/plugins/catalog-backend-module-github-org/package.json b/plugins/catalog-backend-module-github-org/package.json index 5e2b09da3e..ca41b0fea4 100644 --- a/plugins/catalog-backend-module-github-org/package.json +++ b/plugins/catalog-backend-module-github-org/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-catalog-backend-module-github-org", - "version": "0.3.4-next.1", + "version": "0.3.4-next.2", "description": "The github-org backend module for the catalog plugin.", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/catalog-backend-module-github/CHANGELOG.md b/plugins/catalog-backend-module-github/CHANGELOG.md index fae12a3353..2ed95f7dcf 100644 --- a/plugins/catalog-backend-module-github/CHANGELOG.md +++ b/plugins/catalog-backend-module-github/CHANGELOG.md @@ -1,5 +1,20 @@ # @backstage/plugin-catalog-backend-module-github +## 0.7.7-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/plugin-catalog-backend@1.28.0-next.2 + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/integration@1.15.1 + - @backstage/plugin-catalog-common@1.1.0 + ## 0.7.7-next.1 ### Patch Changes diff --git a/plugins/catalog-backend-module-github/package.json b/plugins/catalog-backend-module-github/package.json index 15dd38ce10..3e1ab34b19 100644 --- a/plugins/catalog-backend-module-github/package.json +++ b/plugins/catalog-backend-module-github/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-catalog-backend-module-github", - "version": "0.7.7-next.1", + "version": "0.7.7-next.2", "description": "A Backstage catalog backend module that helps integrate towards GitHub", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/catalog-backend-module-gitlab-org/CHANGELOG.md b/plugins/catalog-backend-module-gitlab-org/CHANGELOG.md index e75c7a7538..f4c525b2c8 100644 --- a/plugins/catalog-backend-module-gitlab-org/CHANGELOG.md +++ b/plugins/catalog-backend-module-gitlab-org/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-catalog-backend-module-gitlab-org +## 0.2.3-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-backend-module-gitlab@0.5.0-next.2 + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + ## 0.2.3-next.1 ### Patch Changes diff --git a/plugins/catalog-backend-module-gitlab-org/package.json b/plugins/catalog-backend-module-gitlab-org/package.json index 1f719565b4..c064437b0b 100644 --- a/plugins/catalog-backend-module-gitlab-org/package.json +++ b/plugins/catalog-backend-module-gitlab-org/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-catalog-backend-module-gitlab-org", - "version": "0.2.3-next.1", + "version": "0.2.3-next.2", "description": "The gitlab-org backend module for the catalog plugin.", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/catalog-backend-module-gitlab/CHANGELOG.md b/plugins/catalog-backend-module-gitlab/CHANGELOG.md index 5a73b9ada0..37eeacddae 100644 --- a/plugins/catalog-backend-module-gitlab/CHANGELOG.md +++ b/plugins/catalog-backend-module-gitlab/CHANGELOG.md @@ -1,5 +1,23 @@ # @backstage/plugin-catalog-backend-module-gitlab +## 0.5.0-next.2 + +### Minor Changes + +- 1b5fdd9: Extended the configuration with the `includeArchivedRepos` property, which allows including repositories when the project is archived. + +### Patch Changes + +- Updated dependencies + - @backstage/backend-defaults@0.5.3-next.2 + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/integration@1.15.1 + - @backstage/plugin-catalog-common@1.1.0 + ## 0.4.5-next.1 ### Patch Changes diff --git a/plugins/catalog-backend-module-gitlab/package.json b/plugins/catalog-backend-module-gitlab/package.json index 9262381837..cba48869f1 100644 --- a/plugins/catalog-backend-module-gitlab/package.json +++ b/plugins/catalog-backend-module-gitlab/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-catalog-backend-module-gitlab", - "version": "0.4.5-next.1", + "version": "0.5.0-next.2", "description": "A Backstage catalog backend module that helps integrate towards GitLab", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/catalog-backend-module-incremental-ingestion/CHANGELOG.md b/plugins/catalog-backend-module-incremental-ingestion/CHANGELOG.md index 0730ccf099..513ba86637 100644 --- a/plugins/catalog-backend-module-incremental-ingestion/CHANGELOG.md +++ b/plugins/catalog-backend-module-incremental-ingestion/CHANGELOG.md @@ -1,5 +1,20 @@ # @backstage/plugin-catalog-backend-module-incremental-ingestion +## 0.6.0-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-backend@1.28.0-next.2 + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + - @backstage/plugin-permission-common@0.8.1 + ## 0.6.0-next.1 ### Minor Changes diff --git a/plugins/catalog-backend-module-incremental-ingestion/package.json b/plugins/catalog-backend-module-incremental-ingestion/package.json index 7ae771dd7c..e1d542f34a 100644 --- a/plugins/catalog-backend-module-incremental-ingestion/package.json +++ b/plugins/catalog-backend-module-incremental-ingestion/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-catalog-backend-module-incremental-ingestion", - "version": "0.6.0-next.1", + "version": "0.6.0-next.2", "description": "An entity provider for streaming large asset sources into the catalog", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/catalog-backend-module-ldap/CHANGELOG.md b/plugins/catalog-backend-module-ldap/CHANGELOG.md index 548b0077dc..d8be79ce75 100644 --- a/plugins/catalog-backend-module-ldap/CHANGELOG.md +++ b/plugins/catalog-backend-module-ldap/CHANGELOG.md @@ -1,5 +1,22 @@ # @backstage/plugin-catalog-backend-module-ldap +## 0.10.0-next.2 + +### Minor Changes + +- 415aeb3: Add Support for Google LDAP Vendor + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + - @backstage/plugin-catalog-common@1.1.0 + ## 0.9.2-next.1 ### Patch Changes diff --git a/plugins/catalog-backend-module-ldap/package.json b/plugins/catalog-backend-module-ldap/package.json index 4b51bafef7..907c100e79 100644 --- a/plugins/catalog-backend-module-ldap/package.json +++ b/plugins/catalog-backend-module-ldap/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-catalog-backend-module-ldap", - "version": "0.9.2-next.1", + "version": "0.10.0-next.2", "description": "A Backstage catalog backend module that helps integrate towards LDAP", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/catalog-backend-module-logs/CHANGELOG.md b/plugins/catalog-backend-module-logs/CHANGELOG.md index 383326a13f..1a87d7b586 100644 --- a/plugins/catalog-backend-module-logs/CHANGELOG.md +++ b/plugins/catalog-backend-module-logs/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-catalog-backend-module-logs +## 0.1.4-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-backend@1.28.0-next.2 + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + ## 0.1.4-next.1 ### Patch Changes diff --git a/plugins/catalog-backend-module-logs/package.json b/plugins/catalog-backend-module-logs/package.json index abcccda051..44579c656b 100644 --- a/plugins/catalog-backend-module-logs/package.json +++ b/plugins/catalog-backend-module-logs/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-catalog-backend-module-logs", - "version": "0.1.4-next.1", + "version": "0.1.4-next.2", "description": "A module that subscribes to catalog releated events and logs them.", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/catalog-backend-module-msgraph/CHANGELOG.md b/plugins/catalog-backend-module-msgraph/CHANGELOG.md index ea0cbb3b40..1dfe8417a5 100644 --- a/plugins/catalog-backend-module-msgraph/CHANGELOG.md +++ b/plugins/catalog-backend-module-msgraph/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-catalog-backend-module-msgraph +## 0.6.4-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/plugin-catalog-common@1.1.0 + ## 0.6.4-next.1 ### Patch Changes diff --git a/plugins/catalog-backend-module-msgraph/package.json b/plugins/catalog-backend-module-msgraph/package.json index dec716e727..b611b9449f 100644 --- a/plugins/catalog-backend-module-msgraph/package.json +++ b/plugins/catalog-backend-module-msgraph/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-catalog-backend-module-msgraph", - "version": "0.6.4-next.1", + "version": "0.6.4-next.2", "description": "A Backstage catalog backend module that helps integrate towards Microsoft Graph", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/catalog-backend-module-openapi/CHANGELOG.md b/plugins/catalog-backend-module-openapi/CHANGELOG.md index 315cfad1ee..635b5f4d0f 100644 --- a/plugins/catalog-backend-module-openapi/CHANGELOG.md +++ b/plugins/catalog-backend-module-openapi/CHANGELOG.md @@ -1,5 +1,19 @@ # @backstage/plugin-catalog-backend-module-openapi +## 0.2.4-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-backend@1.28.0-next.2 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/integration@1.15.1 + - @backstage/types@1.1.1 + - @backstage/plugin-catalog-common@1.1.0 + ## 0.2.4-next.1 ### Patch Changes diff --git a/plugins/catalog-backend-module-openapi/package.json b/plugins/catalog-backend-module-openapi/package.json index 6566526f4b..e488eadb0f 100644 --- a/plugins/catalog-backend-module-openapi/package.json +++ b/plugins/catalog-backend-module-openapi/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-catalog-backend-module-openapi", - "version": "0.2.4-next.1", + "version": "0.2.4-next.2", "description": "A Backstage catalog backend module that helps with OpenAPI specifications", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/catalog-backend-module-puppetdb/CHANGELOG.md b/plugins/catalog-backend-module-puppetdb/CHANGELOG.md index d707dac9d5..aca25d93d2 100644 --- a/plugins/catalog-backend-module-puppetdb/CHANGELOG.md +++ b/plugins/catalog-backend-module-puppetdb/CHANGELOG.md @@ -1,5 +1,17 @@ # @backstage/plugin-catalog-backend-module-puppetdb +## 0.2.4-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + ## 0.2.4-next.1 ### Patch Changes diff --git a/plugins/catalog-backend-module-puppetdb/package.json b/plugins/catalog-backend-module-puppetdb/package.json index 3f3ef917c4..0926726bb7 100644 --- a/plugins/catalog-backend-module-puppetdb/package.json +++ b/plugins/catalog-backend-module-puppetdb/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-catalog-backend-module-puppetdb", - "version": "0.2.4-next.1", + "version": "0.2.4-next.2", "description": "A Backstage catalog backend module that helps integrate towards PuppetDB", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/catalog-backend-module-scaffolder-entity-model/CHANGELOG.md b/plugins/catalog-backend-module-scaffolder-entity-model/CHANGELOG.md index 620244d47a..83a2f6c9b7 100644 --- a/plugins/catalog-backend-module-scaffolder-entity-model/CHANGELOG.md +++ b/plugins/catalog-backend-module-scaffolder-entity-model/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-catalog-backend-module-scaffolder-entity-model +## 0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/plugin-catalog-common@1.1.0 + - @backstage/plugin-scaffolder-common@1.5.6 + ## 0.2.2-next.1 ### Patch Changes diff --git a/plugins/catalog-backend-module-scaffolder-entity-model/package.json b/plugins/catalog-backend-module-scaffolder-entity-model/package.json index 2b4d9bc385..b226214ca7 100644 --- a/plugins/catalog-backend-module-scaffolder-entity-model/package.json +++ b/plugins/catalog-backend-module-scaffolder-entity-model/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-catalog-backend-module-scaffolder-entity-model", - "version": "0.2.2-next.1", + "version": "0.2.2-next.2", "description": "Adds support for the scaffolder specific entity model (e.g. the Template kind) to the catalog backend plugin.", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/catalog-backend-module-unprocessed/CHANGELOG.md b/plugins/catalog-backend-module-unprocessed/CHANGELOG.md index 2770b7c32a..bcfe8fcf6f 100644 --- a/plugins/catalog-backend-module-unprocessed/CHANGELOG.md +++ b/plugins/catalog-backend-module-unprocessed/CHANGELOG.md @@ -1,5 +1,18 @@ # @backstage/plugin-catalog-backend-module-unprocessed +## 0.5.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/errors@1.2.4 + - @backstage/plugin-catalog-unprocessed-entities-common@0.0.4 + - @backstage/plugin-permission-common@0.8.1 + ## 0.5.2-next.1 ### Patch Changes diff --git a/plugins/catalog-backend-module-unprocessed/package.json b/plugins/catalog-backend-module-unprocessed/package.json index 25ba1f722f..f9b0543d8d 100644 --- a/plugins/catalog-backend-module-unprocessed/package.json +++ b/plugins/catalog-backend-module-unprocessed/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-catalog-backend-module-unprocessed", - "version": "0.5.2-next.1", + "version": "0.5.2-next.2", "description": "Backstage Catalog module to view unprocessed entities", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/catalog-backend/CHANGELOG.md b/plugins/catalog-backend/CHANGELOG.md index ab58bb56ff..c8c1961e2d 100644 --- a/plugins/catalog-backend/CHANGELOG.md +++ b/plugins/catalog-backend/CHANGELOG.md @@ -1,5 +1,29 @@ # @backstage/plugin-catalog-backend +## 1.28.0-next.2 + +### Minor Changes + +- 39fd704: Internal update to use the new generated server types from `backstage-cli package schema openapi generate --server`. + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/backend-openapi-utils@0.3.0-next.2 + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/plugin-search-backend-module-catalog@0.2.5-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/types@1.1.1 + - @backstage/plugin-catalog-common@1.1.0 + - @backstage/plugin-permission-common@0.8.1 + - @backstage/plugin-permission-node@0.8.5-next.2 + ## 1.27.2-next.1 ### Patch Changes diff --git a/plugins/catalog-backend/package.json b/plugins/catalog-backend/package.json index 571cfda2d7..f981d72dea 100644 --- a/plugins/catalog-backend/package.json +++ b/plugins/catalog-backend/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-catalog-backend", - "version": "1.27.2-next.1", + "version": "1.28.0-next.2", "description": "The Backstage backend plugin that provides the Backstage catalog", "backstage": { "role": "backend-plugin", diff --git a/plugins/catalog-graph/CHANGELOG.md b/plugins/catalog-graph/CHANGELOG.md index 2c20cd52f6..66f89e5d43 100644 --- a/plugins/catalog-graph/CHANGELOG.md +++ b/plugins/catalog-graph/CHANGELOG.md @@ -1,5 +1,19 @@ # @backstage/plugin-catalog-graph +## 0.4.12-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/core-compat-api@0.3.2-next.1 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/frontend-plugin-api@0.9.1-next.1 + - @backstage/types@1.1.1 + ## 0.4.12-next.1 ### Patch Changes diff --git a/plugins/catalog-graph/package.json b/plugins/catalog-graph/package.json index 99a0e07144..d8ed22e0fb 100644 --- a/plugins/catalog-graph/package.json +++ b/plugins/catalog-graph/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-catalog-graph", - "version": "0.4.12-next.1", + "version": "0.4.12-next.2", "backstage": { "role": "frontend-plugin", "pluginId": "catalog-graph", diff --git a/plugins/catalog-import/CHANGELOG.md b/plugins/catalog-import/CHANGELOG.md index 783dd62062..dcae7dd1cc 100644 --- a/plugins/catalog-import/CHANGELOG.md +++ b/plugins/catalog-import/CHANGELOG.md @@ -1,5 +1,24 @@ # @backstage/plugin-catalog-import +## 0.12.6-next.2 + +### Patch Changes + +- ea5b7f3: Fixed parsing of catalog-info.yaml when creating a PR to register a repository if the file contains more than one document +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/core-compat-api@0.3.2-next.1 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/errors@1.2.4 + - @backstage/frontend-plugin-api@0.9.1-next.1 + - @backstage/integration@1.15.1 + - @backstage/integration-react@1.2.0 + - @backstage/plugin-catalog-common@1.1.0 + ## 0.12.6-next.1 ### Patch Changes diff --git a/plugins/catalog-import/package.json b/plugins/catalog-import/package.json index 05ca9673ce..3728f1ee59 100644 --- a/plugins/catalog-import/package.json +++ b/plugins/catalog-import/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-catalog-import", - "version": "0.12.6-next.1", + "version": "0.12.6-next.2", "description": "A Backstage plugin the helps you import entities into your catalog", "backstage": { "role": "frontend-plugin", diff --git a/plugins/catalog-node/CHANGELOG.md b/plugins/catalog-node/CHANGELOG.md index 35f72b6b09..e4e05ee019 100644 --- a/plugins/catalog-node/CHANGELOG.md +++ b/plugins/catalog-node/CHANGELOG.md @@ -1,5 +1,19 @@ # @backstage/plugin-catalog-node +## 1.14.0-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + - @backstage/plugin-catalog-common@1.1.0 + - @backstage/plugin-permission-common@0.8.1 + - @backstage/plugin-permission-node@0.8.5-next.2 + ## 1.14.0-next.1 ### Patch Changes diff --git a/plugins/catalog-node/package.json b/plugins/catalog-node/package.json index 2cd887c118..2e0c7bdf4f 100644 --- a/plugins/catalog-node/package.json +++ b/plugins/catalog-node/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-catalog-node", - "version": "1.14.0-next.1", + "version": "1.14.0-next.2", "description": "The plugin-catalog-node module for @backstage/plugin-catalog-backend", "backstage": { "role": "node-library", diff --git a/plugins/catalog-react/CHANGELOG.md b/plugins/catalog-react/CHANGELOG.md index bb49d600c8..552d7e03de 100644 --- a/plugins/catalog-react/CHANGELOG.md +++ b/plugins/catalog-react/CHANGELOG.md @@ -1,5 +1,25 @@ # @backstage/plugin-catalog-react +## 1.14.1-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/catalog-model@1.7.0 + - @backstage/core-compat-api@0.3.2-next.1 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/errors@1.2.4 + - @backstage/frontend-plugin-api@0.9.1-next.1 + - @backstage/frontend-test-utils@0.2.2-next.1 + - @backstage/integration-react@1.2.0 + - @backstage/types@1.1.1 + - @backstage/version-bridge@1.0.10 + - @backstage/plugin-catalog-common@1.1.0 + - @backstage/plugin-permission-common@0.8.1 + - @backstage/plugin-permission-react@0.4.27 + ## 1.14.1-next.1 ### Patch Changes diff --git a/plugins/catalog-react/package.json b/plugins/catalog-react/package.json index 86bb10d304..787a7d86ae 100644 --- a/plugins/catalog-react/package.json +++ b/plugins/catalog-react/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-catalog-react", - "version": "1.14.1-next.1", + "version": "1.14.1-next.2", "description": "A frontend library that helps other Backstage plugins interact with the catalog", "backstage": { "role": "web-library", diff --git a/plugins/catalog/CHANGELOG.md b/plugins/catalog/CHANGELOG.md index 85af6fb024..850020fae9 100644 --- a/plugins/catalog/CHANGELOG.md +++ b/plugins/catalog/CHANGELOG.md @@ -1,5 +1,26 @@ # @backstage/plugin-catalog +## 1.24.1-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/core-compat-api@0.3.2-next.1 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/errors@1.2.4 + - @backstage/frontend-plugin-api@0.9.1-next.1 + - @backstage/integration-react@1.2.0 + - @backstage/types@1.1.1 + - @backstage/plugin-catalog-common@1.1.0 + - @backstage/plugin-permission-react@0.4.27 + - @backstage/plugin-scaffolder-common@1.5.6 + - @backstage/plugin-search-common@1.2.14 + - @backstage/plugin-search-react@1.8.2-next.1 + ## 1.24.1-next.1 ### Patch Changes diff --git a/plugins/catalog/package.json b/plugins/catalog/package.json index 5c2dca02d7..fd52f8f561 100644 --- a/plugins/catalog/package.json +++ b/plugins/catalog/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-catalog", - "version": "1.24.1-next.1", + "version": "1.24.1-next.2", "description": "The Backstage plugin for browsing the Backstage catalog", "backstage": { "role": "frontend-plugin", diff --git a/plugins/devtools-backend/CHANGELOG.md b/plugins/devtools-backend/CHANGELOG.md index cf3a5edca6..740e03554c 100644 --- a/plugins/devtools-backend/CHANGELOG.md +++ b/plugins/devtools-backend/CHANGELOG.md @@ -1,5 +1,20 @@ # @backstage/plugin-devtools-backend +## 0.4.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/cli-common@0.1.15-next.0 + - @backstage/config@1.2.0 + - @backstage/config-loader@1.9.2-next.0 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + - @backstage/plugin-devtools-common@0.1.12 + - @backstage/plugin-permission-common@0.8.1 + - @backstage/plugin-permission-node@0.8.5-next.2 + ## 0.4.2-next.1 ### Patch Changes diff --git a/plugins/devtools-backend/package.json b/plugins/devtools-backend/package.json index 42b4fafc8c..e59a1c6df4 100644 --- a/plugins/devtools-backend/package.json +++ b/plugins/devtools-backend/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-devtools-backend", - "version": "0.4.2-next.1", + "version": "0.4.2-next.2", "backstage": { "role": "backend-plugin", "pluginId": "devtools", diff --git a/plugins/events-backend-module-aws-sqs/CHANGELOG.md b/plugins/events-backend-module-aws-sqs/CHANGELOG.md index 93ab9a96b0..6485ebece6 100644 --- a/plugins/events-backend-module-aws-sqs/CHANGELOG.md +++ b/plugins/events-backend-module-aws-sqs/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-events-backend-module-aws-sqs +## 0.4.5-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/types@1.1.1 + ## 0.4.5-next.1 ### Patch Changes diff --git a/plugins/events-backend-module-aws-sqs/package.json b/plugins/events-backend-module-aws-sqs/package.json index 85004073bb..076049a9bf 100644 --- a/plugins/events-backend-module-aws-sqs/package.json +++ b/plugins/events-backend-module-aws-sqs/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-events-backend-module-aws-sqs", - "version": "0.4.5-next.1", + "version": "0.4.5-next.2", "backstage": { "role": "backend-plugin-module", "pluginId": "events", diff --git a/plugins/events-backend-module-azure/CHANGELOG.md b/plugins/events-backend-module-azure/CHANGELOG.md index d739a010ea..65cc730616 100644 --- a/plugins/events-backend-module-azure/CHANGELOG.md +++ b/plugins/events-backend-module-azure/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-events-backend-module-azure +## 0.2.14-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + ## 0.2.14-next.1 ### Patch Changes diff --git a/plugins/events-backend-module-azure/package.json b/plugins/events-backend-module-azure/package.json index 3ec400b814..6b067f742d 100644 --- a/plugins/events-backend-module-azure/package.json +++ b/plugins/events-backend-module-azure/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-events-backend-module-azure", - "version": "0.2.14-next.1", + "version": "0.2.14-next.2", "backstage": { "role": "backend-plugin-module", "pluginId": "events", diff --git a/plugins/events-backend-module-bitbucket-cloud/CHANGELOG.md b/plugins/events-backend-module-bitbucket-cloud/CHANGELOG.md index 181c549814..95d50b6a81 100644 --- a/plugins/events-backend-module-bitbucket-cloud/CHANGELOG.md +++ b/plugins/events-backend-module-bitbucket-cloud/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-events-backend-module-bitbucket-cloud +## 0.2.14-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + ## 0.2.14-next.1 ### Patch Changes diff --git a/plugins/events-backend-module-bitbucket-cloud/package.json b/plugins/events-backend-module-bitbucket-cloud/package.json index 9c241fcd1e..4501ff446c 100644 --- a/plugins/events-backend-module-bitbucket-cloud/package.json +++ b/plugins/events-backend-module-bitbucket-cloud/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-events-backend-module-bitbucket-cloud", - "version": "0.2.14-next.1", + "version": "0.2.14-next.2", "backstage": { "role": "backend-plugin-module", "pluginId": "events", diff --git a/plugins/events-backend-module-gerrit/CHANGELOG.md b/plugins/events-backend-module-gerrit/CHANGELOG.md index 6f7e56a7fd..f98005e2d9 100644 --- a/plugins/events-backend-module-gerrit/CHANGELOG.md +++ b/plugins/events-backend-module-gerrit/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-events-backend-module-gerrit +## 0.2.14-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + ## 0.2.14-next.1 ### Patch Changes diff --git a/plugins/events-backend-module-gerrit/package.json b/plugins/events-backend-module-gerrit/package.json index be57c075f6..b567bbcf21 100644 --- a/plugins/events-backend-module-gerrit/package.json +++ b/plugins/events-backend-module-gerrit/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-events-backend-module-gerrit", - "version": "0.2.14-next.1", + "version": "0.2.14-next.2", "backstage": { "role": "backend-plugin-module", "pluginId": "events", diff --git a/plugins/events-backend-module-github/CHANGELOG.md b/plugins/events-backend-module-github/CHANGELOG.md index f472d0c61d..4824f3d840 100644 --- a/plugins/events-backend-module-github/CHANGELOG.md +++ b/plugins/events-backend-module-github/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-events-backend-module-github +## 0.2.14-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + ## 0.2.14-next.1 ### Patch Changes diff --git a/plugins/events-backend-module-github/package.json b/plugins/events-backend-module-github/package.json index 38f452755b..91ae85b2d6 100644 --- a/plugins/events-backend-module-github/package.json +++ b/plugins/events-backend-module-github/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-events-backend-module-github", - "version": "0.2.14-next.1", + "version": "0.2.14-next.2", "backstage": { "role": "backend-plugin-module", "pluginId": "events", diff --git a/plugins/events-backend-module-gitlab/CHANGELOG.md b/plugins/events-backend-module-gitlab/CHANGELOG.md index e9b67f3c14..26b2992acf 100644 --- a/plugins/events-backend-module-gitlab/CHANGELOG.md +++ b/plugins/events-backend-module-gitlab/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-events-backend-module-gitlab +## 0.2.14-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + ## 0.2.14-next.1 ### Patch Changes diff --git a/plugins/events-backend-module-gitlab/package.json b/plugins/events-backend-module-gitlab/package.json index bf43e7a863..ede5875e8d 100644 --- a/plugins/events-backend-module-gitlab/package.json +++ b/plugins/events-backend-module-gitlab/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-events-backend-module-gitlab", - "version": "0.2.14-next.1", + "version": "0.2.14-next.2", "backstage": { "role": "backend-plugin-module", "pluginId": "events", diff --git a/plugins/events-backend-test-utils/CHANGELOG.md b/plugins/events-backend-test-utils/CHANGELOG.md index a65cd3af04..a17bd8fd87 100644 --- a/plugins/events-backend-test-utils/CHANGELOG.md +++ b/plugins/events-backend-test-utils/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-events-backend-test-utils +## 0.1.38-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-events-node@0.4.5-next.2 + ## 0.1.38-next.1 ### Patch Changes diff --git a/plugins/events-backend-test-utils/package.json b/plugins/events-backend-test-utils/package.json index dc29fb2f85..306db27697 100644 --- a/plugins/events-backend-test-utils/package.json +++ b/plugins/events-backend-test-utils/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-events-backend-test-utils", - "version": "0.1.38-next.1", + "version": "0.1.38-next.2", "description": "The plugin-events-backend-test-utils for @backstage/plugin-events-node", "backstage": { "role": "node-library", diff --git a/plugins/events-backend/CHANGELOG.md b/plugins/events-backend/CHANGELOG.md index 9058b60f31..1feb3cb63e 100644 --- a/plugins/events-backend/CHANGELOG.md +++ b/plugins/events-backend/CHANGELOG.md @@ -1,5 +1,18 @@ # @backstage/plugin-events-backend +## 0.3.16-next.2 + +### Patch Changes + +- b7d0334: Cleaning up event subscriptions after the max age window +- Updated dependencies + - @backstage/backend-openapi-utils@0.3.0-next.2 + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + ## 0.3.16-next.1 ### Patch Changes diff --git a/plugins/events-backend/package.json b/plugins/events-backend/package.json index ef8108ceb8..569cee0c27 100644 --- a/plugins/events-backend/package.json +++ b/plugins/events-backend/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-events-backend", - "version": "0.3.16-next.1", + "version": "0.3.16-next.2", "backstage": { "role": "backend-plugin", "pluginId": "events", diff --git a/plugins/events-node/CHANGELOG.md b/plugins/events-node/CHANGELOG.md index 98c8e35f18..8a9f446e89 100644 --- a/plugins/events-node/CHANGELOG.md +++ b/plugins/events-node/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-events-node +## 0.4.5-next.2 + +### Patch Changes + +- 0b57aa1: Fixed an issue where the event bus polling would duplicate and increase exponentially over time. +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + ## 0.4.4-next.1 ### Patch Changes diff --git a/plugins/events-node/package.json b/plugins/events-node/package.json index c2815964e5..dda45a28ef 100644 --- a/plugins/events-node/package.json +++ b/plugins/events-node/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-events-node", - "version": "0.4.4-next.1", + "version": "0.4.5-next.2", "description": "The plugin-events-node module for @backstage/plugin-events-backend", "backstage": { "role": "node-library", diff --git a/plugins/example-todo-list-backend/CHANGELOG.md b/plugins/example-todo-list-backend/CHANGELOG.md index d6f0f28787..823987f9c7 100644 --- a/plugins/example-todo-list-backend/CHANGELOG.md +++ b/plugins/example-todo-list-backend/CHANGELOG.md @@ -1,5 +1,14 @@ # @internal/plugin-todo-list-backend +## 1.0.33-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/errors@1.2.4 + ## 1.0.33-next.1 ### Patch Changes diff --git a/plugins/example-todo-list-backend/package.json b/plugins/example-todo-list-backend/package.json index 63df951de7..183c781ce9 100644 --- a/plugins/example-todo-list-backend/package.json +++ b/plugins/example-todo-list-backend/package.json @@ -1,6 +1,6 @@ { "name": "@internal/plugin-todo-list-backend", - "version": "1.0.33-next.1", + "version": "1.0.33-next.2", "backstage": { "role": "backend-plugin", "pluginId": "todo-list", diff --git a/plugins/home/CHANGELOG.md b/plugins/home/CHANGELOG.md index eca5f29425..212337905b 100644 --- a/plugins/home/CHANGELOG.md +++ b/plugins/home/CHANGELOG.md @@ -1,5 +1,22 @@ # @backstage/plugin-home +## 0.8.1-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/core-app-api@1.15.1 + - @backstage/core-compat-api@0.3.2-next.1 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/frontend-plugin-api@0.9.1-next.1 + - @backstage/theme@0.6.1-next.0 + - @backstage/plugin-home-react@0.1.19-next.1 + ## 0.8.1-next.1 ### Patch Changes diff --git a/plugins/home/package.json b/plugins/home/package.json index ab744702a0..e394d73a20 100644 --- a/plugins/home/package.json +++ b/plugins/home/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-home", - "version": "0.8.1-next.1", + "version": "0.8.1-next.2", "description": "A Backstage plugin that helps you build a home page", "backstage": { "role": "frontend-plugin", diff --git a/plugins/kubernetes-backend/CHANGELOG.md b/plugins/kubernetes-backend/CHANGELOG.md index 9f5b9fdfdf..26727576d3 100644 --- a/plugins/kubernetes-backend/CHANGELOG.md +++ b/plugins/kubernetes-backend/CHANGELOG.md @@ -1,5 +1,25 @@ # @backstage/plugin-kubernetes-backend +## 0.19.0-next.2 + +### Patch Changes + +- bee9664: Adapted the config.d.ts for custom k8s cluster authProvider implementations +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration-aws-node@0.1.12 + - @backstage/types@1.1.1 + - @backstage/plugin-kubernetes-common@0.9.0-next.0 + - @backstage/plugin-kubernetes-node@0.2.0-next.2 + - @backstage/plugin-permission-common@0.8.1 + - @backstage/plugin-permission-node@0.8.5-next.2 + ## 0.19.0-next.1 ### Minor Changes diff --git a/plugins/kubernetes-backend/package.json b/plugins/kubernetes-backend/package.json index d4334b4a02..673dc85c67 100644 --- a/plugins/kubernetes-backend/package.json +++ b/plugins/kubernetes-backend/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-kubernetes-backend", - "version": "0.19.0-next.1", + "version": "0.19.0-next.2", "description": "A Backstage backend plugin that integrates towards Kubernetes", "backstage": { "role": "backend-plugin", diff --git a/plugins/kubernetes-cluster/CHANGELOG.md b/plugins/kubernetes-cluster/CHANGELOG.md index 919c83d3c6..e28dcef6bc 100644 --- a/plugins/kubernetes-cluster/CHANGELOG.md +++ b/plugins/kubernetes-cluster/CHANGELOG.md @@ -1,5 +1,17 @@ # @backstage/plugin-kubernetes-cluster +## 0.0.18-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/plugin-kubernetes-common@0.9.0-next.0 + - @backstage/plugin-kubernetes-react@0.5.0-next.1 + ## 0.0.18-next.1 ### Patch Changes diff --git a/plugins/kubernetes-cluster/package.json b/plugins/kubernetes-cluster/package.json index eb2da3016a..b05b70c7cd 100644 --- a/plugins/kubernetes-cluster/package.json +++ b/plugins/kubernetes-cluster/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-kubernetes-cluster", - "version": "0.0.18-next.1", + "version": "0.0.18-next.2", "description": "A Backstage plugin that shows details of Kubernetes clusters", "backstage": { "role": "frontend-plugin", diff --git a/plugins/kubernetes-node/CHANGELOG.md b/plugins/kubernetes-node/CHANGELOG.md index 085d4bc887..ef324f5079 100644 --- a/plugins/kubernetes-node/CHANGELOG.md +++ b/plugins/kubernetes-node/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-kubernetes-node +## 0.2.0-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/types@1.1.1 + - @backstage/plugin-kubernetes-common@0.9.0-next.0 + ## 0.2.0-next.1 ### Minor Changes diff --git a/plugins/kubernetes-node/package.json b/plugins/kubernetes-node/package.json index aa6ecc7e7d..a07d42b9c1 100644 --- a/plugins/kubernetes-node/package.json +++ b/plugins/kubernetes-node/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-kubernetes-node", - "version": "0.2.0-next.1", + "version": "0.2.0-next.2", "description": "Node.js library for the kubernetes plugin", "backstage": { "role": "node-library", diff --git a/plugins/kubernetes/CHANGELOG.md b/plugins/kubernetes/CHANGELOG.md index fd17e58059..7480b7bdcc 100644 --- a/plugins/kubernetes/CHANGELOG.md +++ b/plugins/kubernetes/CHANGELOG.md @@ -1,5 +1,19 @@ # @backstage/plugin-kubernetes +## 0.12.0-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/core-compat-api@0.3.2-next.1 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/frontend-plugin-api@0.9.1-next.1 + - @backstage/plugin-kubernetes-common@0.9.0-next.0 + - @backstage/plugin-kubernetes-react@0.5.0-next.1 + ## 0.12.0-next.1 ### Minor Changes diff --git a/plugins/kubernetes/package.json b/plugins/kubernetes/package.json index da7596e172..381f1f265b 100644 --- a/plugins/kubernetes/package.json +++ b/plugins/kubernetes/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-kubernetes", - "version": "0.12.0-next.1", + "version": "0.12.0-next.2", "description": "A Backstage plugin that integrates towards Kubernetes", "backstage": { "role": "frontend-plugin", diff --git a/plugins/notifications-backend-module-email/CHANGELOG.md b/plugins/notifications-backend-module-email/CHANGELOG.md index ac02698a95..cc9b3541e6 100644 --- a/plugins/notifications-backend-module-email/CHANGELOG.md +++ b/plugins/notifications-backend-module-email/CHANGELOG.md @@ -1,5 +1,20 @@ # @backstage/plugin-notifications-backend-module-email +## 0.3.3-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/plugin-notifications-node@0.2.9-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/integration-aws-node@0.1.12 + - @backstage/types@1.1.1 + - @backstage/plugin-notifications-common@0.0.6-next.0 + ## 0.3.3-next.1 ### Patch Changes diff --git a/plugins/notifications-backend-module-email/package.json b/plugins/notifications-backend-module-email/package.json index 7e858a0d26..8478f1276a 100644 --- a/plugins/notifications-backend-module-email/package.json +++ b/plugins/notifications-backend-module-email/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-notifications-backend-module-email", - "version": "0.3.3-next.1", + "version": "0.3.3-next.2", "description": "The email backend module for the notifications plugin.", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/notifications-backend/CHANGELOG.md b/plugins/notifications-backend/CHANGELOG.md index 54f4090d3a..765951dc5a 100644 --- a/plugins/notifications-backend/CHANGELOG.md +++ b/plugins/notifications-backend/CHANGELOG.md @@ -1,5 +1,22 @@ # @backstage/plugin-notifications-backend +## 0.4.3-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/plugin-notifications-node@0.2.9-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/plugin-notifications-common@0.0.6-next.0 + - @backstage/plugin-signals-node@0.1.14-next.2 + ## 0.4.3-next.1 ### Patch Changes diff --git a/plugins/notifications-backend/package.json b/plugins/notifications-backend/package.json index c7cdceee17..43ca70d234 100644 --- a/plugins/notifications-backend/package.json +++ b/plugins/notifications-backend/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-notifications-backend", - "version": "0.4.3-next.1", + "version": "0.4.3-next.2", "backstage": { "role": "backend-plugin", "pluginId": "notifications", diff --git a/plugins/notifications-node/CHANGELOG.md b/plugins/notifications-node/CHANGELOG.md index e6454fe0be..39cf978ad8 100644 --- a/plugins/notifications-node/CHANGELOG.md +++ b/plugins/notifications-node/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-notifications-node +## 0.2.9-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/plugin-notifications-common@0.0.6-next.0 + - @backstage/plugin-signals-node@0.1.14-next.2 + ## 0.2.9-next.1 ### Patch Changes diff --git a/plugins/notifications-node/package.json b/plugins/notifications-node/package.json index 38f06f28b1..4e394b8aa7 100644 --- a/plugins/notifications-node/package.json +++ b/plugins/notifications-node/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-notifications-node", - "version": "0.2.9-next.1", + "version": "0.2.9-next.2", "description": "Node.js library for the notifications plugin", "backstage": { "role": "node-library", diff --git a/plugins/org-react/CHANGELOG.md b/plugins/org-react/CHANGELOG.md index 0d7c681a0e..3cf77e81ee 100644 --- a/plugins/org-react/CHANGELOG.md +++ b/plugins/org-react/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-org-react +## 0.1.31-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + ## 0.1.31-next.1 ### Patch Changes diff --git a/plugins/org-react/package.json b/plugins/org-react/package.json index 6482192a0d..60006b5285 100644 --- a/plugins/org-react/package.json +++ b/plugins/org-react/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-org-react", - "version": "0.1.31-next.1", + "version": "0.1.31-next.2", "backstage": { "role": "web-library", "pluginId": "org", diff --git a/plugins/org/CHANGELOG.md b/plugins/org/CHANGELOG.md index 82576de54f..65b7392361 100644 --- a/plugins/org/CHANGELOG.md +++ b/plugins/org/CHANGELOG.md @@ -1,5 +1,18 @@ # @backstage/plugin-org +## 0.6.32-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/core-compat-api@0.3.2-next.1 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/frontend-plugin-api@0.9.1-next.1 + - @backstage/plugin-catalog-common@1.1.0 + ## 0.6.32-next.1 ### Patch Changes diff --git a/plugins/org/package.json b/plugins/org/package.json index adde1d3257..41bcd8d21b 100644 --- a/plugins/org/package.json +++ b/plugins/org/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-org", - "version": "0.6.32-next.1", + "version": "0.6.32-next.2", "description": "A Backstage plugin that helps you create entity pages for your organization", "backstage": { "role": "frontend-plugin", diff --git a/plugins/permission-backend-module-policy-allow-all/CHANGELOG.md b/plugins/permission-backend-module-policy-allow-all/CHANGELOG.md index f0a3f2008c..e785da8f98 100644 --- a/plugins/permission-backend-module-policy-allow-all/CHANGELOG.md +++ b/plugins/permission-backend-module-policy-allow-all/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-permission-backend-module-allow-all-policy +## 0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/plugin-permission-common@0.8.1 + - @backstage/plugin-permission-node@0.8.5-next.2 + ## 0.2.2-next.1 ### Patch Changes diff --git a/plugins/permission-backend-module-policy-allow-all/package.json b/plugins/permission-backend-module-policy-allow-all/package.json index b856a7d5b7..18b5f334d9 100644 --- a/plugins/permission-backend-module-policy-allow-all/package.json +++ b/plugins/permission-backend-module-policy-allow-all/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-permission-backend-module-allow-all-policy", - "version": "0.2.2-next.1", + "version": "0.2.2-next.2", "description": "Allow all policy backend module for the permission plugin.", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/permission-backend/CHANGELOG.md b/plugins/permission-backend/CHANGELOG.md index 949283dd0a..b1052dae4d 100644 --- a/plugins/permission-backend/CHANGELOG.md +++ b/plugins/permission-backend/CHANGELOG.md @@ -1,5 +1,17 @@ # @backstage/plugin-permission-backend +## 0.5.51-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/plugin-permission-common@0.8.1 + - @backstage/plugin-permission-node@0.8.5-next.2 + ## 0.5.51-next.1 ### Patch Changes diff --git a/plugins/permission-backend/package.json b/plugins/permission-backend/package.json index b83acf3bc5..ed0b73c929 100644 --- a/plugins/permission-backend/package.json +++ b/plugins/permission-backend/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-permission-backend", - "version": "0.5.51-next.1", + "version": "0.5.51-next.2", "backstage": { "role": "backend-plugin", "pluginId": "permission", diff --git a/plugins/permission-node/CHANGELOG.md b/plugins/permission-node/CHANGELOG.md index 4948c86b78..0113abb884 100644 --- a/plugins/permission-node/CHANGELOG.md +++ b/plugins/permission-node/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-permission-node +## 0.8.5-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/plugin-permission-common@0.8.1 + ## 0.8.5-next.1 ### Patch Changes diff --git a/plugins/permission-node/package.json b/plugins/permission-node/package.json index ce190bbaaf..39c00d4564 100644 --- a/plugins/permission-node/package.json +++ b/plugins/permission-node/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-permission-node", - "version": "0.8.5-next.1", + "version": "0.8.5-next.2", "description": "Common permission and authorization utilities for backend plugins", "backstage": { "role": "node-library", diff --git a/plugins/proxy-backend/CHANGELOG.md b/plugins/proxy-backend/CHANGELOG.md index e4ac46c419..b00ff80d9d 100644 --- a/plugins/proxy-backend/CHANGELOG.md +++ b/plugins/proxy-backend/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-proxy-backend +## 0.5.8-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/types@1.1.1 + ## 0.5.8-next.1 ### Patch Changes diff --git a/plugins/proxy-backend/package.json b/plugins/proxy-backend/package.json index 5017f78420..e3a73fffc7 100644 --- a/plugins/proxy-backend/package.json +++ b/plugins/proxy-backend/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-proxy-backend", - "version": "0.5.8-next.1", + "version": "0.5.8-next.2", "description": "A Backstage backend plugin that helps you set up proxy endpoints in the backend", "backstage": { "role": "backend-plugin", diff --git a/plugins/scaffolder-backend-module-azure/CHANGELOG.md b/plugins/scaffolder-backend-module-azure/CHANGELOG.md index b403b0f590..f9cf769051 100644 --- a/plugins/scaffolder-backend-module-azure/CHANGELOG.md +++ b/plugins/scaffolder-backend-module-azure/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-scaffolder-backend-module-azure +## 0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + ## 0.2.2-next.1 ### Patch Changes diff --git a/plugins/scaffolder-backend-module-azure/package.json b/plugins/scaffolder-backend-module-azure/package.json index f3657e04d0..df08161ac9 100644 --- a/plugins/scaffolder-backend-module-azure/package.json +++ b/plugins/scaffolder-backend-module-azure/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-scaffolder-backend-module-azure", - "version": "0.2.2-next.1", + "version": "0.2.2-next.2", "description": "The azure module for @backstage/plugin-scaffolder-backend", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/scaffolder-backend-module-bitbucket-cloud/CHANGELOG.md b/plugins/scaffolder-backend-module-bitbucket-cloud/CHANGELOG.md index 6a13de74a2..dadd6752f5 100644 --- a/plugins/scaffolder-backend-module-bitbucket-cloud/CHANGELOG.md +++ b/plugins/scaffolder-backend-module-bitbucket-cloud/CHANGELOG.md @@ -1,5 +1,17 @@ # @backstage/plugin-scaffolder-backend-module-bitbucket-cloud +## 0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/plugin-bitbucket-cloud-common@0.2.24 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + ## 0.2.2-next.1 ### Patch Changes diff --git a/plugins/scaffolder-backend-module-bitbucket-cloud/package.json b/plugins/scaffolder-backend-module-bitbucket-cloud/package.json index efacda8c84..a381f0a0a4 100644 --- a/plugins/scaffolder-backend-module-bitbucket-cloud/package.json +++ b/plugins/scaffolder-backend-module-bitbucket-cloud/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-scaffolder-backend-module-bitbucket-cloud", - "version": "0.2.2-next.1", + "version": "0.2.2-next.2", "description": "The Bitbucket Cloud module for @backstage/plugin-scaffolder-backend", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/scaffolder-backend-module-bitbucket-server/CHANGELOG.md b/plugins/scaffolder-backend-module-bitbucket-server/CHANGELOG.md index 8d0517a1b4..3ff953a81f 100644 --- a/plugins/scaffolder-backend-module-bitbucket-server/CHANGELOG.md +++ b/plugins/scaffolder-backend-module-bitbucket-server/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-scaffolder-backend-module-bitbucket-server +## 0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + ## 0.2.2-next.1 ### Patch Changes diff --git a/plugins/scaffolder-backend-module-bitbucket-server/package.json b/plugins/scaffolder-backend-module-bitbucket-server/package.json index f4c5261570..2d2e5161f9 100644 --- a/plugins/scaffolder-backend-module-bitbucket-server/package.json +++ b/plugins/scaffolder-backend-module-bitbucket-server/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-scaffolder-backend-module-bitbucket-server", - "version": "0.2.2-next.1", + "version": "0.2.2-next.2", "description": "The Bitbucket Server module for @backstage/plugin-scaffolder-backend", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/scaffolder-backend-module-bitbucket/CHANGELOG.md b/plugins/scaffolder-backend-module-bitbucket/CHANGELOG.md index f290ac3bbd..c9fd9d9b99 100644 --- a/plugins/scaffolder-backend-module-bitbucket/CHANGELOG.md +++ b/plugins/scaffolder-backend-module-bitbucket/CHANGELOG.md @@ -1,5 +1,18 @@ # @backstage/plugin-scaffolder-backend-module-bitbucket +## 0.3.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/plugin-scaffolder-backend-module-bitbucket-cloud@0.2.2-next.2 + - @backstage/plugin-scaffolder-backend-module-bitbucket-server@0.2.2-next.2 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + ## 0.3.2-next.1 ### Patch Changes diff --git a/plugins/scaffolder-backend-module-bitbucket/package.json b/plugins/scaffolder-backend-module-bitbucket/package.json index 405b6c0f9e..3fce9fa384 100644 --- a/plugins/scaffolder-backend-module-bitbucket/package.json +++ b/plugins/scaffolder-backend-module-bitbucket/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-scaffolder-backend-module-bitbucket", - "version": "0.3.2-next.1", + "version": "0.3.2-next.2", "description": "The bitbucket module for @backstage/plugin-scaffolder-backend", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/scaffolder-backend-module-confluence-to-markdown/CHANGELOG.md b/plugins/scaffolder-backend-module-confluence-to-markdown/CHANGELOG.md index 0f4765a07e..3ae93e620d 100644 --- a/plugins/scaffolder-backend-module-confluence-to-markdown/CHANGELOG.md +++ b/plugins/scaffolder-backend-module-confluence-to-markdown/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-scaffolder-backend-module-confluence-to-markdown +## 0.3.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + ## 0.3.2-next.1 ### Patch Changes diff --git a/plugins/scaffolder-backend-module-confluence-to-markdown/package.json b/plugins/scaffolder-backend-module-confluence-to-markdown/package.json index 5dc81a7571..b9bde43d00 100644 --- a/plugins/scaffolder-backend-module-confluence-to-markdown/package.json +++ b/plugins/scaffolder-backend-module-confluence-to-markdown/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-scaffolder-backend-module-confluence-to-markdown", - "version": "0.3.2-next.1", + "version": "0.3.2-next.2", "description": "The confluence-to-markdown module for @backstage/plugin-scaffolder-backend", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/scaffolder-backend-module-cookiecutter/CHANGELOG.md b/plugins/scaffolder-backend-module-cookiecutter/CHANGELOG.md index 37e5520edb..ae9d12ed6a 100644 --- a/plugins/scaffolder-backend-module-cookiecutter/CHANGELOG.md +++ b/plugins/scaffolder-backend-module-cookiecutter/CHANGELOG.md @@ -1,5 +1,18 @@ # @backstage/plugin-scaffolder-backend-module-cookiecutter +## 0.3.3-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-defaults@0.5.3-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/types@1.1.1 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + ## 0.3.3-next.1 ### Patch Changes diff --git a/plugins/scaffolder-backend-module-cookiecutter/package.json b/plugins/scaffolder-backend-module-cookiecutter/package.json index 10942f9c19..113dde4586 100644 --- a/plugins/scaffolder-backend-module-cookiecutter/package.json +++ b/plugins/scaffolder-backend-module-cookiecutter/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-scaffolder-backend-module-cookiecutter", - "version": "0.3.3-next.1", + "version": "0.3.3-next.2", "description": "A module for the scaffolder backend that lets you template projects using cookiecutter", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/scaffolder-backend-module-gcp/CHANGELOG.md b/plugins/scaffolder-backend-module-gcp/CHANGELOG.md index fed3b915c1..8c04de3b9d 100644 --- a/plugins/scaffolder-backend-module-gcp/CHANGELOG.md +++ b/plugins/scaffolder-backend-module-gcp/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-scaffolder-backend-module-gcp +## 0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + ## 0.2.2-next.1 ### Patch Changes diff --git a/plugins/scaffolder-backend-module-gcp/package.json b/plugins/scaffolder-backend-module-gcp/package.json index 096a01d14c..8bc295f672 100644 --- a/plugins/scaffolder-backend-module-gcp/package.json +++ b/plugins/scaffolder-backend-module-gcp/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-scaffolder-backend-module-gcp", - "version": "0.2.2-next.1", + "version": "0.2.2-next.2", "description": "The GCP Bucket module for @backstage/plugin-scaffolder-backend", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/scaffolder-backend-module-gerrit/CHANGELOG.md b/plugins/scaffolder-backend-module-gerrit/CHANGELOG.md index 2494360d47..ad5d6d4697 100644 --- a/plugins/scaffolder-backend-module-gerrit/CHANGELOG.md +++ b/plugins/scaffolder-backend-module-gerrit/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-scaffolder-backend-module-gerrit +## 0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + ## 0.2.2-next.1 ### Patch Changes diff --git a/plugins/scaffolder-backend-module-gerrit/package.json b/plugins/scaffolder-backend-module-gerrit/package.json index 01dc69585c..412f8a47ae 100644 --- a/plugins/scaffolder-backend-module-gerrit/package.json +++ b/plugins/scaffolder-backend-module-gerrit/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-scaffolder-backend-module-gerrit", - "version": "0.2.2-next.1", + "version": "0.2.2-next.2", "description": "The gerrit module for @backstage/plugin-scaffolder-backend", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/scaffolder-backend-module-gitea/CHANGELOG.md b/plugins/scaffolder-backend-module-gitea/CHANGELOG.md index bce38508d3..4b91cc492c 100644 --- a/plugins/scaffolder-backend-module-gitea/CHANGELOG.md +++ b/plugins/scaffolder-backend-module-gitea/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-scaffolder-backend-module-gitea +## 0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + ## 0.2.2-next.1 ### Patch Changes diff --git a/plugins/scaffolder-backend-module-gitea/package.json b/plugins/scaffolder-backend-module-gitea/package.json index d63828cb40..b15a22b038 100644 --- a/plugins/scaffolder-backend-module-gitea/package.json +++ b/plugins/scaffolder-backend-module-gitea/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-scaffolder-backend-module-gitea", - "version": "0.2.2-next.1", + "version": "0.2.2-next.2", "description": "The gitea module for @backstage/plugin-scaffolder-backend", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/scaffolder-backend-module-github/CHANGELOG.md b/plugins/scaffolder-backend-module-github/CHANGELOG.md index 596e8a8e7f..dfbd4c9ca4 100644 --- a/plugins/scaffolder-backend-module-github/CHANGELOG.md +++ b/plugins/scaffolder-backend-module-github/CHANGELOG.md @@ -1,5 +1,18 @@ # @backstage/plugin-scaffolder-backend-module-github +## 0.5.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + ## 0.5.2-next.1 ### Patch Changes diff --git a/plugins/scaffolder-backend-module-github/package.json b/plugins/scaffolder-backend-module-github/package.json index f71cadb74f..15d9f99f27 100644 --- a/plugins/scaffolder-backend-module-github/package.json +++ b/plugins/scaffolder-backend-module-github/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-scaffolder-backend-module-github", - "version": "0.5.2-next.1", + "version": "0.5.2-next.2", "description": "The github module for @backstage/plugin-scaffolder-backend", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/scaffolder-backend-module-gitlab/CHANGELOG.md b/plugins/scaffolder-backend-module-gitlab/CHANGELOG.md index 2d14039e04..1fa172ed33 100644 --- a/plugins/scaffolder-backend-module-gitlab/CHANGELOG.md +++ b/plugins/scaffolder-backend-module-gitlab/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-scaffolder-backend-module-gitlab +## 0.6.1-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + ## 0.6.1-next.1 ### Patch Changes diff --git a/plugins/scaffolder-backend-module-gitlab/package.json b/plugins/scaffolder-backend-module-gitlab/package.json index cb7f7ca3c2..079eb9f01e 100644 --- a/plugins/scaffolder-backend-module-gitlab/package.json +++ b/plugins/scaffolder-backend-module-gitlab/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-scaffolder-backend-module-gitlab", - "version": "0.6.1-next.1", + "version": "0.6.1-next.2", "backstage": { "role": "backend-plugin-module", "pluginId": "scaffolder", diff --git a/plugins/scaffolder-backend-module-notifications/CHANGELOG.md b/plugins/scaffolder-backend-module-notifications/CHANGELOG.md index 45436fd636..2aff545447 100644 --- a/plugins/scaffolder-backend-module-notifications/CHANGELOG.md +++ b/plugins/scaffolder-backend-module-notifications/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-scaffolder-backend-module-notifications +## 0.1.3-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-notifications-node@0.2.9-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/plugin-notifications-common@0.0.6-next.0 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + ## 0.1.3-next.1 ### Patch Changes diff --git a/plugins/scaffolder-backend-module-notifications/package.json b/plugins/scaffolder-backend-module-notifications/package.json index e0ece7a4a5..75a6563462 100644 --- a/plugins/scaffolder-backend-module-notifications/package.json +++ b/plugins/scaffolder-backend-module-notifications/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-scaffolder-backend-module-notifications", - "version": "0.1.3-next.1", + "version": "0.1.3-next.2", "description": "The notifications backend module for the scaffolder plugin.", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/scaffolder-backend-module-rails/CHANGELOG.md b/plugins/scaffolder-backend-module-rails/CHANGELOG.md index 66fe4d5501..aacacc53e6 100644 --- a/plugins/scaffolder-backend-module-rails/CHANGELOG.md +++ b/plugins/scaffolder-backend-module-rails/CHANGELOG.md @@ -1,5 +1,17 @@ # @backstage/plugin-scaffolder-backend-module-rails +## 0.5.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/types@1.1.1 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + ## 0.5.2-next.1 ### Patch Changes diff --git a/plugins/scaffolder-backend-module-rails/package.json b/plugins/scaffolder-backend-module-rails/package.json index 71f5caa9c2..157dc83729 100644 --- a/plugins/scaffolder-backend-module-rails/package.json +++ b/plugins/scaffolder-backend-module-rails/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-scaffolder-backend-module-rails", - "version": "0.5.2-next.1", + "version": "0.5.2-next.2", "description": "A module for the scaffolder backend that lets you template projects using Rails", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/scaffolder-backend-module-sentry/CHANGELOG.md b/plugins/scaffolder-backend-module-sentry/CHANGELOG.md index 9649cbb9b2..2f1fb016b1 100644 --- a/plugins/scaffolder-backend-module-sentry/CHANGELOG.md +++ b/plugins/scaffolder-backend-module-sentry/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-scaffolder-backend-module-sentry +## 0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + ## 0.2.2-next.1 ### Patch Changes diff --git a/plugins/scaffolder-backend-module-sentry/package.json b/plugins/scaffolder-backend-module-sentry/package.json index f93a4ffded..6fa7270212 100644 --- a/plugins/scaffolder-backend-module-sentry/package.json +++ b/plugins/scaffolder-backend-module-sentry/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-scaffolder-backend-module-sentry", - "version": "0.2.2-next.1", + "version": "0.2.2-next.2", "backstage": { "role": "backend-plugin-module", "pluginId": "scaffolder", diff --git a/plugins/scaffolder-backend-module-yeoman/CHANGELOG.md b/plugins/scaffolder-backend-module-yeoman/CHANGELOG.md index cf99cba228..54326d91a9 100644 --- a/plugins/scaffolder-backend-module-yeoman/CHANGELOG.md +++ b/plugins/scaffolder-backend-module-yeoman/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-scaffolder-backend-module-yeoman +## 0.4.3-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/types@1.1.1 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + - @backstage/plugin-scaffolder-node-test-utils@0.1.15-next.2 + ## 0.4.3-next.1 ### Patch Changes diff --git a/plugins/scaffolder-backend-module-yeoman/package.json b/plugins/scaffolder-backend-module-yeoman/package.json index e1bdff7636..849d720da3 100644 --- a/plugins/scaffolder-backend-module-yeoman/package.json +++ b/plugins/scaffolder-backend-module-yeoman/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-scaffolder-backend-module-yeoman", - "version": "0.4.3-next.1", + "version": "0.4.3-next.2", "backstage": { "role": "backend-plugin-module", "pluginId": "scaffolder", diff --git a/plugins/scaffolder-backend/CHANGELOG.md b/plugins/scaffolder-backend/CHANGELOG.md index 7bd53b1374..a23a25372f 100644 --- a/plugins/scaffolder-backend/CHANGELOG.md +++ b/plugins/scaffolder-backend/CHANGELOG.md @@ -1,5 +1,35 @@ # @backstage/plugin-scaffolder-backend +## 1.27.0-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/backend-defaults@0.5.3-next.2 + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/plugin-scaffolder-backend-module-github@0.5.2-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/types@1.1.1 + - @backstage/plugin-bitbucket-cloud-common@0.2.24 + - @backstage/plugin-catalog-backend-module-scaffolder-entity-model@0.2.2-next.2 + - @backstage/plugin-permission-common@0.8.1 + - @backstage/plugin-permission-node@0.8.5-next.2 + - @backstage/plugin-scaffolder-backend-module-azure@0.2.2-next.2 + - @backstage/plugin-scaffolder-backend-module-bitbucket@0.3.2-next.2 + - @backstage/plugin-scaffolder-backend-module-bitbucket-cloud@0.2.2-next.2 + - @backstage/plugin-scaffolder-backend-module-bitbucket-server@0.2.2-next.2 + - @backstage/plugin-scaffolder-backend-module-gerrit@0.2.2-next.2 + - @backstage/plugin-scaffolder-backend-module-gitea@0.2.2-next.2 + - @backstage/plugin-scaffolder-backend-module-gitlab@0.6.1-next.2 + - @backstage/plugin-scaffolder-common@1.5.6 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + ## 1.27.0-next.1 ### Minor Changes diff --git a/plugins/scaffolder-backend/package.json b/plugins/scaffolder-backend/package.json index 17c65efc43..adf2f16429 100644 --- a/plugins/scaffolder-backend/package.json +++ b/plugins/scaffolder-backend/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-scaffolder-backend", - "version": "1.27.0-next.1", + "version": "1.27.0-next.2", "description": "The Backstage backend plugin that helps you create new things", "backstage": { "role": "backend-plugin", diff --git a/plugins/scaffolder-node-test-utils/CHANGELOG.md b/plugins/scaffolder-node-test-utils/CHANGELOG.md index cf5465754a..22591fc850 100644 --- a/plugins/scaffolder-node-test-utils/CHANGELOG.md +++ b/plugins/scaffolder-node-test-utils/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-scaffolder-node-test-utils +## 0.1.15-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-test-utils@1.1.0-next.2 + - @backstage/types@1.1.1 + - @backstage/plugin-scaffolder-node@0.5.1-next.2 + ## 0.1.15-next.1 ### Patch Changes diff --git a/plugins/scaffolder-node-test-utils/package.json b/plugins/scaffolder-node-test-utils/package.json index a20d7e007a..5b4216cd9e 100644 --- a/plugins/scaffolder-node-test-utils/package.json +++ b/plugins/scaffolder-node-test-utils/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-scaffolder-node-test-utils", - "version": "0.1.15-next.1", + "version": "0.1.15-next.2", "backstage": { "role": "node-library", "pluginId": "scaffolder", diff --git a/plugins/scaffolder-node/CHANGELOG.md b/plugins/scaffolder-node/CHANGELOG.md index 3551958f0c..c31fda51a2 100644 --- a/plugins/scaffolder-node/CHANGELOG.md +++ b/plugins/scaffolder-node/CHANGELOG.md @@ -1,5 +1,17 @@ # @backstage/plugin-scaffolder-node +## 0.5.1-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/types@1.1.1 + - @backstage/plugin-scaffolder-common@1.5.6 + ## 0.5.1-next.1 ### Patch Changes diff --git a/plugins/scaffolder-node/package.json b/plugins/scaffolder-node/package.json index 92e9369954..97c9ea0350 100644 --- a/plugins/scaffolder-node/package.json +++ b/plugins/scaffolder-node/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-scaffolder-node", - "version": "0.5.1-next.1", + "version": "0.5.1-next.2", "description": "The plugin-scaffolder-node module for @backstage/plugin-scaffolder-backend", "backstage": { "role": "node-library", diff --git a/plugins/scaffolder-react/CHANGELOG.md b/plugins/scaffolder-react/CHANGELOG.md index 0624b48206..f0d17ad8ef 100644 --- a/plugins/scaffolder-react/CHANGELOG.md +++ b/plugins/scaffolder-react/CHANGELOG.md @@ -1,5 +1,22 @@ # @backstage/plugin-scaffolder-react +## 1.13.3-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/frontend-plugin-api@0.9.1-next.1 + - @backstage/theme@0.6.1-next.0 + - @backstage/types@1.1.1 + - @backstage/version-bridge@1.0.10 + - @backstage/plugin-permission-react@0.4.27 + - @backstage/plugin-scaffolder-common@1.5.6 + ## 1.13.3-next.1 ### Patch Changes diff --git a/plugins/scaffolder-react/package.json b/plugins/scaffolder-react/package.json index 49bc2dabac..c009d44d31 100644 --- a/plugins/scaffolder-react/package.json +++ b/plugins/scaffolder-react/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-scaffolder-react", - "version": "1.13.3-next.1", + "version": "1.13.3-next.2", "description": "A frontend library that helps other Backstage plugins interact with the Scaffolder", "backstage": { "role": "web-library", diff --git a/plugins/scaffolder/CHANGELOG.md b/plugins/scaffolder/CHANGELOG.md index beabf080c0..c737be34a4 100644 --- a/plugins/scaffolder/CHANGELOG.md +++ b/plugins/scaffolder/CHANGELOG.md @@ -1,5 +1,27 @@ # @backstage/plugin-scaffolder +## 1.26.3-next.2 + +### Patch Changes + +- 8e4bed4: Updated dependency `idb-keyval` to `5.1.5`. +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/plugin-scaffolder-react@1.13.3-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/core-compat-api@0.3.2-next.1 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/errors@1.2.4 + - @backstage/frontend-plugin-api@0.9.1-next.1 + - @backstage/integration@1.15.1 + - @backstage/integration-react@1.2.0 + - @backstage/types@1.1.1 + - @backstage/plugin-catalog-common@1.1.0 + - @backstage/plugin-permission-react@0.4.27 + - @backstage/plugin-scaffolder-common@1.5.6 + ## 1.26.3-next.1 ### Patch Changes diff --git a/plugins/scaffolder/package.json b/plugins/scaffolder/package.json index d93a390e14..9d09727b96 100644 --- a/plugins/scaffolder/package.json +++ b/plugins/scaffolder/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-scaffolder", - "version": "1.26.3-next.1", + "version": "1.26.3-next.2", "description": "The Backstage plugin that helps you create new things", "backstage": { "role": "frontend-plugin", diff --git a/plugins/search-backend-module-catalog/CHANGELOG.md b/plugins/search-backend-module-catalog/CHANGELOG.md index b9010a0e3c..f3f97a84c7 100644 --- a/plugins/search-backend-module-catalog/CHANGELOG.md +++ b/plugins/search-backend-module-catalog/CHANGELOG.md @@ -1,5 +1,21 @@ # @backstage/plugin-search-backend-module-catalog +## 0.2.5-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/plugin-catalog-common@1.1.0 + - @backstage/plugin-permission-common@0.8.1 + - @backstage/plugin-search-backend-node@1.3.5-next.2 + - @backstage/plugin-search-common@1.2.14 + ## 0.2.5-next.1 ### Patch Changes diff --git a/plugins/search-backend-module-catalog/package.json b/plugins/search-backend-module-catalog/package.json index 07921d0661..f2e9537bc1 100644 --- a/plugins/search-backend-module-catalog/package.json +++ b/plugins/search-backend-module-catalog/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-search-backend-module-catalog", - "version": "0.2.5-next.1", + "version": "0.2.5-next.2", "description": "A module for the search backend that exports catalog modules", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/search-backend-module-elasticsearch/CHANGELOG.md b/plugins/search-backend-module-elasticsearch/CHANGELOG.md index 9c4bd858b2..7e179860bd 100644 --- a/plugins/search-backend-module-elasticsearch/CHANGELOG.md +++ b/plugins/search-backend-module-elasticsearch/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-search-backend-module-elasticsearch +## 1.6.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/integration-aws-node@0.1.12 + - @backstage/plugin-search-backend-node@1.3.5-next.2 + - @backstage/plugin-search-common@1.2.14 + ## 1.6.2-next.1 ### Patch Changes diff --git a/plugins/search-backend-module-elasticsearch/package.json b/plugins/search-backend-module-elasticsearch/package.json index bea748782d..59a7b5f2f6 100644 --- a/plugins/search-backend-module-elasticsearch/package.json +++ b/plugins/search-backend-module-elasticsearch/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-search-backend-module-elasticsearch", - "version": "1.6.2-next.1", + "version": "1.6.2-next.2", "description": "A module for the search backend that implements search using ElasticSearch", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/search-backend-module-explore/CHANGELOG.md b/plugins/search-backend-module-explore/CHANGELOG.md index 2b3a0fbd6e..01233df337 100644 --- a/plugins/search-backend-module-explore/CHANGELOG.md +++ b/plugins/search-backend-module-explore/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-search-backend-module-explore +## 0.2.5-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/plugin-search-backend-node@1.3.5-next.2 + - @backstage/plugin-search-common@1.2.14 + ## 0.2.5-next.1 ### Patch Changes diff --git a/plugins/search-backend-module-explore/package.json b/plugins/search-backend-module-explore/package.json index 4f849414b9..4285099ef7 100644 --- a/plugins/search-backend-module-explore/package.json +++ b/plugins/search-backend-module-explore/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-search-backend-module-explore", - "version": "0.2.5-next.1", + "version": "0.2.5-next.2", "description": "A module for the search backend that exports explore modules", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/search-backend-module-pg/CHANGELOG.md b/plugins/search-backend-module-pg/CHANGELOG.md index cc53075ba2..d2fe97dd11 100644 --- a/plugins/search-backend-module-pg/CHANGELOG.md +++ b/plugins/search-backend-module-pg/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-search-backend-module-pg +## 0.5.38-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/plugin-search-backend-node@1.3.5-next.2 + - @backstage/plugin-search-common@1.2.14 + ## 0.5.38-next.1 ### Patch Changes diff --git a/plugins/search-backend-module-pg/package.json b/plugins/search-backend-module-pg/package.json index 83b22decc7..2ecbd513d4 100644 --- a/plugins/search-backend-module-pg/package.json +++ b/plugins/search-backend-module-pg/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-search-backend-module-pg", - "version": "0.5.38-next.1", + "version": "0.5.38-next.2", "description": "A module for the search backend that implements search using PostgreSQL", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/search-backend-module-stack-overflow-collator/CHANGELOG.md b/plugins/search-backend-module-stack-overflow-collator/CHANGELOG.md index b117bd1180..36c7c09a52 100644 --- a/plugins/search-backend-module-stack-overflow-collator/CHANGELOG.md +++ b/plugins/search-backend-module-stack-overflow-collator/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-search-backend-module-stack-overflow-collator +## 0.3.3-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/plugin-search-backend-node@1.3.5-next.2 + - @backstage/plugin-search-common@1.2.14 + ## 0.3.3-next.1 ### Patch Changes diff --git a/plugins/search-backend-module-stack-overflow-collator/package.json b/plugins/search-backend-module-stack-overflow-collator/package.json index 386e5de388..65d9e1ed0d 100644 --- a/plugins/search-backend-module-stack-overflow-collator/package.json +++ b/plugins/search-backend-module-stack-overflow-collator/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-search-backend-module-stack-overflow-collator", - "version": "0.3.3-next.1", + "version": "0.3.3-next.2", "description": "A module for the search backend that exports stack overflow modules", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/search-backend-module-techdocs/CHANGELOG.md b/plugins/search-backend-module-techdocs/CHANGELOG.md index 1000a1aa4a..f8fd683901 100644 --- a/plugins/search-backend-module-techdocs/CHANGELOG.md +++ b/plugins/search-backend-module-techdocs/CHANGELOG.md @@ -1,5 +1,21 @@ # @backstage/plugin-search-backend-module-techdocs +## 0.3.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/plugin-catalog-common@1.1.0 + - @backstage/plugin-permission-common@0.8.1 + - @backstage/plugin-search-backend-node@1.3.5-next.2 + - @backstage/plugin-search-common@1.2.14 + - @backstage/plugin-techdocs-node@1.12.13-next.2 + ## 0.3.2-next.1 ### Patch Changes diff --git a/plugins/search-backend-module-techdocs/package.json b/plugins/search-backend-module-techdocs/package.json index 5b0ec217d9..a6c0523fb7 100644 --- a/plugins/search-backend-module-techdocs/package.json +++ b/plugins/search-backend-module-techdocs/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-search-backend-module-techdocs", - "version": "0.3.2-next.1", + "version": "0.3.2-next.2", "description": "A module for the search backend that exports techdocs modules", "backstage": { "role": "backend-plugin-module", diff --git a/plugins/search-backend-node/CHANGELOG.md b/plugins/search-backend-node/CHANGELOG.md index e65eca94d3..2550d73586 100644 --- a/plugins/search-backend-node/CHANGELOG.md +++ b/plugins/search-backend-node/CHANGELOG.md @@ -1,5 +1,17 @@ # @backstage/plugin-search-backend-node +## 1.3.5-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-defaults@0.5.3-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/plugin-permission-common@0.8.1 + - @backstage/plugin-search-common@1.2.14 + ## 1.3.5-next.1 ### Patch Changes diff --git a/plugins/search-backend-node/package.json b/plugins/search-backend-node/package.json index 842893e316..aadfe17d3a 100644 --- a/plugins/search-backend-node/package.json +++ b/plugins/search-backend-node/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-search-backend-node", - "version": "1.3.5-next.1", + "version": "1.3.5-next.2", "description": "A library for Backstage backend plugins that want to interact with the search backend plugin", "backstage": { "role": "node-library", diff --git a/plugins/search-backend/CHANGELOG.md b/plugins/search-backend/CHANGELOG.md index 2143454b9c..6410ad25d8 100644 --- a/plugins/search-backend/CHANGELOG.md +++ b/plugins/search-backend/CHANGELOG.md @@ -1,5 +1,25 @@ # @backstage/plugin-search-backend +## 1.7.0-next.2 + +### Minor Changes + +- 39fd704: Internal update to use the new generated server types from `backstage-cli package schema openapi generate --server`. + +### Patch Changes + +- Updated dependencies + - @backstage/backend-defaults@0.5.3-next.2 + - @backstage/backend-openapi-utils@0.3.0-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + - @backstage/plugin-permission-common@0.8.1 + - @backstage/plugin-permission-node@0.8.5-next.2 + - @backstage/plugin-search-backend-node@1.3.5-next.2 + - @backstage/plugin-search-common@1.2.14 + ## 1.6.2-next.1 ### Patch Changes diff --git a/plugins/search-backend/package.json b/plugins/search-backend/package.json index f70e33181b..a1c2f496ab 100644 --- a/plugins/search-backend/package.json +++ b/plugins/search-backend/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-search-backend", - "version": "1.6.2-next.1", + "version": "1.7.0-next.2", "description": "The Backstage backend plugin that provides your backstage app with search", "backstage": { "role": "backend-plugin", diff --git a/plugins/search/CHANGELOG.md b/plugins/search/CHANGELOG.md index 16c38b29ef..94117eb8d1 100644 --- a/plugins/search/CHANGELOG.md +++ b/plugins/search/CHANGELOG.md @@ -1,5 +1,21 @@ # @backstage/plugin-search +## 1.4.19-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/core-compat-api@0.3.2-next.1 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/errors@1.2.4 + - @backstage/frontend-plugin-api@0.9.1-next.1 + - @backstage/types@1.1.1 + - @backstage/version-bridge@1.0.10 + - @backstage/plugin-search-common@1.2.14 + - @backstage/plugin-search-react@1.8.2-next.1 + ## 1.4.19-next.1 ### Patch Changes diff --git a/plugins/search/package.json b/plugins/search/package.json index bc27a725e2..4d292540d6 100644 --- a/plugins/search/package.json +++ b/plugins/search/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-search", - "version": "1.4.19-next.1", + "version": "1.4.19-next.2", "description": "The Backstage plugin that provides your backstage app with search", "backstage": { "role": "frontend-plugin", diff --git a/plugins/signals-backend/CHANGELOG.md b/plugins/signals-backend/CHANGELOG.md index 2b744e9404..bc919feab8 100644 --- a/plugins/signals-backend/CHANGELOG.md +++ b/plugins/signals-backend/CHANGELOG.md @@ -1,5 +1,17 @@ # @backstage/plugin-signals-backend +## 0.2.3-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/types@1.1.1 + - @backstage/plugin-signals-node@0.1.14-next.2 + ## 0.2.3-next.1 ### Patch Changes diff --git a/plugins/signals-backend/package.json b/plugins/signals-backend/package.json index 2597620ee2..78e07342ff 100644 --- a/plugins/signals-backend/package.json +++ b/plugins/signals-backend/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-signals-backend", - "version": "0.2.3-next.1", + "version": "0.2.3-next.2", "backstage": { "role": "backend-plugin", "pluginId": "signals", diff --git a/plugins/signals-node/CHANGELOG.md b/plugins/signals-node/CHANGELOG.md index ba33601a23..55328e3e76 100644 --- a/plugins/signals-node/CHANGELOG.md +++ b/plugins/signals-node/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-signals-node +## 0.1.14-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-events-node@0.4.5-next.2 + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/types@1.1.1 + ## 0.1.14-next.1 ### Patch Changes diff --git a/plugins/signals-node/package.json b/plugins/signals-node/package.json index ded3f76d60..25ec3bcc1f 100644 --- a/plugins/signals-node/package.json +++ b/plugins/signals-node/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-signals-node", - "version": "0.1.14-next.1", + "version": "0.1.14-next.2", "description": "Node.js library for the signals plugin", "backstage": { "role": "node-library", diff --git a/plugins/techdocs-addons-test-utils/CHANGELOG.md b/plugins/techdocs-addons-test-utils/CHANGELOG.md index f6a450c84b..ca3cf6c515 100644 --- a/plugins/techdocs-addons-test-utils/CHANGELOG.md +++ b/plugins/techdocs-addons-test-utils/CHANGELOG.md @@ -1,5 +1,20 @@ # @backstage/plugin-techdocs-addons-test-utils +## 1.0.41-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog@1.24.1-next.2 + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/core-app-api@1.15.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/integration-react@1.2.0 + - @backstage/test-utils@1.7.1-next.0 + - @backstage/plugin-search-react@1.8.2-next.1 + - @backstage/plugin-techdocs@1.11.1-next.2 + - @backstage/plugin-techdocs-react@1.2.10-next.1 + ## 1.0.41-next.1 ### Patch Changes diff --git a/plugins/techdocs-addons-test-utils/package.json b/plugins/techdocs-addons-test-utils/package.json index b69e866161..d66ab41aef 100644 --- a/plugins/techdocs-addons-test-utils/package.json +++ b/plugins/techdocs-addons-test-utils/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-techdocs-addons-test-utils", - "version": "1.0.41-next.1", + "version": "1.0.41-next.2", "backstage": { "role": "web-library", "pluginId": "techdocs-addons", diff --git a/plugins/techdocs-backend/CHANGELOG.md b/plugins/techdocs-backend/CHANGELOG.md index 1dc9bfaf1e..0b10ab7352 100644 --- a/plugins/techdocs-backend/CHANGELOG.md +++ b/plugins/techdocs-backend/CHANGELOG.md @@ -1,5 +1,23 @@ # @backstage/plugin-techdocs-backend +## 1.11.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-client@1.8.0-next.1 + - @backstage/plugin-catalog-node@1.14.0-next.2 + - @backstage/plugin-search-backend-module-techdocs@0.3.2-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/plugin-catalog-common@1.1.0 + - @backstage/plugin-permission-common@0.8.1 + - @backstage/plugin-techdocs-common@0.1.0 + - @backstage/plugin-techdocs-node@1.12.13-next.2 + ## 1.11.2-next.1 ### Patch Changes diff --git a/plugins/techdocs-backend/package.json b/plugins/techdocs-backend/package.json index fd1ed71952..479b1778ea 100644 --- a/plugins/techdocs-backend/package.json +++ b/plugins/techdocs-backend/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-techdocs-backend", - "version": "1.11.2-next.1", + "version": "1.11.2-next.2", "description": "The Backstage backend plugin that renders technical documentation for your components", "backstage": { "role": "backend-plugin", diff --git a/plugins/techdocs-node/CHANGELOG.md b/plugins/techdocs-node/CHANGELOG.md index 8d67cf6663..56cc9e0c13 100644 --- a/plugins/techdocs-node/CHANGELOG.md +++ b/plugins/techdocs-node/CHANGELOG.md @@ -1,5 +1,19 @@ # @backstage/plugin-techdocs-node +## 1.12.13-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/integration@1.15.1 + - @backstage/integration-aws-node@0.1.12 + - @backstage/plugin-search-common@1.2.14 + - @backstage/plugin-techdocs-common@0.1.0 + ## 1.12.13-next.1 ### Patch Changes diff --git a/plugins/techdocs-node/package.json b/plugins/techdocs-node/package.json index e0de6b0d76..238e45a1c7 100644 --- a/plugins/techdocs-node/package.json +++ b/plugins/techdocs-node/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-techdocs-node", - "version": "1.12.13-next.1", + "version": "1.12.13-next.2", "description": "Common node.js functionalities for TechDocs, to be shared between techdocs-backend plugin and techdocs-cli", "backstage": { "role": "node-library", diff --git a/plugins/techdocs/CHANGELOG.md b/plugins/techdocs/CHANGELOG.md index be0ddc951d..bffb3037dc 100644 --- a/plugins/techdocs/CHANGELOG.md +++ b/plugins/techdocs/CHANGELOG.md @@ -1,5 +1,27 @@ # @backstage/plugin-techdocs +## 1.11.1-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/config@1.2.0 + - @backstage/core-compat-api@0.3.2-next.1 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/errors@1.2.4 + - @backstage/frontend-plugin-api@0.9.1-next.1 + - @backstage/integration@1.15.1 + - @backstage/integration-react@1.2.0 + - @backstage/theme@0.6.1-next.0 + - @backstage/plugin-auth-react@0.1.8-next.1 + - @backstage/plugin-search-common@1.2.14 + - @backstage/plugin-search-react@1.8.2-next.1 + - @backstage/plugin-techdocs-common@0.1.0 + - @backstage/plugin-techdocs-react@1.2.10-next.1 + ## 1.11.1-next.1 ### Patch Changes diff --git a/plugins/techdocs/package.json b/plugins/techdocs/package.json index 1721ed10e3..f13c54d790 100644 --- a/plugins/techdocs/package.json +++ b/plugins/techdocs/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-techdocs", - "version": "1.11.1-next.1", + "version": "1.11.1-next.2", "description": "The Backstage plugin that renders technical documentation for your components", "backstage": { "role": "frontend-plugin", diff --git a/plugins/user-settings-backend/CHANGELOG.md b/plugins/user-settings-backend/CHANGELOG.md index 969901a0e0..46ac40d605 100644 --- a/plugins/user-settings-backend/CHANGELOG.md +++ b/plugins/user-settings-backend/CHANGELOG.md @@ -1,5 +1,19 @@ # @backstage/plugin-user-settings-backend +## 0.2.27-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-defaults@0.5.3-next.2 + - @backstage/plugin-auth-node@0.5.4-next.2 + - @backstage/backend-plugin-api@1.0.2-next.2 + - @backstage/config@1.2.0 + - @backstage/errors@1.2.4 + - @backstage/types@1.1.1 + - @backstage/plugin-signals-node@0.1.14-next.2 + - @backstage/plugin-user-settings-common@0.0.1 + ## 0.2.27-next.1 ### Patch Changes diff --git a/plugins/user-settings-backend/package.json b/plugins/user-settings-backend/package.json index b5e0bc0489..c2a7ca2561 100644 --- a/plugins/user-settings-backend/package.json +++ b/plugins/user-settings-backend/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-user-settings-backend", - "version": "0.2.27-next.1", + "version": "0.2.27-next.2", "description": "The Backstage backend plugin to manage user settings", "backstage": { "role": "backend-plugin", diff --git a/plugins/user-settings/CHANGELOG.md b/plugins/user-settings/CHANGELOG.md index a04b2836fa..2c1f5b215a 100644 --- a/plugins/user-settings/CHANGELOG.md +++ b/plugins/user-settings/CHANGELOG.md @@ -1,5 +1,23 @@ # @backstage/plugin-user-settings +## 0.8.15-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-react@1.14.1-next.2 + - @backstage/catalog-model@1.7.0 + - @backstage/core-app-api@1.15.1 + - @backstage/core-compat-api@0.3.2-next.1 + - @backstage/core-components@0.16.0-next.1 + - @backstage/core-plugin-api@1.10.0 + - @backstage/errors@1.2.4 + - @backstage/frontend-plugin-api@0.9.1-next.1 + - @backstage/theme@0.6.1-next.0 + - @backstage/types@1.1.1 + - @backstage/plugin-signals-react@0.0.6 + - @backstage/plugin-user-settings-common@0.0.1 + ## 0.8.15-next.1 ### Patch Changes diff --git a/plugins/user-settings/package.json b/plugins/user-settings/package.json index b5f15b8c61..824f60f5d4 100644 --- a/plugins/user-settings/package.json +++ b/plugins/user-settings/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-user-settings", - "version": "0.8.15-next.1", + "version": "0.8.15-next.2", "description": "A Backstage plugin that provides a settings page", "backstage": { "role": "frontend-plugin", From 8cef24994b0ae5dd3a05e67bf3d6d246512dddc5 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 5 Nov 2024 12:35:25 +0000 Subject: [PATCH 097/161] fix(deps): update dependency @gitbeaker/rest to v40.6.0 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/yarn.lock b/yarn.lock index 338dc6939f..da1cd9f417 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9937,14 +9937,14 @@ __metadata: languageName: node linkType: hard -"@gitbeaker/core@npm:^40.5.1": - version: 40.5.1 - resolution: "@gitbeaker/core@npm:40.5.1" +"@gitbeaker/core@npm:^40.6.0": + version: 40.6.0 + resolution: "@gitbeaker/core@npm:40.6.0" dependencies: - "@gitbeaker/requester-utils": ^40.5.1 + "@gitbeaker/requester-utils": ^40.6.0 qs: ^6.12.2 xcase: ^2.0.1 - checksum: 2e2344ac81b153ef64e93da7a94cc40ead9619e2aefcadb1bcae0b92c2c741e6c08faf36e3b150f15bc80ea35f73bfdc94fbe2792ae462ee8881354f4d7481fd + checksum: 3d75175f8adcf04294b5cfb8f040ad372d218473ec35d02b3b59c0538eb16228fc915a92a8582ecff5cad0a8dddcddb5a90b12cfe2ce5aaf9c3b6fccffe7259b languageName: node linkType: hard @@ -9984,15 +9984,15 @@ __metadata: languageName: node linkType: hard -"@gitbeaker/requester-utils@npm:^40.5.1": - version: 40.5.1 - resolution: "@gitbeaker/requester-utils@npm:40.5.1" +"@gitbeaker/requester-utils@npm:^40.6.0": + version: 40.6.0 + resolution: "@gitbeaker/requester-utils@npm:40.6.0" dependencies: picomatch-browser: ^2.2.6 qs: ^6.12.2 rate-limiter-flexible: ^4.0.1 xcase: ^2.0.1 - checksum: d39e9cc526f4969a6724dd2a0ae9c27f353e4e03b0b8ec569955d7a7b09c4520137b4768f0ec51a5f53f6156505ffa02164815702f77c1d460dd0f68d369af53 + checksum: 8744487bdba27f2995e483473cb4c3d6926228fa2f0c842bec300e165a09508a5e5ad047d478aeebe226a8f264c92a1dcb0a21f6af316b8fe4ebb679d7283e49 languageName: node linkType: hard @@ -10007,12 +10007,12 @@ __metadata: linkType: hard "@gitbeaker/rest@npm:^40.0.3": - version: 40.5.1 - resolution: "@gitbeaker/rest@npm:40.5.1" + version: 40.6.0 + resolution: "@gitbeaker/rest@npm:40.6.0" dependencies: - "@gitbeaker/core": ^40.5.1 - "@gitbeaker/requester-utils": ^40.5.1 - checksum: 902ab38daad16dfd1638fce91a1c39baf6409e9bb17c1e13bd904801e85fa796a4cf015ebf4fe3d9cf0b0028a8b26493502a9f331cf990fa73398a752ee41d7e + "@gitbeaker/core": ^40.6.0 + "@gitbeaker/requester-utils": ^40.6.0 + checksum: e2ae3f460378c0fe226ac13dcc75bcddf44c8bd594c212020d2a088016a2d1735552639cb9a8fe43f85dad0305a918aef485313c5bed8ad62e351affee21da80 languageName: node linkType: hard From 0f18340f63a7ad51dd981b7da1ba9a1bf371dfbf Mon Sep 17 00:00:00 2001 From: Jonathan Roebuck Date: Tue, 5 Nov 2024 12:37:15 +0000 Subject: [PATCH 098/161] Change core component Table tool bar search box to the appropriate Search icon and text Signed-off-by: Jonathan Roebuck --- .changeset/lucky-snakes-complain.md | 5 +++++ packages/core-components/src/components/Table/Table.tsx | 5 +++-- 2 files changed, 8 insertions(+), 2 deletions(-) create mode 100644 .changeset/lucky-snakes-complain.md diff --git a/.changeset/lucky-snakes-complain.md b/.changeset/lucky-snakes-complain.md new file mode 100644 index 0000000000..83aca565ba --- /dev/null +++ b/.changeset/lucky-snakes-complain.md @@ -0,0 +1,5 @@ +--- +'@backstage/core-components': patch +--- + +Change core component Table tool bar search box to the a appropriate Search icon and text diff --git a/packages/core-components/src/components/Table/Table.tsx b/packages/core-components/src/components/Table/Table.tsx index bcd411934b..1a9e716abc 100644 --- a/packages/core-components/src/components/Table/Table.tsx +++ b/packages/core-components/src/components/Table/Table.tsx @@ -41,6 +41,7 @@ import Clear from '@material-ui/icons/Clear'; import DeleteOutline from '@material-ui/icons/DeleteOutline'; import Edit from '@material-ui/icons/Edit'; import FilterList from '@material-ui/icons/FilterList'; +import Search from '@material-ui/icons/Search'; import FirstPage from '@material-ui/icons/FirstPage'; import LastPage from '@material-ui/icons/LastPage'; import Remove from '@material-ui/icons/Remove'; @@ -103,7 +104,7 @@ const tableIcons: Icons = { )), Search: forwardRef((props, ref) => ( - + )), SortArrow: forwardRef((props, ref) => ( @@ -486,7 +487,7 @@ export function Table(props: TableProps) { data={tableData} style={{ width: '100%', ...style }} localization={{ - toolbar: { searchPlaceholder: 'Filter', searchTooltip: 'Filter' }, + toolbar: { searchPlaceholder: 'Search', searchTooltip: 'Search' }, ...localization, }} {...restProps} From a4ccc82f979a6bea960329b397aca97ae0ed715b Mon Sep 17 00:00:00 2001 From: Jonathan Roebuck Date: Tue, 5 Nov 2024 17:20:57 +0000 Subject: [PATCH 099/161] Remove card UI from result type filter Signed-off-by: Jonathan Roebuck --- .changeset/friendly-kids-judge.md | 5 + .../SearchType/SearchType.Accordion.tsx | 117 ++++++++---------- 2 files changed, 59 insertions(+), 63 deletions(-) create mode 100644 .changeset/friendly-kids-judge.md diff --git a/.changeset/friendly-kids-judge.md b/.changeset/friendly-kids-judge.md new file mode 100644 index 0000000000..e4809c1f40 --- /dev/null +++ b/.changeset/friendly-kids-judge.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-search': patch +--- + +Removes the card UI from the search results type filter for a cleaner UI consistent with other filters diff --git a/plugins/search/src/components/SearchType/SearchType.Accordion.tsx b/plugins/search/src/components/SearchType/SearchType.Accordion.tsx index bdd13f2fb2..e823ebe49a 100644 --- a/plugins/search/src/components/SearchType/SearchType.Accordion.tsx +++ b/plugins/search/src/components/SearchType/SearchType.Accordion.tsx @@ -20,9 +20,7 @@ import { searchApiRef, useSearch } from '@backstage/plugin-search-react'; import Accordion from '@material-ui/core/Accordion'; import AccordionSummary from '@material-ui/core/AccordionSummary'; import AccordionDetails from '@material-ui/core/AccordionDetails'; -import Card from '@material-ui/core/Card'; -import CardContent from '@material-ui/core/CardContent'; -import CardHeader from '@material-ui/core/CardHeader'; +import Box from '@material-ui/core/Box'; import Divider from '@material-ui/core/Divider'; import List from '@material-ui/core/List'; import ListItem from '@material-ui/core/ListItem'; @@ -30,16 +28,11 @@ import ListItemIcon from '@material-ui/core/ListItemIcon'; import ListItemText from '@material-ui/core/ListItemText'; import { makeStyles } from '@material-ui/core/styles'; import ExpandMoreIcon from '@material-ui/icons/ExpandMore'; +import Typography from '@material-ui/core/Typography'; import AllIcon from '@material-ui/icons/FontDownload'; import useAsync from 'react-use/esm/useAsync'; const useStyles = makeStyles(theme => ({ - card: { - backgroundColor: 'rgba(0, 0, 0, .11)', - }, - cardContent: { - paddingTop: theme.spacing(1), - }, icon: { color: theme.palette.text.primary, }, @@ -149,61 +142,59 @@ export const SearchTypeAccordion = (props: SearchTypeAccordionProps) => { }, [filters, showCounts, term, types]); return ( - - - - + {name} + + } + IconButtonProps={{ size: 'small' }} > - } - IconButtonProps={{ size: 'small' }} + {expanded + ? 'Collapse' + : definedTypes.filter(t => t.value === selected)[0]!.name} + + + - {expanded - ? 'Collapse' - : definedTypes.filter(t => t.value === selected)[0]!.name} - - - - {definedTypes.map(type => ( - - - - - {cloneElement(type.icon, { - className: classes.listItemIcon, - })} - - - - - ))} - - - - - + {definedTypes.map(type => ( + + + + + {cloneElement(type.icon, { + className: classes.listItemIcon, + })} + + + + + ))} + + + + ); }; From e3274524a60896eb443a268ed042ef399ba91951 Mon Sep 17 00:00:00 2001 From: Jonathan Roebuck Date: Tue, 5 Nov 2024 17:37:20 +0000 Subject: [PATCH 100/161] use body2 variant Signed-off-by: Jonathan Roebuck --- packages/app/src/components/search/SearchPage.tsx | 2 +- .../search/src/components/SearchType/SearchType.Accordion.tsx | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/packages/app/src/components/search/SearchPage.tsx b/packages/app/src/components/search/SearchPage.tsx index be1c49be1b..fe96e506eb 100644 --- a/packages/app/src/components/search/SearchPage.tsx +++ b/packages/app/src/components/search/SearchPage.tsx @@ -73,7 +73,7 @@ const SearchPage = () => { {!isMobile && ( { return ( - {name} + + {name} + Date: Tue, 5 Nov 2024 21:04:48 +0100 Subject: [PATCH 101/161] add the pod delete feature to the kubernetes react plugin (#24534) * add the pod delete feature to the kubernetes react plugin Signed-off-by: sebalaini * move podDelete into PodDrawer Signed-off-by: sebalaini * remove dialog and use only a button Signed-off-by: sebalaini * move config inside frontend object Signed-off-by: sebalaini * update the k8 configration.md documentation Signed-off-by: sebalaini * add error ui if error Signed-off-by: sebalaini * refactor restart text logic Signed-off-by: sebalaini * fix test var name Signed-off-by: sebalaini * fix doc key Signed-off-by: sebalaini * revert last commit Signed-off-by: sebalaini * add i18n Signed-off-by: sebalaini * Update plugins/kubernetes-react/src/translation.ts Co-authored-by: Patrik Oldsberg Signed-off-by: Seba <17096352+sebalaini@users.noreply.github.com> * remove buttonText config Signed-off-by: sebalaini * add alpha and doc Signed-off-by: sebalaini * add alpha api report Signed-off-by: sebalaini --------- Signed-off-by: sebalaini Signed-off-by: Seba <17096352+sebalaini@users.noreply.github.com> Co-authored-by: Patrik Oldsberg --- .changeset/healthy-bags-jog.md | 5 + docs/features/kubernetes/configuration.md | 52 +++++++++++ plugins/kubernetes-react/config.d.ts | 15 +++ plugins/kubernetes-react/package.json | 19 +++- plugins/kubernetes-react/report-alpha.api.md | 17 ++++ plugins/kubernetes-react/report.api.md | 20 ++++ plugins/kubernetes-react/src/alpha.ts | 19 ++++ .../src/api/KubernetesProxyClient.ts | 21 +++++ plugins/kubernetes-react/src/api/types.ts | 5 + .../src/components/Pods/Events/Events.tsx | 4 +- .../Pods/FixDialog/FixDialog.test.tsx | 4 +- .../Pods/PodDelete/PodDeleteButton.tsx | 93 +++++++++++++++++++ .../src/components/Pods/PodDelete/index.ts | 18 ++++ .../src/components/Pods/PodDelete/types.ts | 27 ++++++ .../components/Pods/PodDelete/usePodDelete.ts | 51 ++++++++++ .../components/Pods/PodDrawer/PodDrawer.tsx | 12 +++ plugins/kubernetes-react/src/hooks/index.ts | 1 + .../src/hooks/useIsPodDeleteEnabled.test.tsx | 66 +++++++++++++ .../src/hooks/useIsPodDeleteEnabled.ts | 29 ++++++ plugins/kubernetes-react/src/translation.ts | 29 ++++++ 20 files changed, 500 insertions(+), 7 deletions(-) create mode 100644 .changeset/healthy-bags-jog.md create mode 100644 plugins/kubernetes-react/report-alpha.api.md create mode 100644 plugins/kubernetes-react/src/alpha.ts create mode 100644 plugins/kubernetes-react/src/components/Pods/PodDelete/PodDeleteButton.tsx create mode 100644 plugins/kubernetes-react/src/components/Pods/PodDelete/index.ts create mode 100644 plugins/kubernetes-react/src/components/Pods/PodDelete/types.ts create mode 100644 plugins/kubernetes-react/src/components/Pods/PodDelete/usePodDelete.ts create mode 100644 plugins/kubernetes-react/src/hooks/useIsPodDeleteEnabled.test.tsx create mode 100644 plugins/kubernetes-react/src/hooks/useIsPodDeleteEnabled.ts create mode 100644 plugins/kubernetes-react/src/translation.ts diff --git a/.changeset/healthy-bags-jog.md b/.changeset/healthy-bags-jog.md new file mode 100644 index 0000000000..ab4930963c --- /dev/null +++ b/.changeset/healthy-bags-jog.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-kubernetes-react': patch +--- + +add the pod delete feature to the kubernetes react plugin diff --git a/docs/features/kubernetes/configuration.md b/docs/features/kubernetes/configuration.md index 7c14c40283..71fdd0be0e 100644 --- a/docs/features/kubernetes/configuration.md +++ b/docs/features/kubernetes/configuration.md @@ -17,6 +17,9 @@ The following is a full example entry in `app-config.yaml`: ```yaml kubernetes: + frontend: + podDelete: + enabled: true serviceLocatorMethod: type: 'multiTenant' clusterLocatorMethods: @@ -48,6 +51,55 @@ kubernetes: exposeDashboard: true ``` +### `frontend` (optional) + +This is an array used to configure some frontend features. + +Valid values are: + +- `podDelete` + +#### `podDelete` (optional) + +This configures the behavior of the delete pod button in the container panel. + +Valid configurations are: + +- `enabled` + +##### `enabled` + +This configuration controls the visibility of this feature. + +Valid values are: + +- `true` +- `false` + +The default value is `false`. + +#### Internationalization + +To customize or translate the **Delete Pod** text, use the following approach: + +```js +import { createTranslationMessages } from '@backstage/core-plugin-api/alpha'; +import { kubernetesReactTranslationRef } from '@backstage/plugin-kubernetes-react/alpha'; + +const app = createApp({ + __experimentalTranslations: { + resources: [ + createTranslationMessages({ + ref: kubernetesReactTranslationRef, + messages: { + "podDrawer.buttons.delete": 'Restart Pod' + } + }) + ] + }, + ... +``` + ### `serviceLocatorMethod` This configures how to determine which clusters a component is running in. diff --git a/plugins/kubernetes-react/config.d.ts b/plugins/kubernetes-react/config.d.ts index 2d2b790d05..b5b811609b 100644 --- a/plugins/kubernetes-react/config.d.ts +++ b/plugins/kubernetes-react/config.d.ts @@ -27,5 +27,20 @@ export interface Config { */ enabled?: boolean; }; + /** + * Frontend config + */ + frontend?: { + /** + * Pod Delete config + */ + podDelete?: { + /** + * Enable `podDelete` UI feature + * @visibility frontend + */ + enabled?: boolean; + }; + }; }; } diff --git a/plugins/kubernetes-react/package.json b/plugins/kubernetes-react/package.json index 2d8430b953..611766a640 100644 --- a/plugins/kubernetes-react/package.json +++ b/plugins/kubernetes-react/package.json @@ -14,9 +14,7 @@ ] }, "publishConfig": { - "access": "public", - "main": "dist/index.esm.js", - "types": "dist/index.d.ts" + "access": "public" }, "repository": { "type": "git", @@ -25,8 +23,23 @@ }, "license": "Apache-2.0", "sideEffects": false, + "exports": { + ".": "./src/index.ts", + "./alpha": "./src/alpha.ts", + "./package.json": "./package.json" + }, "main": "src/index.ts", "types": "src/index.ts", + "typesVersions": { + "*": { + "alpha": [ + "src/alpha.ts" + ], + "package.json": [ + "package.json" + ] + } + }, "files": [ "dist", "config.d.ts" diff --git a/plugins/kubernetes-react/report-alpha.api.md b/plugins/kubernetes-react/report-alpha.api.md new file mode 100644 index 0000000000..00a8b6b819 --- /dev/null +++ b/plugins/kubernetes-react/report-alpha.api.md @@ -0,0 +1,17 @@ +## API Report File for "@backstage/plugin-kubernetes-react" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts +import { TranslationRef } from '@backstage/core-plugin-api/alpha'; + +// @alpha (undocumented) +export const kubernetesReactTranslationRef: TranslationRef< + 'kubernetes-react', + { + readonly 'podDrawer.buttons.delete': 'Delete Pod'; + } +>; + +// (No @packageDocumentation comment for this package) +``` diff --git a/plugins/kubernetes-react/report.api.md b/plugins/kubernetes-react/report.api.md index adb75a7d60..454302f632 100644 --- a/plugins/kubernetes-react/report.api.md +++ b/plugins/kubernetes-react/report.api.md @@ -512,6 +512,14 @@ export interface KubernetesObjects { // @public (undocumented) export interface KubernetesProxyApi { + // (undocumented) + deletePod(request: { + podName: string; + namespace: string; + clusterName: string; + }): Promise<{ + text: string; + }>; // (undocumented) getEventsByInvolvedObjectName(request: { clusterName: string; @@ -537,6 +545,18 @@ export const kubernetesProxyApiRef: ApiRef; export class KubernetesProxyClient { constructor(options: { kubernetesApi: KubernetesApi }); // (undocumented) + deletePod({ + podName, + namespace, + clusterName, + }: { + podName: string; + namespace: string; + clusterName: string; + }): Promise<{ + text: string; + }>; + // (undocumented) getEventsByInvolvedObjectName({ clusterName, involvedObjectName, diff --git a/plugins/kubernetes-react/src/alpha.ts b/plugins/kubernetes-react/src/alpha.ts new file mode 100644 index 0000000000..411bd78878 --- /dev/null +++ b/plugins/kubernetes-react/src/alpha.ts @@ -0,0 +1,19 @@ +/* + * Copyright 2023 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { kubernetesReactTranslationRef } from './translation'; + +export { kubernetesReactTranslationRef }; diff --git a/plugins/kubernetes-react/src/api/KubernetesProxyClient.ts b/plugins/kubernetes-react/src/api/KubernetesProxyClient.ts index 3703d8b180..caad2cafd0 100644 --- a/plugins/kubernetes-react/src/api/KubernetesProxyClient.ts +++ b/plugins/kubernetes-react/src/api/KubernetesProxyClient.ts @@ -110,4 +110,25 @@ export class KubernetesProxyClient { .then(response => this.handleText(response)) .then(text => ({ text })); } + + async deletePod({ + podName, + namespace, + clusterName, + }: { + podName: string; + namespace: string; + clusterName: string; + }): Promise<{ text: string }> { + return await this.kubernetesApi + .proxy({ + clusterName: clusterName, + path: `/api/v1/namespaces/${namespace}/pods/${podName}`, + init: { + method: 'DELETE', + }, + }) + .then(response => this.handleText(response)) + .then(text => ({ text })); + } } diff --git a/plugins/kubernetes-react/src/api/types.ts b/plugins/kubernetes-react/src/api/types.ts index cc27bf9dd4..548a2e150c 100644 --- a/plugins/kubernetes-react/src/api/types.ts +++ b/plugins/kubernetes-react/src/api/types.ts @@ -83,6 +83,11 @@ export interface KubernetesProxyApi { containerName: string; previous?: boolean; }): Promise<{ text: string }>; + deletePod(request: { + podName: string; + namespace: string; + clusterName: string; + }): Promise<{ text: string }>; getEventsByInvolvedObjectName(request: { clusterName: string; involvedObjectName: string; diff --git a/plugins/kubernetes-react/src/components/Pods/Events/Events.tsx b/plugins/kubernetes-react/src/components/Pods/Events/Events.tsx index 6a43b2fe5b..bc5d797394 100644 --- a/plugins/kubernetes-react/src/components/Pods/Events/Events.tsx +++ b/plugins/kubernetes-react/src/components/Pods/Events/Events.tsx @@ -76,7 +76,7 @@ export const EventsContent = ({ } return true; }) - .map(event => { + .map((event, index) => { const timeAgo = event.metadata.creationTimestamp ? DateTime.fromISO(event.metadata.creationTimestamp).toRelative( { @@ -85,7 +85,7 @@ export const EventsContent = ({ ) : 'unknown'; return ( - + {getAvatarByType(event.type)} diff --git a/plugins/kubernetes-react/src/components/Pods/FixDialog/FixDialog.test.tsx b/plugins/kubernetes-react/src/components/Pods/FixDialog/FixDialog.test.tsx index 7972f4401c..25cccbb9c6 100644 --- a/plugins/kubernetes-react/src/components/Pods/FixDialog/FixDialog.test.tsx +++ b/plugins/kubernetes-react/src/components/Pods/FixDialog/FixDialog.test.tsx @@ -21,13 +21,13 @@ import { renderInTestApp } from '@backstage/test-utils'; jest.mock('../Events', () => ({ Events: () => { - return ; + return ; }, })); jest.mock('../PodLogs', () => ({ PodLogs: () => { - return ; + return ; }, })); diff --git a/plugins/kubernetes-react/src/components/Pods/PodDelete/PodDeleteButton.tsx b/plugins/kubernetes-react/src/components/Pods/PodDelete/PodDeleteButton.tsx new file mode 100644 index 0000000000..622a7cba63 --- /dev/null +++ b/plugins/kubernetes-react/src/components/Pods/PodDelete/PodDeleteButton.tsx @@ -0,0 +1,93 @@ +/* + * Copyright 2024 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import React, { useState } from 'react'; + +import Grid from '@material-ui/core/Grid'; +import Typography from '@material-ui/core/Typography'; +import CardActions from '@material-ui/core/CardActions'; +import Button from '@material-ui/core/Button'; +import DeleteIcon from '@material-ui/icons/Close'; +import CircularProgress from '@material-ui/core/CircularProgress'; +import { useTranslationRef } from '@backstage/core-plugin-api/alpha'; +import { kubernetesReactTranslationRef } from '../../../translation'; + +import { usePodDelete } from './usePodDelete'; +import { PodScope } from './types'; + +/** + * Props for PodDeleteButton + * + * @public + */ +export interface PodDeleteButtonProps { + podScope: PodScope; +} + +/** + * a Delete button to delete a given pod + * + * @public + */ +export const PodDeleteButton = ({ podScope }: PodDeleteButtonProps) => { + const [isLoading, setIsLoading] = useState(false); + const [hasError, setHasError] = useState(false); + const deletePod = usePodDelete(); + + const { t } = useTranslationRef(kubernetesReactTranslationRef); + const buttonText = t('podDrawer.buttons.delete'); + + const handleDeleteClick = async () => { + setIsLoading(true); + try { + await deletePod(podScope); + } catch (error) { + setHasError(true); + // eslint-disable-next-line no-console + console.error(error); + } + }; + + return ( + + + + + + {hasError && ( + + Could not delete the pod. Please check the console for the full + report. + + )} + + + ); +}; diff --git a/plugins/kubernetes-react/src/components/Pods/PodDelete/index.ts b/plugins/kubernetes-react/src/components/Pods/PodDelete/index.ts new file mode 100644 index 0000000000..443f758a29 --- /dev/null +++ b/plugins/kubernetes-react/src/components/Pods/PodDelete/index.ts @@ -0,0 +1,18 @@ +/* + * Copyright 2024 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +export * from './PodDeleteButton'; +export * from './usePodDelete'; +export * from './types'; diff --git a/plugins/kubernetes-react/src/components/Pods/PodDelete/types.ts b/plugins/kubernetes-react/src/components/Pods/PodDelete/types.ts new file mode 100644 index 0000000000..8b277371dd --- /dev/null +++ b/plugins/kubernetes-react/src/components/Pods/PodDelete/types.ts @@ -0,0 +1,27 @@ +/* + * Copyright 2024 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import { ClusterAttributes } from '@backstage/plugin-kubernetes-common'; + +/** + * Contains the details needed to make a delete request to Kubernetes + * + * @public + */ +export interface PodScope { + podName: string; + podNamespace: string; + cluster: ClusterAttributes; +} diff --git a/plugins/kubernetes-react/src/components/Pods/PodDelete/usePodDelete.ts b/plugins/kubernetes-react/src/components/Pods/PodDelete/usePodDelete.ts new file mode 100644 index 0000000000..31ac2478b8 --- /dev/null +++ b/plugins/kubernetes-react/src/components/Pods/PodDelete/usePodDelete.ts @@ -0,0 +1,51 @@ +/* + * Copyright 2024 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import { useCallback } from 'react'; + +import { PodScope } from './types'; +import { useApi } from '@backstage/core-plugin-api'; +import { kubernetesProxyApiRef } from '../../../api/types'; + +/** + * Arguments for usePodDelete + * + * @public + */ +export interface PodDeleteOptions { + podScope: PodScope; +} + +/** + * Delete a given pod + * + * @public + */ +export const usePodDelete = () => { + const kubernetesProxyApi = useApi(kubernetesProxyApiRef); + + const deletePod = useCallback( + async (podScope: PodScope) => { + return await kubernetesProxyApi.deletePod({ + podName: podScope.podName, + namespace: podScope.podNamespace, + clusterName: podScope.cluster.name, + }); + }, + [kubernetesProxyApi], + ); + + return deletePod; +}; diff --git a/plugins/kubernetes-react/src/components/Pods/PodDrawer/PodDrawer.tsx b/plugins/kubernetes-react/src/components/Pods/PodDrawer/PodDrawer.tsx index 7a7b17b7f6..3709b1186e 100644 --- a/plugins/kubernetes-react/src/components/Pods/PodDrawer/PodDrawer.tsx +++ b/plugins/kubernetes-react/src/components/Pods/PodDrawer/PodDrawer.tsx @@ -27,11 +27,13 @@ import { ContainerCard } from './ContainerCard'; import { PodAndErrors } from '../types'; import { KubernetesDrawer } from '../../KubernetesDrawer'; +import { PodDeleteButton } from '../PodDelete/PodDeleteButton'; import { PendingPodContent } from './PendingPodContent'; import { ErrorList } from '../ErrorList'; import { usePodMetrics } from '../../../hooks/usePodMetrics'; import { ResourceUtilization } from '../../ResourceUtilization'; import { bytesToMiB, formatMillicores } from '../../../utils/resources'; +import { useIsPodDeleteEnabled } from '../../../hooks'; const useDrawerContentStyles = makeStyles((_theme: Theme) => createStyles({ @@ -76,6 +78,7 @@ export interface PodDrawerProps { export const PodDrawer = ({ podAndErrors, open }: PodDrawerProps) => { const classes = useDrawerContentStyles(); const podMetrics = usePodMetrics(podAndErrors.cluster.name, podAndErrors.pod); + const isPodDeleteEnabled = useIsPodDeleteEnabled(); return ( { } >
+ {isPodDeleteEnabled && ( + + )} {podMetrics && ( diff --git a/plugins/kubernetes-react/src/hooks/index.ts b/plugins/kubernetes-react/src/hooks/index.ts index 2bc519d69a..7f80e95e41 100644 --- a/plugins/kubernetes-react/src/hooks/index.ts +++ b/plugins/kubernetes-react/src/hooks/index.ts @@ -14,6 +14,7 @@ * limitations under the License. */ +export * from './useIsPodDeleteEnabled'; export * from './useIsPodExecTerminalEnabled'; export * from './useIsPodExecTerminalSupported'; export * from './useKubernetesObjects'; diff --git a/plugins/kubernetes-react/src/hooks/useIsPodDeleteEnabled.test.tsx b/plugins/kubernetes-react/src/hooks/useIsPodDeleteEnabled.test.tsx new file mode 100644 index 0000000000..92aa601d8d --- /dev/null +++ b/plugins/kubernetes-react/src/hooks/useIsPodDeleteEnabled.test.tsx @@ -0,0 +1,66 @@ +/* + * Copyright 2024 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import { ConfigReader } from '@backstage/core-app-api'; +import { configApiRef } from '@backstage/core-plugin-api'; +import { TestApiProvider } from '@backstage/test-utils'; +import { renderHook } from '@testing-library/react'; +import { PropsWithChildren } from 'react'; +import React from 'react'; + +import { useIsPodDeleteEnabled } from './useIsPodDeleteEnabled'; + +describe('useIsPodDeleteEnabled', () => { + let isPodDeleteEnabled: boolean | undefined; + + const apiWrapper = ({ children }: PropsWithChildren) => ( + + {children} + + ); + + it.each([ + { + condition: 'missing config', + returnValue: undefined, + }, + { condition: 'disabled', returnValue: false }, + { + condition: 'enabled', + returnValue: true, + }, + ])('Should return $returnValue if $condition', async ({ returnValue }) => { + isPodDeleteEnabled = returnValue; + + const { result } = renderHook(() => useIsPodDeleteEnabled(), { + wrapper: apiWrapper, + }); + + expect(result.current).toEqual(returnValue); + }); +}); diff --git a/plugins/kubernetes-react/src/hooks/useIsPodDeleteEnabled.ts b/plugins/kubernetes-react/src/hooks/useIsPodDeleteEnabled.ts new file mode 100644 index 0000000000..7762a050ac --- /dev/null +++ b/plugins/kubernetes-react/src/hooks/useIsPodDeleteEnabled.ts @@ -0,0 +1,29 @@ +/* + * Copyright 2024 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import { configApiRef, useApi } from '@backstage/core-plugin-api'; + +/** + * Check if conditions for a pod delete call through the proxy endpoint are met + * + * @internal + */ +export const useIsPodDeleteEnabled = (): boolean | undefined => { + const configApi = useApi(configApiRef); + + return configApi + .getOptionalConfig('kubernetes.frontend') + ?.getOptionalBoolean('podDelete.enabled'); +}; diff --git a/plugins/kubernetes-react/src/translation.ts b/plugins/kubernetes-react/src/translation.ts new file mode 100644 index 0000000000..5b8a26b0d5 --- /dev/null +++ b/plugins/kubernetes-react/src/translation.ts @@ -0,0 +1,29 @@ +/* + * Copyright 2024 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { createTranslationRef } from '@backstage/core-plugin-api/alpha'; + +/** @alpha */ +export const kubernetesReactTranslationRef = createTranslationRef({ + id: 'kubernetes-react', + messages: { + podDrawer: { + buttons: { + delete: 'Delete Pod', + }, + }, + }, +}); From 6af34a829267e52113fa3927bd2611138b3393be Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 6 Nov 2024 00:25:16 +0000 Subject: [PATCH 102/161] fix(deps): update dependency @types/qs to v6.9.17 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index c627623e80..40ff877205 100644 --- a/yarn.lock +++ b/yarn.lock @@ -18957,9 +18957,9 @@ __metadata: linkType: hard "@types/qs@npm:*, @types/qs@npm:^6.9.11, @types/qs@npm:^6.9.6": - version: 6.9.16 - resolution: "@types/qs@npm:6.9.16" - checksum: 2e8918150c12735630f7ee16b770c72949274938c30306025f68aaf977227f41fe0c698ed93db1099e04916d582ac5a1faf7e3c7061c8d885d9169f59a184b6c + version: 6.9.17 + resolution: "@types/qs@npm:6.9.17" + checksum: fc3beda0be70e820ddabaa361e8dfec5e09b482b8f6cf1515615479a027dd06cd5ba0ffbd612b654c2605523f45f484c8905a475623d6cd0c4cadcf5d0c517f5 languageName: node linkType: hard From bce4bd0a8b9d4131e2cc79fdc5a4f598b8184288 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 6 Nov 2024 00:25:53 +0000 Subject: [PATCH 103/161] fix(deps): update dependency mysql2 to v3.11.4 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index c627623e80..72d03e117d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -35317,8 +35317,8 @@ __metadata: linkType: hard "mysql2@npm:^3.0.0": - version: 3.11.3 - resolution: "mysql2@npm:3.11.3" + version: 3.11.4 + resolution: "mysql2@npm:3.11.4" dependencies: aws-ssl-profiles: ^1.1.1 denque: ^2.1.0 @@ -35329,7 +35329,7 @@ __metadata: named-placeholders: ^1.1.3 seq-queue: ^0.0.5 sqlstring: ^2.3.2 - checksum: ae62b5b997da429a33f0762158db965d22daece0030e75ac8e822b0b342ad082fa5f1ead87d922d0ba93595e9d5491036916ef91457c762517f25f41afa6e2d9 + checksum: b4415028fad374b5bd5303968c28fc95feee60c1c946ef47f3581e0303c0e5978a306f44d6f665e3fdada5d6a0dd6c55515427a195700b90943d188f6db2f7ed languageName: node linkType: hard From 175d1a40f4d037b5c055abe95912b0596d03514a Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 6 Nov 2024 00:26:10 +0000 Subject: [PATCH 104/161] chore(deps): update dependency eslint-plugin-storybook to ^0.11.0 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- storybook/package.json | 2 +- storybook/yarn.lock | 37 ++++++++++--------------------------- 2 files changed, 11 insertions(+), 28 deletions(-) diff --git a/storybook/package.json b/storybook/package.json index bf01e74724..0e41f658fb 100644 --- a/storybook/package.json +++ b/storybook/package.json @@ -34,7 +34,7 @@ "@typescript-eslint/eslint-plugin": "^5.0.0", "@typescript-eslint/parser": "^5.0.0", "eslint": "^9.11.1", - "eslint-plugin-storybook": "^0.9.0", + "eslint-plugin-storybook": "^0.11.0", "globals": "^15.9.0", "react": "^18.0.2", "react-dom": "^18.0.2", diff --git a/storybook/yarn.lock b/storybook/yarn.lock index e9796bc070..8cbbcca199 100644 --- a/storybook/yarn.lock +++ b/storybook/yarn.lock @@ -1221,15 +1221,6 @@ __metadata: languageName: node linkType: hard -"@storybook/csf@npm:^0.0.1": - version: 0.0.1 - resolution: "@storybook/csf@npm:0.0.1" - dependencies: - lodash: ^4.17.15 - checksum: fb57fa028b08a51edf44e1a2bf4be40a4607f5c6ccb58aae8924f476a42b9bbd61a0ad521cfc82196f23e6a912caae0a615e70a755e6800b284c91c509fd2de6 - languageName: node - linkType: hard - "@storybook/csf@npm:^0.1.11": version: 0.1.11 resolution: "@storybook/csf@npm:0.1.11" @@ -1768,7 +1759,7 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/utils@npm:5.62.0, @typescript-eslint/utils@npm:^5.62.0": +"@typescript-eslint/utils@npm:5.62.0": version: 5.62.0 resolution: "@typescript-eslint/utils@npm:5.62.0" dependencies: @@ -1786,7 +1777,7 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/utils@npm:8.13.0": +"@typescript-eslint/utils@npm:8.13.0, @typescript-eslint/utils@npm:^8.8.1": version: 8.13.0 resolution: "@typescript-eslint/utils@npm:8.13.0" dependencies: @@ -2059,7 +2050,7 @@ __metadata: "@typescript-eslint/eslint-plugin": ^5.0.0 "@typescript-eslint/parser": ^5.0.0 eslint: ^9.11.1 - eslint-plugin-storybook: ^0.9.0 + eslint-plugin-storybook: ^0.11.0 globals: ^15.9.0 react: ^18.0.2 react-dom: ^18.0.2 @@ -2695,17 +2686,16 @@ __metadata: languageName: node linkType: hard -"eslint-plugin-storybook@npm:^0.9.0": - version: 0.9.0 - resolution: "eslint-plugin-storybook@npm:0.9.0" +"eslint-plugin-storybook@npm:^0.11.0": + version: 0.11.0 + resolution: "eslint-plugin-storybook@npm:0.11.0" dependencies: - "@storybook/csf": ^0.0.1 - "@typescript-eslint/utils": ^5.62.0 - requireindex: ^1.2.0 + "@storybook/csf": ^0.1.11 + "@typescript-eslint/utils": ^8.8.1 ts-dedent: ^2.2.0 peerDependencies: eslint: ">=6" - checksum: 91e12030db3a6228b692e76ddda6871d59a5f6ef6979e2ed794f734b09aaf8de8528eab7597d7c2d06fd4b8b9a30654ff27d097816a5ac1e22170c13af97731a + checksum: 52baa35ed4f49bc46bd323784ac2a48a615f0fd929b66dfec11bb2cbceded1a9978b68cbb1165aa36f078190651f93243f871ead368bb2f1ee131c7d00e265e9 languageName: node linkType: hard @@ -3572,7 +3562,7 @@ __metadata: languageName: node linkType: hard -"lodash@npm:^4.17.15, lodash@npm:^4.17.21": +"lodash@npm:^4.17.21": version: 4.17.21 resolution: "lodash@npm:4.17.21" checksum: eb835a2e51d381e561e508ce932ea50a8e5a68f4ebdd771ea240d3048244a8d13658acbd502cd4829768c56f2e16bdd4340b9ea141297d472517b83868e677f7 @@ -4248,13 +4238,6 @@ __metadata: languageName: node linkType: hard -"requireindex@npm:^1.2.0": - version: 1.2.0 - resolution: "requireindex@npm:1.2.0" - checksum: 50d8b10a1ff1fdf6aea7a1870bc7bd238b0fb1917d8d7ca17fd03afc38a65dcd7a8a4eddd031f89128b5f0065833d5c92c4fef67f2c04e8624057fe626c9cf94 - languageName: node - linkType: hard - "resolve-from@npm:^4.0.0": version: 4.0.0 resolution: "resolve-from@npm:4.0.0" From 7e9f84bb40cfea5c7c61857f5da0a64a1d0b76ab Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 6 Nov 2024 01:49:32 +0000 Subject: [PATCH 105/161] fix(deps): update dependency @google-cloud/storage to v7.14.0 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index aaf40d7e89..dd05d29077 100644 --- a/yarn.lock +++ b/yarn.lock @@ -10063,8 +10063,8 @@ __metadata: linkType: hard "@google-cloud/storage@npm:^7.0.0": - version: 7.13.0 - resolution: "@google-cloud/storage@npm:7.13.0" + version: 7.14.0 + resolution: "@google-cloud/storage@npm:7.14.0" dependencies: "@google-cloud/paginator": ^5.0.0 "@google-cloud/projectify": ^4.0.0 @@ -10081,7 +10081,7 @@ __metadata: retry-request: ^7.0.0 teeny-request: ^9.0.0 uuid: ^8.0.0 - checksum: b5e61b3123f2924aae17f3b1e9aa97092e999f2097c00d90d85329212219cd6b6a63a65fd84d228791b534e4747e96d430007c4a507b37f3e1d6e42a98d4e7e2 + checksum: c239b0961bb4dfb36fe67fc35b933bf65259bb4ebcdffeb48cdee5e2d838626daef47ba78417d33eb47fda5c2536d89ad1feb33cd59ecc887d47ab992fc80a1b languageName: node linkType: hard From 4c051d85ad17151fa1c7730d20128932e8e2cd38 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 6 Nov 2024 01:51:06 +0000 Subject: [PATCH 106/161] fix(deps): update dependency @mdx-js/react to v3.1.0 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- microsite/yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/microsite/yarn.lock b/microsite/yarn.lock index 6797804bf4..facba9dd5d 100644 --- a/microsite/yarn.lock +++ b/microsite/yarn.lock @@ -2256,14 +2256,14 @@ __metadata: linkType: hard "@mdx-js/react@npm:^3.0.0": - version: 3.0.1 - resolution: "@mdx-js/react@npm:3.0.1" + version: 3.1.0 + resolution: "@mdx-js/react@npm:3.1.0" dependencies: "@types/mdx": ^2.0.0 peerDependencies: "@types/react": ">=16" react: ">=16" - checksum: 1063a597264f6a8840aa13274a99beef8983a88dd45b0c5b8e48e6216bc23d33e247da8e2d95d6e1874483f8b4e0903b166ce5046874aa7ffa2b1333057dcddf + checksum: c5a9c495f43f498ece24a768762a1743abe2be33d050d7eab731beb754e631700547f039198c6262c998d9a443906bd78811c3fa38bc2fb37659848161dac331 languageName: node linkType: hard From 7f2f6be609c8745f50d3158d7a1b26aedf58ae25 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 6 Nov 2024 02:42:49 +0000 Subject: [PATCH 107/161] fix(deps): update dependency @opentelemetry/auto-instrumentations-node to ^0.52.0 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- packages/backend/package.json | 2 +- yarn.lock | 988 ++++++++++++++++++++++------------ 2 files changed, 652 insertions(+), 338 deletions(-) diff --git a/packages/backend/package.json b/packages/backend/package.json index 76f26ed84d..eff4559bc9 100644 --- a/packages/backend/package.json +++ b/packages/backend/package.json @@ -62,7 +62,7 @@ "@backstage/plugin-search-backend-node": "workspace:^", "@backstage/plugin-signals-backend": "workspace:^", "@backstage/plugin-techdocs-backend": "workspace:^", - "@opentelemetry/auto-instrumentations-node": "^0.51.0", + "@opentelemetry/auto-instrumentations-node": "^0.52.0", "@opentelemetry/exporter-prometheus": "^0.53.0", "@opentelemetry/sdk-node": "^0.53.0", "example-app": "link:../app" diff --git a/yarn.lock b/yarn.lock index dd05d29077..2df4276efb 100644 --- a/yarn.lock +++ b/yarn.lock @@ -13244,7 +13244,7 @@ __metadata: languageName: node linkType: hard -"@opentelemetry/api-logs@npm:0.53.0, @opentelemetry/api-logs@npm:^0.53.0": +"@opentelemetry/api-logs@npm:0.53.0": version: 0.53.0 resolution: "@opentelemetry/api-logs@npm:0.53.0" dependencies: @@ -13253,6 +13253,15 @@ __metadata: languageName: node linkType: hard +"@opentelemetry/api-logs@npm:0.54.1, @opentelemetry/api-logs@npm:^0.54.0": + version: 0.54.1 + resolution: "@opentelemetry/api-logs@npm:0.54.1" + dependencies: + "@opentelemetry/api": ^1.3.0 + checksum: da3d2bd36f138ec1a56ea34b1601c6bf30be22f443b3a24f5df2cf293ed3f2601fb01ff00cb34a4ef08bd955b78f8259243dc757195f9ace7af4196896d32291 + languageName: node + linkType: hard + "@opentelemetry/api@npm:^1.0.0, @opentelemetry/api@npm:^1.3.0, @opentelemetry/api@npm:^1.4.0": version: 1.9.0 resolution: "@opentelemetry/api@npm:1.9.0" @@ -13260,60 +13269,60 @@ __metadata: languageName: node linkType: hard -"@opentelemetry/auto-instrumentations-node@npm:^0.51.0": - version: 0.51.0 - resolution: "@opentelemetry/auto-instrumentations-node@npm:0.51.0" +"@opentelemetry/auto-instrumentations-node@npm:^0.52.0": + version: 0.52.0 + resolution: "@opentelemetry/auto-instrumentations-node@npm:0.52.0" dependencies: - "@opentelemetry/instrumentation": ^0.53.0 - "@opentelemetry/instrumentation-amqplib": ^0.42.0 - "@opentelemetry/instrumentation-aws-lambda": ^0.45.0 - "@opentelemetry/instrumentation-aws-sdk": ^0.44.0 - "@opentelemetry/instrumentation-bunyan": ^0.41.0 - "@opentelemetry/instrumentation-cassandra-driver": ^0.41.0 - "@opentelemetry/instrumentation-connect": ^0.39.0 - "@opentelemetry/instrumentation-cucumber": ^0.9.0 - "@opentelemetry/instrumentation-dataloader": ^0.12.0 - "@opentelemetry/instrumentation-dns": ^0.39.0 - "@opentelemetry/instrumentation-express": ^0.43.0 - "@opentelemetry/instrumentation-fastify": ^0.40.0 - "@opentelemetry/instrumentation-fs": ^0.15.0 - "@opentelemetry/instrumentation-generic-pool": ^0.39.0 - "@opentelemetry/instrumentation-graphql": ^0.43.0 - "@opentelemetry/instrumentation-grpc": ^0.53.0 - "@opentelemetry/instrumentation-hapi": ^0.41.0 - "@opentelemetry/instrumentation-http": ^0.53.0 - "@opentelemetry/instrumentation-ioredis": ^0.43.0 - "@opentelemetry/instrumentation-kafkajs": ^0.3.0 - "@opentelemetry/instrumentation-knex": ^0.40.0 - "@opentelemetry/instrumentation-koa": ^0.43.0 - "@opentelemetry/instrumentation-lru-memoizer": ^0.40.0 - "@opentelemetry/instrumentation-memcached": ^0.39.0 - "@opentelemetry/instrumentation-mongodb": ^0.47.0 - "@opentelemetry/instrumentation-mongoose": ^0.42.0 - "@opentelemetry/instrumentation-mysql": ^0.41.0 - "@opentelemetry/instrumentation-mysql2": ^0.41.0 - "@opentelemetry/instrumentation-nestjs-core": ^0.40.0 - "@opentelemetry/instrumentation-net": ^0.39.0 - "@opentelemetry/instrumentation-pg": ^0.46.0 - "@opentelemetry/instrumentation-pino": ^0.42.0 - "@opentelemetry/instrumentation-redis": ^0.42.0 - "@opentelemetry/instrumentation-redis-4": ^0.42.1 - "@opentelemetry/instrumentation-restify": ^0.41.0 - "@opentelemetry/instrumentation-router": ^0.40.0 - "@opentelemetry/instrumentation-socket.io": ^0.42.0 - "@opentelemetry/instrumentation-tedious": ^0.14.0 - "@opentelemetry/instrumentation-undici": ^0.6.0 - "@opentelemetry/instrumentation-winston": ^0.40.0 - "@opentelemetry/resource-detector-alibaba-cloud": ^0.29.3 - "@opentelemetry/resource-detector-aws": ^1.6.2 - "@opentelemetry/resource-detector-azure": ^0.2.11 - "@opentelemetry/resource-detector-container": ^0.4.4 - "@opentelemetry/resource-detector-gcp": ^0.29.12 + "@opentelemetry/instrumentation": ^0.54.0 + "@opentelemetry/instrumentation-amqplib": ^0.43.0 + "@opentelemetry/instrumentation-aws-lambda": ^0.46.0 + "@opentelemetry/instrumentation-aws-sdk": ^0.45.0 + "@opentelemetry/instrumentation-bunyan": ^0.42.0 + "@opentelemetry/instrumentation-cassandra-driver": ^0.42.0 + "@opentelemetry/instrumentation-connect": ^0.40.0 + "@opentelemetry/instrumentation-cucumber": ^0.10.0 + "@opentelemetry/instrumentation-dataloader": ^0.13.0 + "@opentelemetry/instrumentation-dns": ^0.40.0 + "@opentelemetry/instrumentation-express": ^0.44.0 + "@opentelemetry/instrumentation-fastify": ^0.41.0 + "@opentelemetry/instrumentation-fs": ^0.16.0 + "@opentelemetry/instrumentation-generic-pool": ^0.40.0 + "@opentelemetry/instrumentation-graphql": ^0.44.0 + "@opentelemetry/instrumentation-grpc": ^0.54.0 + "@opentelemetry/instrumentation-hapi": ^0.42.0 + "@opentelemetry/instrumentation-http": ^0.54.0 + "@opentelemetry/instrumentation-ioredis": ^0.44.0 + "@opentelemetry/instrumentation-kafkajs": ^0.4.0 + "@opentelemetry/instrumentation-knex": ^0.41.0 + "@opentelemetry/instrumentation-koa": ^0.44.0 + "@opentelemetry/instrumentation-lru-memoizer": ^0.41.0 + "@opentelemetry/instrumentation-memcached": ^0.40.0 + "@opentelemetry/instrumentation-mongodb": ^0.48.0 + "@opentelemetry/instrumentation-mongoose": ^0.43.0 + "@opentelemetry/instrumentation-mysql": ^0.42.0 + "@opentelemetry/instrumentation-mysql2": ^0.42.0 + "@opentelemetry/instrumentation-nestjs-core": ^0.41.0 + "@opentelemetry/instrumentation-net": ^0.40.0 + "@opentelemetry/instrumentation-pg": ^0.47.0 + "@opentelemetry/instrumentation-pino": ^0.43.0 + "@opentelemetry/instrumentation-redis": ^0.43.0 + "@opentelemetry/instrumentation-redis-4": ^0.43.0 + "@opentelemetry/instrumentation-restify": ^0.42.0 + "@opentelemetry/instrumentation-router": ^0.41.0 + "@opentelemetry/instrumentation-socket.io": ^0.43.0 + "@opentelemetry/instrumentation-tedious": ^0.15.0 + "@opentelemetry/instrumentation-undici": ^0.7.0 + "@opentelemetry/instrumentation-winston": ^0.41.0 + "@opentelemetry/resource-detector-alibaba-cloud": ^0.29.4 + "@opentelemetry/resource-detector-aws": ^1.7.0 + "@opentelemetry/resource-detector-azure": ^0.2.12 + "@opentelemetry/resource-detector-container": ^0.5.0 + "@opentelemetry/resource-detector-gcp": ^0.29.13 "@opentelemetry/resources": ^1.24.0 - "@opentelemetry/sdk-node": ^0.53.0 + "@opentelemetry/sdk-node": ^0.54.0 peerDependencies: "@opentelemetry/api": ^1.4.1 - checksum: 8918f51e7000f8abdbc6df439d4eb056c490437328c82848bf3a3a3a3bb652a6a295f7cf1324cdf97ba4357f3fc301652511cc40613bfe45bb5280b0407aa21e + checksum: 0827eb8193688254e3a8ba607eb43847fbf5970de960ede26b885a341a5761590aa0b59133ffda8771eb0466d53f3a20c08af5d3c1b7e239d56fdbc9dc107c62 languageName: node linkType: hard @@ -13326,6 +13335,15 @@ __metadata: languageName: node linkType: hard +"@opentelemetry/context-async-hooks@npm:1.27.0": + version: 1.27.0 + resolution: "@opentelemetry/context-async-hooks@npm:1.27.0" + peerDependencies: + "@opentelemetry/api": ">=1.0.0 <1.10.0" + checksum: d0fb0dd9e9de9b5404c50b48aa982c096f1f58aa518e472a3e48bd8d404354700132005886a497b7067cae6e813dab374a6c1483e344e53e396274c5b00f2a31 + languageName: node + linkType: hard + "@opentelemetry/core@npm:1.24.0": version: 1.24.0 resolution: "@opentelemetry/core@npm:1.24.0" @@ -13337,7 +13355,7 @@ __metadata: languageName: node linkType: hard -"@opentelemetry/core@npm:1.26.0, @opentelemetry/core@npm:^1.0.0, @opentelemetry/core@npm:^1.1.0, @opentelemetry/core@npm:^1.25.0, @opentelemetry/core@npm:^1.25.1, @opentelemetry/core@npm:^1.26.0, @opentelemetry/core@npm:^1.8.0": +"@opentelemetry/core@npm:1.26.0": version: 1.26.0 resolution: "@opentelemetry/core@npm:1.26.0" dependencies: @@ -13348,6 +13366,17 @@ __metadata: languageName: node linkType: hard +"@opentelemetry/core@npm:1.27.0, @opentelemetry/core@npm:^1.0.0, @opentelemetry/core@npm:^1.1.0, @opentelemetry/core@npm:^1.25.0, @opentelemetry/core@npm:^1.25.1, @opentelemetry/core@npm:^1.26.0, @opentelemetry/core@npm:^1.8.0": + version: 1.27.0 + resolution: "@opentelemetry/core@npm:1.27.0" + dependencies: + "@opentelemetry/semantic-conventions": 1.27.0 + peerDependencies: + "@opentelemetry/api": ">=1.0.0 <1.10.0" + checksum: 33ff551f89f0bb95830c9f9464c43b11adf88882ec1d3a03a5b9afcc89d2aafab33c36cb5047f18667d7929d6ab40ed0121649c42d0105f1cb33ffdca48f8b13 + languageName: node + linkType: hard + "@opentelemetry/exporter-logs-otlp-grpc@npm:0.53.0": version: 0.53.0 resolution: "@opentelemetry/exporter-logs-otlp-grpc@npm:0.53.0" @@ -13363,6 +13392,21 @@ __metadata: languageName: node linkType: hard +"@opentelemetry/exporter-logs-otlp-grpc@npm:0.54.1": + version: 0.54.1 + resolution: "@opentelemetry/exporter-logs-otlp-grpc@npm:0.54.1" + dependencies: + "@grpc/grpc-js": ^1.7.1 + "@opentelemetry/core": 1.27.0 + "@opentelemetry/otlp-grpc-exporter-base": 0.54.1 + "@opentelemetry/otlp-transformer": 0.54.1 + "@opentelemetry/sdk-logs": 0.54.1 + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: dccc1262e3146d8b87fc60da6fa60fbf1139af1f9917c4e31b6ebe4e45b018398160efaf288735c51d6295f8720e3584d0d9de1df32e14d2ca01180df4a07fa2 + languageName: node + linkType: hard + "@opentelemetry/exporter-logs-otlp-http@npm:0.53.0": version: 0.53.0 resolution: "@opentelemetry/exporter-logs-otlp-http@npm:0.53.0" @@ -13378,6 +13422,21 @@ __metadata: languageName: node linkType: hard +"@opentelemetry/exporter-logs-otlp-http@npm:0.54.1": + version: 0.54.1 + resolution: "@opentelemetry/exporter-logs-otlp-http@npm:0.54.1" + dependencies: + "@opentelemetry/api-logs": 0.54.1 + "@opentelemetry/core": 1.27.0 + "@opentelemetry/otlp-exporter-base": 0.54.1 + "@opentelemetry/otlp-transformer": 0.54.1 + "@opentelemetry/sdk-logs": 0.54.1 + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 6a84bc84e662e9adac9980f8e200ee8309cc6eed12512d4931b6925d5e1f6f887fa900c8aa8a3cc0200788b26e1acad8f5ce92da30f373199800f61586194da6 + languageName: node + linkType: hard + "@opentelemetry/exporter-logs-otlp-proto@npm:0.53.0": version: 0.53.0 resolution: "@opentelemetry/exporter-logs-otlp-proto@npm:0.53.0" @@ -13395,6 +13454,23 @@ __metadata: languageName: node linkType: hard +"@opentelemetry/exporter-logs-otlp-proto@npm:0.54.1": + version: 0.54.1 + resolution: "@opentelemetry/exporter-logs-otlp-proto@npm:0.54.1" + dependencies: + "@opentelemetry/api-logs": 0.54.1 + "@opentelemetry/core": 1.27.0 + "@opentelemetry/otlp-exporter-base": 0.54.1 + "@opentelemetry/otlp-transformer": 0.54.1 + "@opentelemetry/resources": 1.27.0 + "@opentelemetry/sdk-logs": 0.54.1 + "@opentelemetry/sdk-trace-base": 1.27.0 + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 1ef95a1791a7f0092a67dfb0029900d4c815521167555a2bb27bf4a841503f90328cef0e642c1e3110d44632b2f5f3dadcca8da06549381d83e2aa4d1cf478c9 + languageName: node + linkType: hard + "@opentelemetry/exporter-prometheus@npm:^0.53.0": version: 0.53.0 resolution: "@opentelemetry/exporter-prometheus@npm:0.53.0" @@ -13424,6 +13500,22 @@ __metadata: languageName: node linkType: hard +"@opentelemetry/exporter-trace-otlp-grpc@npm:0.54.1": + version: 0.54.1 + resolution: "@opentelemetry/exporter-trace-otlp-grpc@npm:0.54.1" + dependencies: + "@grpc/grpc-js": ^1.7.1 + "@opentelemetry/core": 1.27.0 + "@opentelemetry/otlp-grpc-exporter-base": 0.54.1 + "@opentelemetry/otlp-transformer": 0.54.1 + "@opentelemetry/resources": 1.27.0 + "@opentelemetry/sdk-trace-base": 1.27.0 + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 43f0eae8b30fcc9f66e57cac565fd93ca8864debc7bbb738c84bbab7c698a02e34dba3da44a1e325648b9a228b4085c50b3fc0268fe26ce9b00ea44baf6d7883 + languageName: node + linkType: hard + "@opentelemetry/exporter-trace-otlp-http@npm:0.53.0": version: 0.53.0 resolution: "@opentelemetry/exporter-trace-otlp-http@npm:0.53.0" @@ -13439,6 +13531,21 @@ __metadata: languageName: node linkType: hard +"@opentelemetry/exporter-trace-otlp-http@npm:0.54.1": + version: 0.54.1 + resolution: "@opentelemetry/exporter-trace-otlp-http@npm:0.54.1" + dependencies: + "@opentelemetry/core": 1.27.0 + "@opentelemetry/otlp-exporter-base": 0.54.1 + "@opentelemetry/otlp-transformer": 0.54.1 + "@opentelemetry/resources": 1.27.0 + "@opentelemetry/sdk-trace-base": 1.27.0 + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 145480e700404683f1dfbb077182d3dd05aa6cebfd9da99cd1fff5808fd729f779ea762f44ac6f66866a9cf39b9fec6260e17fe52ad915156ed1497597d54fbb + languageName: node + linkType: hard + "@opentelemetry/exporter-trace-otlp-proto@npm:0.53.0": version: 0.53.0 resolution: "@opentelemetry/exporter-trace-otlp-proto@npm:0.53.0" @@ -13454,6 +13561,21 @@ __metadata: languageName: node linkType: hard +"@opentelemetry/exporter-trace-otlp-proto@npm:0.54.1": + version: 0.54.1 + resolution: "@opentelemetry/exporter-trace-otlp-proto@npm:0.54.1" + dependencies: + "@opentelemetry/core": 1.27.0 + "@opentelemetry/otlp-exporter-base": 0.54.1 + "@opentelemetry/otlp-transformer": 0.54.1 + "@opentelemetry/resources": 1.27.0 + "@opentelemetry/sdk-trace-base": 1.27.0 + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: e3621e0d806fdeea6e4e28ead30a67ccd2e6c658692484cfc76ecb90c443a59ddc425c8fb99b544a569fee6e5ac9acca83cabc48386a8e97e5650e2ac0fde602 + languageName: node + linkType: hard + "@opentelemetry/exporter-zipkin@npm:1.26.0": version: 1.26.0 resolution: "@opentelemetry/exporter-zipkin@npm:1.26.0" @@ -13468,501 +13590,513 @@ __metadata: languageName: node linkType: hard -"@opentelemetry/instrumentation-amqplib@npm:^0.42.0": - version: 0.42.0 - resolution: "@opentelemetry/instrumentation-amqplib@npm:0.42.0" +"@opentelemetry/exporter-zipkin@npm:1.27.0": + version: 1.27.0 + resolution: "@opentelemetry/exporter-zipkin@npm:1.27.0" dependencies: - "@opentelemetry/core": ^1.8.0 - "@opentelemetry/instrumentation": ^0.53.0 - "@opentelemetry/semantic-conventions": ^1.27.0 + "@opentelemetry/core": 1.27.0 + "@opentelemetry/resources": 1.27.0 + "@opentelemetry/sdk-trace-base": 1.27.0 + "@opentelemetry/semantic-conventions": 1.27.0 peerDependencies: - "@opentelemetry/api": ^1.3.0 - checksum: 64c5a07cca54f2673aa9708638ba8a3dce864d69686924acb926a08f981941b080d68dcfc465b3139dc6824f239f1be9fc49257557c9bfcb460cb2c1f3b4dc80 + "@opentelemetry/api": ^1.0.0 + checksum: 6da1f2c228473c06db4e011b0172c075c01bbbcd946ff4084981956be0fce931e20cf9e933bc571f74904d219103e2232e10d6d02f24a4136142dc62d0fa14f9 languageName: node linkType: hard -"@opentelemetry/instrumentation-aws-lambda@npm:^0.45.0": - version: 0.45.0 - resolution: "@opentelemetry/instrumentation-aws-lambda@npm:0.45.0" +"@opentelemetry/instrumentation-amqplib@npm:^0.43.0": + version: 0.43.0 + resolution: "@opentelemetry/instrumentation-amqplib@npm:0.43.0" dependencies: - "@opentelemetry/instrumentation": ^0.53.0 + "@opentelemetry/core": ^1.8.0 + "@opentelemetry/instrumentation": ^0.54.0 + "@opentelemetry/semantic-conventions": ^1.27.0 + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 5eb17469d5c3ce2e8495d7e97684cd3b85d1e6aed4081ec1e4103f90bb5ef64633a6913844c5f0afecc2485f77c5b1adfe34c80ed5b7ea48873d9f92b9d04ef2 + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-aws-lambda@npm:^0.46.0": + version: 0.46.0 + resolution: "@opentelemetry/instrumentation-aws-lambda@npm:0.46.0" + dependencies: + "@opentelemetry/instrumentation": ^0.54.0 "@opentelemetry/propagator-aws-xray": ^1.3.1 - "@opentelemetry/resources": ^1.8.0 "@opentelemetry/semantic-conventions": ^1.27.0 "@types/aws-lambda": 8.10.143 peerDependencies: "@opentelemetry/api": ^1.3.0 - checksum: c7be58071cf1a0f65567b806ff946ed6b941a7e3d41fd35a3d14fa35baad8829ed1b06dbdec312ff755145c23d6f0b281bcf471363f4fc1e6d8fc13c197f3c3c + checksum: afd077386cbdd8d1e618a1046ce9ac56b5afe6731e193d6ff3b74be473a109f3307ded744b68baf5cf62c3c292a7851884c23c235c16f30e4075c68f0ea8f5e5 languageName: node linkType: hard -"@opentelemetry/instrumentation-aws-sdk@npm:^0.44.0": - version: 0.44.0 - resolution: "@opentelemetry/instrumentation-aws-sdk@npm:0.44.0" +"@opentelemetry/instrumentation-aws-sdk@npm:^0.45.0": + version: 0.45.0 + resolution: "@opentelemetry/instrumentation-aws-sdk@npm:0.45.0" dependencies: "@opentelemetry/core": ^1.8.0 - "@opentelemetry/instrumentation": ^0.53.0 - "@opentelemetry/propagation-utils": ^0.30.11 + "@opentelemetry/instrumentation": ^0.54.0 + "@opentelemetry/propagation-utils": ^0.30.12 "@opentelemetry/semantic-conventions": ^1.27.0 peerDependencies: "@opentelemetry/api": ^1.3.0 - checksum: 7ab0fe1c9a93866a2bc01027d794cf5f1c59973490890982d9db82b50d555b4f896537e768df62374e365d4322e4afd4d27941910d124c6f48ac63a5212484f1 + checksum: 2608fa79cc427d8c091ce3cee94382f5bac43333401266f20853aabccf2dd37740e659d0eece0db428f9764bf1f4a2328ec4c3eee6b8cccbee267d73da764f92 languageName: node linkType: hard -"@opentelemetry/instrumentation-bunyan@npm:^0.41.0": - version: 0.41.0 - resolution: "@opentelemetry/instrumentation-bunyan@npm:0.41.0" +"@opentelemetry/instrumentation-bunyan@npm:^0.42.0": + version: 0.42.0 + resolution: "@opentelemetry/instrumentation-bunyan@npm:0.42.0" dependencies: - "@opentelemetry/api-logs": ^0.53.0 - "@opentelemetry/instrumentation": ^0.53.0 + "@opentelemetry/api-logs": ^0.54.0 + "@opentelemetry/instrumentation": ^0.54.0 "@types/bunyan": 1.8.9 peerDependencies: "@opentelemetry/api": ^1.3.0 - checksum: f53f0fd1f285e6f7bd7d5a1ccb5747ea0c928c83f855dd4853b8d37b8b1e163d060a592957a89d1891e740b5dab800d0cda7d5b9db29206adb7938679e6f05e1 + checksum: 476850eff4e5c2864b0512c014db71a01372e5cce97e870b915450193f5eaee2cec294cdd32340cf5394cf40de3209ccfb47298630d8e3131572e6f0f568a964 languageName: node linkType: hard -"@opentelemetry/instrumentation-cassandra-driver@npm:^0.41.0": - version: 0.41.0 - resolution: "@opentelemetry/instrumentation-cassandra-driver@npm:0.41.0" +"@opentelemetry/instrumentation-cassandra-driver@npm:^0.42.0": + version: 0.42.0 + resolution: "@opentelemetry/instrumentation-cassandra-driver@npm:0.42.0" dependencies: - "@opentelemetry/instrumentation": ^0.53.0 + "@opentelemetry/instrumentation": ^0.54.0 "@opentelemetry/semantic-conventions": ^1.27.0 peerDependencies: "@opentelemetry/api": ^1.3.0 - checksum: e9c620e241938f16e667746c741480c809b959b44e8affe1b27e90c412ab898da2631307eae3fdee1f8fb928f50b88bc7c74275592beefc3fffc6c5eef83a184 + checksum: fa9139efc7cb10702cc71aba388d8efdd8a08bbab37864c28f61fb20c1cfa47dd79131a02571231ae14245b2d37bd53877fd359ffe61f86db99117532910f213 languageName: node linkType: hard -"@opentelemetry/instrumentation-connect@npm:^0.39.0": - version: 0.39.0 - resolution: "@opentelemetry/instrumentation-connect@npm:0.39.0" +"@opentelemetry/instrumentation-connect@npm:^0.40.0": + version: 0.40.0 + resolution: "@opentelemetry/instrumentation-connect@npm:0.40.0" dependencies: "@opentelemetry/core": ^1.8.0 - "@opentelemetry/instrumentation": ^0.53.0 + "@opentelemetry/instrumentation": ^0.54.0 "@opentelemetry/semantic-conventions": ^1.27.0 "@types/connect": 3.4.36 peerDependencies: "@opentelemetry/api": ^1.3.0 - checksum: 946c3d7ea0ca569942fd1e45a1f149f94fed4ee86609b4f2aedb23d67feeafe29a563beffa75d97f9b10c6b18b01c42d5eabf92d4f9f160bc938317c88ebc0de + checksum: 3fe2f82105abc740c813765594f0cce37cbcced2610ac2d48d97311e2bc853695c4953cedb88ed620c163e39492f4549476b3fa1b2b65034abd0fd5b2a1bb1b2 languageName: node linkType: hard -"@opentelemetry/instrumentation-cucumber@npm:^0.9.0": - version: 0.9.0 - resolution: "@opentelemetry/instrumentation-cucumber@npm:0.9.0" +"@opentelemetry/instrumentation-cucumber@npm:^0.10.0": + version: 0.10.0 + resolution: "@opentelemetry/instrumentation-cucumber@npm:0.10.0" dependencies: - "@opentelemetry/instrumentation": ^0.53.0 + "@opentelemetry/instrumentation": ^0.54.0 "@opentelemetry/semantic-conventions": ^1.27.0 peerDependencies: "@opentelemetry/api": ^1.0.0 - checksum: 31d702a2e3404298a8410362c7834efb840ec10de56144811803207ba9e0a12af9bcac483da96a5df32143597dc0b74c32ba697b6525b3db3601edb97d192e84 + checksum: a6c516b7a301141741a1e74d1e674434bdc99fa381217889dbcf2a03a2d8269a92cdb8517f25bda80b73019d30970980a98f859eb23e5ba10fbb5c899cdc7bf1 languageName: node linkType: hard -"@opentelemetry/instrumentation-dataloader@npm:^0.12.0": - version: 0.12.0 - resolution: "@opentelemetry/instrumentation-dataloader@npm:0.12.0" +"@opentelemetry/instrumentation-dataloader@npm:^0.13.0": + version: 0.13.0 + resolution: "@opentelemetry/instrumentation-dataloader@npm:0.13.0" dependencies: - "@opentelemetry/instrumentation": ^0.53.0 + "@opentelemetry/instrumentation": ^0.54.0 peerDependencies: "@opentelemetry/api": ^1.3.0 - checksum: 7d502bd4ca6eac448bebc971d7b7b85b1e1e959bfcbf4b7927ea3fe90784aec8132d147fef2e773e468a8d20241df825edec6e0753be824b155a15d89e6f57a1 + checksum: f423888d71c9b15c02dce863cccb5fa677c625bd3b864ba545be368275e3f88b03284073a24f7f3cb4c0c1f3544c92580b53abdf15dd098fd33c60c6d8326c24 languageName: node linkType: hard -"@opentelemetry/instrumentation-dns@npm:^0.39.0": - version: 0.39.0 - resolution: "@opentelemetry/instrumentation-dns@npm:0.39.0" - dependencies: - "@opentelemetry/instrumentation": ^0.53.0 - semver: ^7.5.4 - peerDependencies: - "@opentelemetry/api": ^1.3.0 - checksum: 691358e32532c8a830a4dc4133ae90f80bd659b4acc2db308353d3027663a4223de9e0ae7ef8c24be895b20be5995cb78f1bb86e57b32b8397b43339f58b5555 - languageName: node - linkType: hard - -"@opentelemetry/instrumentation-express@npm:^0.43.0": - version: 0.43.0 - resolution: "@opentelemetry/instrumentation-express@npm:0.43.0" - dependencies: - "@opentelemetry/core": ^1.8.0 - "@opentelemetry/instrumentation": ^0.53.0 - "@opentelemetry/semantic-conventions": ^1.27.0 - peerDependencies: - "@opentelemetry/api": ^1.3.0 - checksum: 69cb699cac00d7d5c4c2769f475e8d6db42063722f300d8c6d8370f015077cd923f1825c5efcd2848a744d9794aa15f8629da379ced3ccab421b039afaef0a03 - languageName: node - linkType: hard - -"@opentelemetry/instrumentation-fastify@npm:^0.40.0": +"@opentelemetry/instrumentation-dns@npm:^0.40.0": version: 0.40.0 - resolution: "@opentelemetry/instrumentation-fastify@npm:0.40.0" + resolution: "@opentelemetry/instrumentation-dns@npm:0.40.0" + dependencies: + "@opentelemetry/instrumentation": ^0.54.0 + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: dbc1a4b31b3fe78c46cd19c76162dedec175d07d09d6a553d9b31560ceab4ee6781ca88e5246fd9b371260bfa48c8ab26640d3e5ac914d4d6e8284214a7f86de + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-express@npm:^0.44.0": + version: 0.44.0 + resolution: "@opentelemetry/instrumentation-express@npm:0.44.0" dependencies: "@opentelemetry/core": ^1.8.0 - "@opentelemetry/instrumentation": ^0.53.0 + "@opentelemetry/instrumentation": ^0.54.0 "@opentelemetry/semantic-conventions": ^1.27.0 peerDependencies: "@opentelemetry/api": ^1.3.0 - checksum: c7bcae25aa07c723b9cd80e88db928751eef38870ffe9a48d6008ddb85f220a9122575a8f1c7e902cafc8d3c3468a5e816ff6eebc043a1411d6796e187e80555 + checksum: 0ab8be80c817021b7a96fa94bf55c635fa664d2c03058e1485311f4f4bf964e5cf7756185c9003a4d59ac6fc766eff52a7b390a91ca3946ce3d371f3135ea4d5 languageName: node linkType: hard -"@opentelemetry/instrumentation-fs@npm:^0.15.0": - version: 0.15.0 - resolution: "@opentelemetry/instrumentation-fs@npm:0.15.0" - dependencies: - "@opentelemetry/core": ^1.8.0 - "@opentelemetry/instrumentation": ^0.53.0 - peerDependencies: - "@opentelemetry/api": ^1.3.0 - checksum: d1f50b541629e9155dcbfbdd26d5fa43d6569f835abf88ea35261e0c03c6afb89b26cd2056dda6e9c4de72a49d7e2ca0336e1dc75604256db09e0e09d2182466 - languageName: node - linkType: hard - -"@opentelemetry/instrumentation-generic-pool@npm:^0.39.0": - version: 0.39.0 - resolution: "@opentelemetry/instrumentation-generic-pool@npm:0.39.0" - dependencies: - "@opentelemetry/instrumentation": ^0.53.0 - peerDependencies: - "@opentelemetry/api": ^1.3.0 - checksum: 2d094b217afe9c1d388f06cdaca07f9801b70f0d01ee3db374f1b4f07cd18efba55e90679f0237c1f2a7db22f9ee0e564e8583161bb7d578ecea779b874e967e - languageName: node - linkType: hard - -"@opentelemetry/instrumentation-graphql@npm:^0.43.0": - version: 0.43.0 - resolution: "@opentelemetry/instrumentation-graphql@npm:0.43.0" - dependencies: - "@opentelemetry/instrumentation": ^0.53.0 - peerDependencies: - "@opentelemetry/api": ^1.3.0 - checksum: 4164f3dad9c44f3d9684750d879ba79a51949fe69179d8437f5736762cdd0156c63a8914c7accd767b090a18db45f011a9cff5e238d3240077f1c095d3c5dd28 - languageName: node - linkType: hard - -"@opentelemetry/instrumentation-grpc@npm:^0.53.0": - version: 0.53.0 - resolution: "@opentelemetry/instrumentation-grpc@npm:0.53.0" - dependencies: - "@opentelemetry/instrumentation": 0.53.0 - "@opentelemetry/semantic-conventions": 1.27.0 - peerDependencies: - "@opentelemetry/api": ^1.3.0 - checksum: 937e96ec7fe655d3599ba71ffe48d79ff068e3ce820600249ed2807d2e7b2769e0771b723e5961bcd11ae8585df26f596a39e320497a9d3299d816510bb61eca - languageName: node - linkType: hard - -"@opentelemetry/instrumentation-hapi@npm:^0.41.0": +"@opentelemetry/instrumentation-fastify@npm:^0.41.0": version: 0.41.0 - resolution: "@opentelemetry/instrumentation-hapi@npm:0.41.0" + resolution: "@opentelemetry/instrumentation-fastify@npm:0.41.0" dependencies: "@opentelemetry/core": ^1.8.0 - "@opentelemetry/instrumentation": ^0.53.0 + "@opentelemetry/instrumentation": ^0.54.0 "@opentelemetry/semantic-conventions": ^1.27.0 peerDependencies: "@opentelemetry/api": ^1.3.0 - checksum: 2195c8366d9b81a40dd6d8db041c13687932ab7ec761c9dfea13162c4000638c699dfebf384e22f985aea2d7692c742ed8090cb5bad056e5137d2db79a615380 + checksum: dc790cd6ee7ea2322be2e35ce259e10a1f42827970b0b83a6ca7a5a934a986dea7239fe1a29cc772529c1504f24d3afe91c0923a87efc12e8ea1b1321df18514 languageName: node linkType: hard -"@opentelemetry/instrumentation-http@npm:^0.53.0": - version: 0.53.0 - resolution: "@opentelemetry/instrumentation-http@npm:0.53.0" +"@opentelemetry/instrumentation-fs@npm:^0.16.0": + version: 0.16.0 + resolution: "@opentelemetry/instrumentation-fs@npm:0.16.0" dependencies: - "@opentelemetry/core": 1.26.0 - "@opentelemetry/instrumentation": 0.53.0 + "@opentelemetry/core": ^1.8.0 + "@opentelemetry/instrumentation": ^0.54.0 + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: d74b3ab430c909b7840322540ab51664c29e8ff43fd4eaa77edf11828e5b2234b519771f8d64d051d6a508c1c20c377e606f032fa758ef08eb23e0336e3746bc + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-generic-pool@npm:^0.40.0": + version: 0.40.0 + resolution: "@opentelemetry/instrumentation-generic-pool@npm:0.40.0" + dependencies: + "@opentelemetry/instrumentation": ^0.54.0 + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 665d687191983bd756db1e510b604e244100c42fa6667d7512d42d58a2d319d114d41c96ada15cfa3344763022774138acaee1bec43fdbbfae5aa5bc65a72e0a + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-graphql@npm:^0.44.0": + version: 0.44.0 + resolution: "@opentelemetry/instrumentation-graphql@npm:0.44.0" + dependencies: + "@opentelemetry/instrumentation": ^0.54.0 + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: c4f0f771e1d939de844a97b0e5c0416d5c0d12d2d94e369566b61ec3819193c7eb113c9b3101581c83bb44bdb2b289a33623488ab7446be370e3577ebe37a198 + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-grpc@npm:^0.54.0": + version: 0.54.1 + resolution: "@opentelemetry/instrumentation-grpc@npm:0.54.1" + dependencies: + "@opentelemetry/instrumentation": 0.54.1 "@opentelemetry/semantic-conventions": 1.27.0 + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: fc85c6d1f93f4e0a9368c458b4569c0e60f86976f22c9e9a9d903f79079f93b5a280f3ab14b548149984241e5efd6d04f9b5018709e1377159c3cd41d3a08495 + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-hapi@npm:^0.42.0": + version: 0.42.0 + resolution: "@opentelemetry/instrumentation-hapi@npm:0.42.0" + dependencies: + "@opentelemetry/core": ^1.8.0 + "@opentelemetry/instrumentation": ^0.54.0 + "@opentelemetry/semantic-conventions": ^1.27.0 + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 4e755b3ad4426820d6172f01cd603f14ac75a4521292d912cd31eeaef3e5aa0b9caad5a617b2543a07824b5e385c9bbf256a45acc8a66127096cae03fc48a20d + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-http@npm:^0.54.0": + version: 0.54.1 + resolution: "@opentelemetry/instrumentation-http@npm:0.54.1" + dependencies: + "@opentelemetry/core": 1.27.0 + "@opentelemetry/instrumentation": 0.54.1 + "@opentelemetry/semantic-conventions": 1.27.0 + forwarded-parse: 2.1.2 semver: ^7.5.2 peerDependencies: "@opentelemetry/api": ^1.3.0 - checksum: 4ee569f7fc8c7ce50fabaff016d33577f36e63272b0634ac45806d70bffdf38fcf09db3cd9dd27c3150f6c4547fec673c356c419a6ed2399ff2849b9487a6e89 + checksum: 49a1bda0417ef5866398b89114a7f61d9eb040faa338603746af074dab315eca791443b35b9a1fa00d3b176f807b4a88f9003323570d50ee174f8c86cd3614d6 languageName: node linkType: hard -"@opentelemetry/instrumentation-ioredis@npm:^0.43.0": - version: 0.43.0 - resolution: "@opentelemetry/instrumentation-ioredis@npm:0.43.0" +"@opentelemetry/instrumentation-ioredis@npm:^0.44.0": + version: 0.44.0 + resolution: "@opentelemetry/instrumentation-ioredis@npm:0.44.0" dependencies: - "@opentelemetry/instrumentation": ^0.53.0 + "@opentelemetry/instrumentation": ^0.54.0 "@opentelemetry/redis-common": ^0.36.2 "@opentelemetry/semantic-conventions": ^1.27.0 peerDependencies: "@opentelemetry/api": ^1.3.0 - checksum: 16ae17687db3b4bbe78d92667ce86f3afb212adb5eda8f17b549a06ff9e1ba3e0f146ded9e943cb781780b64853a6b7fa3b85d2c2f5e4f42fd76d651c90aa71f + checksum: 774e7cfdf6cd96e6f88a671fdd2d43fdf4591b5e821820971d91cc2b3a83b01c8cf56297fbd5d4578c2b2b8e404c4426222de09198da9915eb6cc9e4b3489636 languageName: node linkType: hard -"@opentelemetry/instrumentation-kafkajs@npm:^0.3.0": - version: 0.3.0 - resolution: "@opentelemetry/instrumentation-kafkajs@npm:0.3.0" +"@opentelemetry/instrumentation-kafkajs@npm:^0.4.0": + version: 0.4.0 + resolution: "@opentelemetry/instrumentation-kafkajs@npm:0.4.0" dependencies: - "@opentelemetry/instrumentation": ^0.53.0 + "@opentelemetry/instrumentation": ^0.54.0 "@opentelemetry/semantic-conventions": ^1.27.0 peerDependencies: "@opentelemetry/api": ^1.3.0 - checksum: 9ea20f4f70edd7d47b551f56f56b6b0462e5f9dff3981462d9d061084a3bb345f1989ddc46a2d8fabebf2a9650c52ab6c6fb906a03e9176191cc71073c2bf22c + checksum: 23d8d8aa2945f372aaab8ab9a583821339c523d8203090e29652eb90c9600fc273e131d5a0b9464fe09cacde6b35f44e3046effa1b20f936a064872ba18352ec languageName: node linkType: hard -"@opentelemetry/instrumentation-knex@npm:^0.40.0": - version: 0.40.0 - resolution: "@opentelemetry/instrumentation-knex@npm:0.40.0" +"@opentelemetry/instrumentation-knex@npm:^0.41.0": + version: 0.41.0 + resolution: "@opentelemetry/instrumentation-knex@npm:0.41.0" dependencies: - "@opentelemetry/instrumentation": ^0.53.0 + "@opentelemetry/instrumentation": ^0.54.0 "@opentelemetry/semantic-conventions": ^1.27.0 peerDependencies: "@opentelemetry/api": ^1.3.0 - checksum: ca7f08b4a783ebb470663fa53a5418074cc04a42ad7b6f19939be04aff1c0db2070ca8b7ada17e363a412b1013149bde38bf1930f05c09cd6207a90711db0372 + checksum: c3b463e2b909a1d82a789f7cb5477efd60857f18ffb088903bf4bc06cd237f249e16b29338bebd7c16f72dd49ed61251f57cf81af2cc7708ebf37e628f27eafd languageName: node linkType: hard -"@opentelemetry/instrumentation-koa@npm:^0.43.0": - version: 0.43.0 - resolution: "@opentelemetry/instrumentation-koa@npm:0.43.0" +"@opentelemetry/instrumentation-koa@npm:^0.44.0": + version: 0.44.0 + resolution: "@opentelemetry/instrumentation-koa@npm:0.44.0" dependencies: "@opentelemetry/core": ^1.8.0 - "@opentelemetry/instrumentation": ^0.53.0 + "@opentelemetry/instrumentation": ^0.54.0 "@opentelemetry/semantic-conventions": ^1.27.0 peerDependencies: "@opentelemetry/api": ^1.3.0 - checksum: 7b30d11f8cbabc1570eeca771f421c65f014d87b850cf17a8f2aec98dc84a8a43ce6fe15634f5d16944466f8da1011508367498e215b3f6378e8f8d618a12ec9 + checksum: 09d8a87e874d9d5050a5f866fbd9ac90bc432c3934f99f68acc11a3936dc594097c31ba9622afeb4b5fc379a255f6e331b978935b360f918e784b27e1de70234 languageName: node linkType: hard -"@opentelemetry/instrumentation-lru-memoizer@npm:^0.40.0": - version: 0.40.0 - resolution: "@opentelemetry/instrumentation-lru-memoizer@npm:0.40.0" +"@opentelemetry/instrumentation-lru-memoizer@npm:^0.41.0": + version: 0.41.0 + resolution: "@opentelemetry/instrumentation-lru-memoizer@npm:0.41.0" dependencies: - "@opentelemetry/instrumentation": ^0.53.0 + "@opentelemetry/instrumentation": ^0.54.0 peerDependencies: "@opentelemetry/api": ^1.3.0 - checksum: 1a65e7c397707f9d09fe11f9fbd127d5094406ec98f84e74309c1d9869da23173c3895c851bccf9c5c1b8aeef6fc516340311f87d154832c74a344a0ed4ac9ef + checksum: 409c13e0e095fbbfdef0d001b4b881fc1cf470eab97e9c391e51b0f0e185ecfebf2b03487b30aed3aab77ad600944525375fdd276e5b763be7bb1b1903e8a553 languageName: node linkType: hard -"@opentelemetry/instrumentation-memcached@npm:^0.39.0": - version: 0.39.0 - resolution: "@opentelemetry/instrumentation-memcached@npm:0.39.0" +"@opentelemetry/instrumentation-memcached@npm:^0.40.0": + version: 0.40.0 + resolution: "@opentelemetry/instrumentation-memcached@npm:0.40.0" dependencies: - "@opentelemetry/instrumentation": ^0.53.0 + "@opentelemetry/instrumentation": ^0.54.0 "@opentelemetry/semantic-conventions": ^1.27.0 "@types/memcached": ^2.2.6 peerDependencies: "@opentelemetry/api": ^1.3.0 - checksum: bbf976f90463fe1b8a64d6e20057fc1926342a1f644e4cfd160ce1b0a032269b48b754e6cd86eff41faf92bd2e3617f1572a1ef272cb5059ed21aaf7c6591ccb + checksum: e33438c31ea6482382013603c0a81b2247757fe46fc433dbf7ca9c9577ef61175a7ff7d9a2d1560c0a4b6382616fa3a6bce3c21f82a7072cc5d27b4bb2a14efc languageName: node linkType: hard -"@opentelemetry/instrumentation-mongodb@npm:^0.47.0": - version: 0.47.0 - resolution: "@opentelemetry/instrumentation-mongodb@npm:0.47.0" +"@opentelemetry/instrumentation-mongodb@npm:^0.48.0": + version: 0.48.0 + resolution: "@opentelemetry/instrumentation-mongodb@npm:0.48.0" dependencies: - "@opentelemetry/instrumentation": ^0.53.0 - "@opentelemetry/sdk-metrics": ^1.9.1 + "@opentelemetry/instrumentation": ^0.54.0 "@opentelemetry/semantic-conventions": ^1.27.0 peerDependencies: "@opentelemetry/api": ^1.3.0 - checksum: 1d7c87532b5857e8d6d72272ce874f02a4b2adc8a135d07c48e432cc990a4493c110b15c842c72dfc79e33ddc63f518185b69e242e2c55521a06fe6503cb1980 + checksum: 910925d26cf7af63001c483c790deb75365bdeb314ecbf8d84b908eea4d3ecb1025a53b0f86a903c367a538a47756e423d6f697418782dc84d06dff49b483494 languageName: node linkType: hard -"@opentelemetry/instrumentation-mongoose@npm:^0.42.0": - version: 0.42.0 - resolution: "@opentelemetry/instrumentation-mongoose@npm:0.42.0" +"@opentelemetry/instrumentation-mongoose@npm:^0.43.0": + version: 0.43.0 + resolution: "@opentelemetry/instrumentation-mongoose@npm:0.43.0" dependencies: "@opentelemetry/core": ^1.8.0 - "@opentelemetry/instrumentation": ^0.53.0 + "@opentelemetry/instrumentation": ^0.54.0 "@opentelemetry/semantic-conventions": ^1.27.0 peerDependencies: "@opentelemetry/api": ^1.3.0 - checksum: 77d36437073ee589ccd73f4a10a4602afd0f4a3a89a9c572be18b2df75941f5a6885d4823094d8ffe8859801d827d0b46f93dee03f39286d89eead373edf76bb + checksum: 2eced33f6262e7eb47113cdbe2d518e719bcfb5f570a195d70f0cdf916baf87165bb527487c9bef8c2d67ae6f963bfb50c98f706b3724d0ebae6c27ec576e965 languageName: node linkType: hard -"@opentelemetry/instrumentation-mysql2@npm:^0.41.0": - version: 0.41.0 - resolution: "@opentelemetry/instrumentation-mysql2@npm:0.41.0" +"@opentelemetry/instrumentation-mysql2@npm:^0.42.0": + version: 0.42.0 + resolution: "@opentelemetry/instrumentation-mysql2@npm:0.42.0" dependencies: - "@opentelemetry/instrumentation": ^0.53.0 + "@opentelemetry/instrumentation": ^0.54.0 "@opentelemetry/semantic-conventions": ^1.27.0 "@opentelemetry/sql-common": ^0.40.1 peerDependencies: "@opentelemetry/api": ^1.3.0 - checksum: 37c8a57fb6591ae1db353e149ad5f38ac68c5f727e313ba6d1cc403d910ae8e3b743c3234500272012ea6eecb5b838803ee493ce5096ad40bb285b09090f4a65 + checksum: 60e8ec1caca0f1b629771d9c7f3fe45a7aedbb6cf7fb4b61718dd32c898bdf58d73b327e6e1d1b67bff4d3fb46d2831d38327f1ab5c0c9d315159746f57ff71b languageName: node linkType: hard -"@opentelemetry/instrumentation-mysql@npm:^0.41.0": - version: 0.41.0 - resolution: "@opentelemetry/instrumentation-mysql@npm:0.41.0" +"@opentelemetry/instrumentation-mysql@npm:^0.42.0": + version: 0.42.0 + resolution: "@opentelemetry/instrumentation-mysql@npm:0.42.0" dependencies: - "@opentelemetry/instrumentation": ^0.53.0 + "@opentelemetry/instrumentation": ^0.54.0 "@opentelemetry/semantic-conventions": ^1.27.0 "@types/mysql": 2.15.26 peerDependencies: "@opentelemetry/api": ^1.3.0 - checksum: c8c23a1273e900902867ca4da8c026581d3f584e420a5f26ec738ace20c1a85695a411721541e63e0639d9ddbb8c3713a2bc25621886f81912014882395d3531 + checksum: 27ed48852ede4380499c6fde38103c9e9775b59e3f7f08ff48757eea93308c9305fb5d441bb17ddcd8003bbc35179a4da9a5fd8e6dfcfc855a0dbb83c5e38929 languageName: node linkType: hard -"@opentelemetry/instrumentation-nestjs-core@npm:^0.40.0": +"@opentelemetry/instrumentation-nestjs-core@npm:^0.41.0": + version: 0.41.0 + resolution: "@opentelemetry/instrumentation-nestjs-core@npm:0.41.0" + dependencies: + "@opentelemetry/instrumentation": ^0.54.0 + "@opentelemetry/semantic-conventions": ^1.27.0 + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 2fb0365dbc6c6aa83953039698e2df339517bcf797d376e6a0bde2b857dccb1dd5799559cf7f2532f8d794227069663f7fbe0cab2f2e0cddaccc5ad99e74148c + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-net@npm:^0.40.0": version: 0.40.0 - resolution: "@opentelemetry/instrumentation-nestjs-core@npm:0.40.0" + resolution: "@opentelemetry/instrumentation-net@npm:0.40.0" dependencies: - "@opentelemetry/instrumentation": ^0.53.0 + "@opentelemetry/instrumentation": ^0.54.0 "@opentelemetry/semantic-conventions": ^1.27.0 peerDependencies: "@opentelemetry/api": ^1.3.0 - checksum: ce6b2d9186d95e5fa5c65efd902254c724e296172787d1fa9382a6204ae9d089e861ce8831ba6e6865d449a96a8aada7b1049568217f1bda21af3f36e01b9512 + checksum: 88821c24332532f1100fe2b2dd80a5ac5246595a4e5b8d51a8d2909918f8c4cab52a7bba2f9db616ffac268ff44e30a111bc20ac7cc94dd8f55b918b81723383 languageName: node linkType: hard -"@opentelemetry/instrumentation-net@npm:^0.39.0": - version: 0.39.0 - resolution: "@opentelemetry/instrumentation-net@npm:0.39.0" - dependencies: - "@opentelemetry/instrumentation": ^0.53.0 - "@opentelemetry/semantic-conventions": ^1.27.0 - peerDependencies: - "@opentelemetry/api": ^1.3.0 - checksum: ae3c7cdb4894a9aae7ea7a4d6a00cbef4afc2194539226f01f68ee78d25fb2d5debfb738b8a79a9842c4987bc4c673c7e6386d328c1e6bfc09e2613bf4677ed3 - languageName: node - linkType: hard - -"@opentelemetry/instrumentation-pg@npm:^0.46.0": - version: 0.46.0 - resolution: "@opentelemetry/instrumentation-pg@npm:0.46.0" +"@opentelemetry/instrumentation-pg@npm:^0.47.0": + version: 0.47.0 + resolution: "@opentelemetry/instrumentation-pg@npm:0.47.0" dependencies: "@opentelemetry/core": ^1.26.0 - "@opentelemetry/instrumentation": ^0.53.0 + "@opentelemetry/instrumentation": ^0.54.0 "@opentelemetry/semantic-conventions": 1.27.0 "@opentelemetry/sql-common": ^0.40.1 "@types/pg": 8.6.1 "@types/pg-pool": 2.0.6 peerDependencies: "@opentelemetry/api": ^1.3.0 - checksum: 5e193003e79e249acf8db85259f7d09e3086a5ce942277f2898b46b23b193351d5eab952733bf61387d47688d911c88387fd2b8c65520046303cfc2a7a383780 + checksum: 9b8ff3231cb88a788cf5cfc561a4f685c9e87aab4cf07e437bc38524a029ca175ee723c26ee81c00103d6c78086ceb913a7fe80acca3bf42d83e51fa6aad91a5 languageName: node linkType: hard -"@opentelemetry/instrumentation-pino@npm:^0.42.0": - version: 0.42.0 - resolution: "@opentelemetry/instrumentation-pino@npm:0.42.0" +"@opentelemetry/instrumentation-pino@npm:^0.43.0": + version: 0.43.0 + resolution: "@opentelemetry/instrumentation-pino@npm:0.43.0" dependencies: - "@opentelemetry/api-logs": ^0.53.0 + "@opentelemetry/api-logs": ^0.54.0 "@opentelemetry/core": ^1.25.0 - "@opentelemetry/instrumentation": ^0.53.0 + "@opentelemetry/instrumentation": ^0.54.0 peerDependencies: "@opentelemetry/api": ^1.3.0 - checksum: 005146e233c53ffbf703c97d855a523fe91d9d2632b77fd0b094caec6f3646908fd03c22bea77575d4a75eac0a2aa2065c7a2d9caac45c370e9592abe9b231c1 + checksum: 76efd25275edb0159057ac90fc3152dd9e76640a4e4986bbd6065c0d3dd2ece043817260e4230e203dffcf9f962f11f379bb4e35aed95c537679d6c0b026f4d3 languageName: node linkType: hard -"@opentelemetry/instrumentation-redis-4@npm:^0.42.1": - version: 0.42.1 - resolution: "@opentelemetry/instrumentation-redis-4@npm:0.42.1" +"@opentelemetry/instrumentation-redis-4@npm:^0.43.0": + version: 0.43.0 + resolution: "@opentelemetry/instrumentation-redis-4@npm:0.43.0" dependencies: - "@opentelemetry/instrumentation": ^0.53.0 + "@opentelemetry/instrumentation": ^0.54.0 "@opentelemetry/redis-common": ^0.36.2 "@opentelemetry/semantic-conventions": ^1.27.0 peerDependencies: "@opentelemetry/api": ^1.3.0 - checksum: fb7ab000a16cbb3f602e57aa96b52f2f06992f2cebe0f7b1fae7b293fba542f11ed83f2602f2916bc0d5b1a51790a99ad749abcc281d59e3859038188428b4fd + checksum: eb0dbedcccaca2a98cdefe741f14613a2de89c53dfd4393bbbfd97b341a2754c7c88d868429754bb9bf3dbcf17c2610d0070898bfe14b4dd9e5830d0f0c2e5f7 languageName: node linkType: hard -"@opentelemetry/instrumentation-redis@npm:^0.42.0": +"@opentelemetry/instrumentation-redis@npm:^0.43.0": + version: 0.43.0 + resolution: "@opentelemetry/instrumentation-redis@npm:0.43.0" + dependencies: + "@opentelemetry/instrumentation": ^0.54.0 + "@opentelemetry/redis-common": ^0.36.2 + "@opentelemetry/semantic-conventions": ^1.27.0 + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: ce0032edec122cd4feb0cfa5c365098c66858dc462dbb3cf95f36a24321460a1eddbe93552249bc9f43ce1b0692f88e971a2a432c26843d40776340debae48db + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-restify@npm:^0.42.0": version: 0.42.0 - resolution: "@opentelemetry/instrumentation-redis@npm:0.42.0" - dependencies: - "@opentelemetry/instrumentation": ^0.53.0 - "@opentelemetry/redis-common": ^0.36.2 - "@opentelemetry/semantic-conventions": ^1.27.0 - peerDependencies: - "@opentelemetry/api": ^1.3.0 - checksum: 1a84b516599a290de78eaf1a1db897bf2e866baaf4a77a76880b24261786f6ffa2673fcec36f360abf73d5e52104557ff957964b7b3683962b0bde2bbfbb074e - languageName: node - linkType: hard - -"@opentelemetry/instrumentation-restify@npm:^0.41.0": - version: 0.41.0 - resolution: "@opentelemetry/instrumentation-restify@npm:0.41.0" + resolution: "@opentelemetry/instrumentation-restify@npm:0.42.0" dependencies: "@opentelemetry/core": ^1.8.0 - "@opentelemetry/instrumentation": ^0.53.0 + "@opentelemetry/instrumentation": ^0.54.0 "@opentelemetry/semantic-conventions": ^1.27.0 peerDependencies: "@opentelemetry/api": ^1.3.0 - checksum: 28aac1e5bf2cdca2fa18c8423db3edb530bc338bb05a30537c24575bac12f4588d975598b020f58817393cf68354b913ca07e3720b3ff8497278887baee7b10b + checksum: 19ae0540538b1150b802c03ea4e4cf65c66230518b4396d75e4abf570350ca69b591eb45bc30a3282df4a157057ac5eb85614715d49c7b225f3ae90b6c43e740 languageName: node linkType: hard -"@opentelemetry/instrumentation-router@npm:^0.40.0": - version: 0.40.0 - resolution: "@opentelemetry/instrumentation-router@npm:0.40.0" +"@opentelemetry/instrumentation-router@npm:^0.41.0": + version: 0.41.0 + resolution: "@opentelemetry/instrumentation-router@npm:0.41.0" dependencies: - "@opentelemetry/instrumentation": ^0.53.0 + "@opentelemetry/instrumentation": ^0.54.0 "@opentelemetry/semantic-conventions": ^1.27.0 peerDependencies: "@opentelemetry/api": ^1.3.0 - checksum: 7f8fb67d755cb8fa94dbe44f698d22e1ce80971071f574aa9a8b177410cf6a8ab37abd449777670705b73aa6a4272212e80d6dc3c6ec0aa7f99ce161238c7f33 + checksum: 2291f8f7ab314e0e12d5dcc1ec6efcade2ce662a5e9214390a89689513b6742a4be71227c7076ff49061049a622ba924cb0905198bdd3343a7bb1c02ed3c1a46 languageName: node linkType: hard -"@opentelemetry/instrumentation-socket.io@npm:^0.42.0": - version: 0.42.0 - resolution: "@opentelemetry/instrumentation-socket.io@npm:0.42.0" +"@opentelemetry/instrumentation-socket.io@npm:^0.43.0": + version: 0.43.0 + resolution: "@opentelemetry/instrumentation-socket.io@npm:0.43.0" dependencies: - "@opentelemetry/instrumentation": ^0.53.0 + "@opentelemetry/instrumentation": ^0.54.0 "@opentelemetry/semantic-conventions": ^1.27.0 peerDependencies: "@opentelemetry/api": ^1.3.0 - checksum: 21f92a17b26627ac03bf19f8c5eea550bac915366919a7b7f73893f0bdd8669421e02ec0379387439a46b1e1ad05dfe8dc9a6f6784b9dc8919f8c7dc05694dd8 + checksum: 1805d39201cb2f00e9765017c4e037faf1fa54d6f6cef2dcbbb5f07e90dc94d694736bbddb8c41b3bc8db0411b7e43b2d1d008342aaaa27302620617622b0ff5 languageName: node linkType: hard -"@opentelemetry/instrumentation-tedious@npm:^0.14.0": - version: 0.14.0 - resolution: "@opentelemetry/instrumentation-tedious@npm:0.14.0" +"@opentelemetry/instrumentation-tedious@npm:^0.15.0": + version: 0.15.0 + resolution: "@opentelemetry/instrumentation-tedious@npm:0.15.0" dependencies: - "@opentelemetry/instrumentation": ^0.53.0 + "@opentelemetry/instrumentation": ^0.54.0 "@opentelemetry/semantic-conventions": ^1.27.0 "@types/tedious": ^4.0.14 peerDependencies: "@opentelemetry/api": ^1.3.0 - checksum: 31d6f0d10c3c1f03c9bf3207d7b5569f23ff202f954cb5b91242d788813b5807e5fc204748d14c3b12d320fa5dc1205d4b54131847496117af54e205f025a23e + checksum: 75ece9a359c81cdf31eb3e16be570418775817ff2b7b315e49fcc5d2365f635e0fb2af734de029f4d2faa720c3d977325d5e636d69008fb64b53afb6544bb67f languageName: node linkType: hard -"@opentelemetry/instrumentation-undici@npm:^0.6.0": - version: 0.6.0 - resolution: "@opentelemetry/instrumentation-undici@npm:0.6.0" +"@opentelemetry/instrumentation-undici@npm:^0.7.0": + version: 0.7.0 + resolution: "@opentelemetry/instrumentation-undici@npm:0.7.0" dependencies: "@opentelemetry/core": ^1.8.0 - "@opentelemetry/instrumentation": ^0.53.0 + "@opentelemetry/instrumentation": ^0.54.0 peerDependencies: "@opentelemetry/api": ^1.7.0 - checksum: b16b9ff23fbca13a18889fc302ddae3db8b22ebd9d8224b0297bd45014bb914d6bea89e55aedda6879cee1760c93bcedc2eaa12e60e88f45dd8c9e5f61a0aefd + checksum: 2776c1d8d408c3ecf54353d096c00bcdcf5c8a939ac08c66106950a505ab953e0c65280e17b2b53d06014738963a7375955bd6a175cb0eddf4cd9bbef574e146 languageName: node linkType: hard -"@opentelemetry/instrumentation-winston@npm:^0.40.0": - version: 0.40.0 - resolution: "@opentelemetry/instrumentation-winston@npm:0.40.0" +"@opentelemetry/instrumentation-winston@npm:^0.41.0": + version: 0.41.0 + resolution: "@opentelemetry/instrumentation-winston@npm:0.41.0" dependencies: - "@opentelemetry/api-logs": ^0.53.0 - "@opentelemetry/instrumentation": ^0.53.0 + "@opentelemetry/api-logs": ^0.54.0 + "@opentelemetry/instrumentation": ^0.54.0 peerDependencies: "@opentelemetry/api": ^1.3.0 - checksum: be7c3f6f8a5672db940b8196e9254a4188c9c6bb717a272088fe5e8319874a80a28a56b1073ad130bb2233a29d4459a754b4ea2f36855f90a679a9c379f5cf16 + checksum: 10d2769925ae9a9982c8da9bb81c6e121f9c1c3437ac99216eb8c68fddea8a3527b5f9acfb09275646e3bc05183bf5bd2b719576756fa40ea3b98a6950a7533f languageName: node linkType: hard -"@opentelemetry/instrumentation@npm:0.53.0, @opentelemetry/instrumentation@npm:^0.53.0": +"@opentelemetry/instrumentation@npm:0.53.0": version: 0.53.0 resolution: "@opentelemetry/instrumentation@npm:0.53.0" dependencies: @@ -13978,6 +14112,22 @@ __metadata: languageName: node linkType: hard +"@opentelemetry/instrumentation@npm:0.54.1, @opentelemetry/instrumentation@npm:^0.54.0": + version: 0.54.1 + resolution: "@opentelemetry/instrumentation@npm:0.54.1" + dependencies: + "@opentelemetry/api-logs": 0.54.1 + "@types/shimmer": ^1.2.0 + import-in-the-middle: ^1.8.1 + require-in-the-middle: ^7.1.1 + semver: ^7.5.2 + shimmer: ^1.2.1 + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 3109540b953aa8d06c8e57882c9af240be475a28d7a3245de8d93667997e70c2a528b72f75af8faaa82436690068aa8a6caaa65ca0aa329429d0b3c9ae6e703e + languageName: node + linkType: hard + "@opentelemetry/otlp-exporter-base@npm:0.53.0": version: 0.53.0 resolution: "@opentelemetry/otlp-exporter-base@npm:0.53.0" @@ -13990,6 +14140,18 @@ __metadata: languageName: node linkType: hard +"@opentelemetry/otlp-exporter-base@npm:0.54.1": + version: 0.54.1 + resolution: "@opentelemetry/otlp-exporter-base@npm:0.54.1" + dependencies: + "@opentelemetry/core": 1.27.0 + "@opentelemetry/otlp-transformer": 0.54.1 + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 160cdc38c890df7ec12da26afd7c9ea9d1c58942b47e33deeee1a29bdfd14e6f62ced1422d67c28de507a0d602e788d96425b907f07fb92da43bcb07885cd44a + languageName: node + linkType: hard + "@opentelemetry/otlp-grpc-exporter-base@npm:0.53.0": version: 0.53.0 resolution: "@opentelemetry/otlp-grpc-exporter-base@npm:0.53.0" @@ -14004,6 +14166,20 @@ __metadata: languageName: node linkType: hard +"@opentelemetry/otlp-grpc-exporter-base@npm:0.54.1": + version: 0.54.1 + resolution: "@opentelemetry/otlp-grpc-exporter-base@npm:0.54.1" + dependencies: + "@grpc/grpc-js": ^1.7.1 + "@opentelemetry/core": 1.27.0 + "@opentelemetry/otlp-exporter-base": 0.54.1 + "@opentelemetry/otlp-transformer": 0.54.1 + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 07bc163dd6432bafe5a185fdc5a26ee0412326fd2690581717fb044ea23628208f8e955f9c259094168a7f6e3799b5e26e1a744e1ac0c7d6bc82cf70d315be29 + languageName: node + linkType: hard + "@opentelemetry/otlp-transformer@npm:0.53.0": version: 0.53.0 resolution: "@opentelemetry/otlp-transformer@npm:0.53.0" @@ -14021,12 +14197,29 @@ __metadata: languageName: node linkType: hard -"@opentelemetry/propagation-utils@npm:^0.30.11": - version: 0.30.11 - resolution: "@opentelemetry/propagation-utils@npm:0.30.11" +"@opentelemetry/otlp-transformer@npm:0.54.1": + version: 0.54.1 + resolution: "@opentelemetry/otlp-transformer@npm:0.54.1" + dependencies: + "@opentelemetry/api-logs": 0.54.1 + "@opentelemetry/core": 1.27.0 + "@opentelemetry/resources": 1.27.0 + "@opentelemetry/sdk-logs": 0.54.1 + "@opentelemetry/sdk-metrics": 1.27.0 + "@opentelemetry/sdk-trace-base": 1.27.0 + protobufjs: ^7.3.0 + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 2bc0fe53c37e1b83e5ccd067bbe69c3a3aefe22bea2afef7727838f10995e2443433853966014b10eadb6059bdd5561b8615a27d41c43f41e47cdbe10f4f56bf + languageName: node + linkType: hard + +"@opentelemetry/propagation-utils@npm:^0.30.12": + version: 0.30.12 + resolution: "@opentelemetry/propagation-utils@npm:0.30.12" peerDependencies: "@opentelemetry/api": ^1.0.0 - checksum: 4cce9958ca40b042adda8601b651799f1a140a513dd8c085094cb88265470bf40a04ed5f84301d891fef90f59698802e20828311b6189e4ab6c741101d8ac248 + checksum: 1bf6b1a9d00ab0950768f4acb2ccf888592aecfcffde1554b55ffd28c50025920de2725c20f07307b8f4c189c95c413f74b84edb088df3e1d8ce182e83b5cf36 languageName: node linkType: hard @@ -14052,6 +14245,17 @@ __metadata: languageName: node linkType: hard +"@opentelemetry/propagator-b3@npm:1.27.0": + version: 1.27.0 + resolution: "@opentelemetry/propagator-b3@npm:1.27.0" + dependencies: + "@opentelemetry/core": 1.27.0 + peerDependencies: + "@opentelemetry/api": ">=1.0.0 <1.10.0" + checksum: 4bfe531e1fb5606d25d09e7b3c84188938e76618f8a0a098d57ebacf9f7bafaab24ba6e6e26cbb4c3da3ea8ecd31e2c68e86735ef48f45cdfc2e698c0b098249 + languageName: node + linkType: hard + "@opentelemetry/propagator-jaeger@npm:1.26.0": version: 1.26.0 resolution: "@opentelemetry/propagator-jaeger@npm:1.26.0" @@ -14063,6 +14267,17 @@ __metadata: languageName: node linkType: hard +"@opentelemetry/propagator-jaeger@npm:1.27.0": + version: 1.27.0 + resolution: "@opentelemetry/propagator-jaeger@npm:1.27.0" + dependencies: + "@opentelemetry/core": 1.27.0 + peerDependencies: + "@opentelemetry/api": ">=1.0.0 <1.10.0" + checksum: 87ab8a15b57230e40b9f59e63a01a31d38bfef77cafb91543a1549c179a9d01fef73ce5cf58ad7c6ed0093ab3b4a64ea9ba00e9d257d4084447267fe39f9163d + languageName: node + linkType: hard + "@opentelemetry/redis-common@npm:^0.36.2": version: 0.36.2 resolution: "@opentelemetry/redis-common@npm:0.36.2" @@ -14070,61 +14285,61 @@ __metadata: languageName: node linkType: hard -"@opentelemetry/resource-detector-alibaba-cloud@npm:^0.29.3": - version: 0.29.3 - resolution: "@opentelemetry/resource-detector-alibaba-cloud@npm:0.29.3" +"@opentelemetry/resource-detector-alibaba-cloud@npm:^0.29.4": + version: 0.29.4 + resolution: "@opentelemetry/resource-detector-alibaba-cloud@npm:0.29.4" dependencies: "@opentelemetry/core": ^1.26.0 "@opentelemetry/resources": ^1.10.0 "@opentelemetry/semantic-conventions": ^1.27.0 peerDependencies: "@opentelemetry/api": ^1.0.0 - checksum: e3cb36aa8b4ce7b6fc60fe15f51139493728f4c8e7af11f70cb567b5667680c16147bc382aa1a330b8bca26b392e7dddd5f66b6c393ca50aa315329baa0bea14 + checksum: 78d4100e8dfb814a6ea35c2b9ef12fd93d402ffab93d7a592f3c2d486392e281cd751c2312482e75440eab3a6cd235866c5b14993bf6f6a12a9f3ade91ed3539 languageName: node linkType: hard -"@opentelemetry/resource-detector-aws@npm:^1.6.2": - version: 1.6.2 - resolution: "@opentelemetry/resource-detector-aws@npm:1.6.2" +"@opentelemetry/resource-detector-aws@npm:^1.7.0": + version: 1.7.0 + resolution: "@opentelemetry/resource-detector-aws@npm:1.7.0" dependencies: "@opentelemetry/core": ^1.0.0 "@opentelemetry/resources": ^1.10.0 "@opentelemetry/semantic-conventions": ^1.27.0 peerDependencies: "@opentelemetry/api": ^1.0.0 - checksum: 82047c95f4ac1cf9eb6688ac924562cdf5e31bc9ebf4d1f2205e652de92350e6f85b111a220a1156d77fcafdbf513aaabb69919da19c8ce83fc3e6a3dd0dde8e + checksum: cbe754b5ea525064478e572a73d05979f6bc8d9bf5b063d3ea104545f0e50e04fbc0ae1376bb2543262d20ef2aad9388b1ff0e485d96ac1446efbc542ab8d818 languageName: node linkType: hard -"@opentelemetry/resource-detector-azure@npm:^0.2.11": - version: 0.2.11 - resolution: "@opentelemetry/resource-detector-azure@npm:0.2.11" +"@opentelemetry/resource-detector-azure@npm:^0.2.12": + version: 0.2.12 + resolution: "@opentelemetry/resource-detector-azure@npm:0.2.12" dependencies: "@opentelemetry/core": ^1.25.1 "@opentelemetry/resources": ^1.10.1 "@opentelemetry/semantic-conventions": ^1.27.0 peerDependencies: "@opentelemetry/api": ^1.0.0 - checksum: 13515be1d57f9a9611064224e55766a7a66176d85bcbc62e7313e261c0a40e8c02e6ec024ed51f1e20ce16f3e969a601a756d2130f01b24a1e088743886903b3 + checksum: b0a170ac928248021ea6b63bea1f25d670bb3c2a0260eae115097d84461732ff602a65f56ef84651ae1e70be3e9729ae5068c3038732a009ec2e3a2d1eccce40 languageName: node linkType: hard -"@opentelemetry/resource-detector-container@npm:^0.4.4": - version: 0.4.4 - resolution: "@opentelemetry/resource-detector-container@npm:0.4.4" +"@opentelemetry/resource-detector-container@npm:^0.5.0": + version: 0.5.0 + resolution: "@opentelemetry/resource-detector-container@npm:0.5.0" dependencies: "@opentelemetry/core": ^1.26.0 "@opentelemetry/resources": ^1.10.0 "@opentelemetry/semantic-conventions": ^1.27.0 peerDependencies: "@opentelemetry/api": ^1.0.0 - checksum: c99a859718fa496062a4392edba478bae38f24a78450f38df31cb13014ef159e6bb48cb41fba4eef717229f85bc79dc8f4031e9f263efa8eff3c583b5efa8069 + checksum: 912762621d55ddffe69b6ba3f5c470cbb9bf3a465303d9f3ab542d9fd2dbe660927cb173783397b47f11588f60c66ec06ff1572d7bcf72ff6da10bc4f1fdd4d0 languageName: node linkType: hard -"@opentelemetry/resource-detector-gcp@npm:^0.29.12": - version: 0.29.12 - resolution: "@opentelemetry/resource-detector-gcp@npm:0.29.12" +"@opentelemetry/resource-detector-gcp@npm:^0.29.13": + version: 0.29.13 + resolution: "@opentelemetry/resource-detector-gcp@npm:0.29.13" dependencies: "@opentelemetry/core": ^1.0.0 "@opentelemetry/resources": ^1.10.0 @@ -14132,11 +14347,11 @@ __metadata: gcp-metadata: ^6.0.0 peerDependencies: "@opentelemetry/api": ^1.0.0 - checksum: 5460a3c3cf9484dc38aff5625f7f905c08b380468b1ae3e0677c3b5a9319ba2297fd00a517361c28dcd8812a73e680fe5bf123bbcfdd240bc7d786b681998d3d + checksum: 64d6995f3775a599985e5787276d81f1aeefa3352017965a797c3b33196f155eb3886633d1b22974aa1cae7425eff9229b4b8c0eb9ed7a454e50e1f94f1fed31 languageName: node linkType: hard -"@opentelemetry/resources@npm:1.26.0, @opentelemetry/resources@npm:^1.10.0, @opentelemetry/resources@npm:^1.10.1, @opentelemetry/resources@npm:^1.24.0, @opentelemetry/resources@npm:^1.8.0": +"@opentelemetry/resources@npm:1.26.0": version: 1.26.0 resolution: "@opentelemetry/resources@npm:1.26.0" dependencies: @@ -14148,6 +14363,18 @@ __metadata: languageName: node linkType: hard +"@opentelemetry/resources@npm:1.27.0, @opentelemetry/resources@npm:^1.10.0, @opentelemetry/resources@npm:^1.10.1, @opentelemetry/resources@npm:^1.24.0": + version: 1.27.0 + resolution: "@opentelemetry/resources@npm:1.27.0" + dependencies: + "@opentelemetry/core": 1.27.0 + "@opentelemetry/semantic-conventions": 1.27.0 + peerDependencies: + "@opentelemetry/api": ">=1.0.0 <1.10.0" + checksum: 43d298afea7daf7524e6b98c1441bcce9fa73b76aecf17e36cabb1a4cfaae6818acf9759d3e42706b1fd91243644076d2291e78c3ed81641d3b351fcff6cb9a9 + languageName: node + linkType: hard + "@opentelemetry/sdk-logs@npm:0.53.0": version: 0.53.0 resolution: "@opentelemetry/sdk-logs@npm:0.53.0" @@ -14161,7 +14388,20 @@ __metadata: languageName: node linkType: hard -"@opentelemetry/sdk-metrics@npm:1.26.0, @opentelemetry/sdk-metrics@npm:^1.9.1": +"@opentelemetry/sdk-logs@npm:0.54.1": + version: 0.54.1 + resolution: "@opentelemetry/sdk-logs@npm:0.54.1" + dependencies: + "@opentelemetry/api-logs": 0.54.1 + "@opentelemetry/core": 1.27.0 + "@opentelemetry/resources": 1.27.0 + peerDependencies: + "@opentelemetry/api": ">=1.4.0 <1.10.0" + checksum: 6e4bdda18544d357fe6bfcf4be0277d81efbd1a9af7f8bafca163883776c92cce3cae8a7071915c4c594e40cc0c3371f496a2012133a7c8934ca81797ea83b70 + languageName: node + linkType: hard + +"@opentelemetry/sdk-metrics@npm:1.26.0": version: 1.26.0 resolution: "@opentelemetry/sdk-metrics@npm:1.26.0" dependencies: @@ -14173,6 +14413,18 @@ __metadata: languageName: node linkType: hard +"@opentelemetry/sdk-metrics@npm:1.27.0": + version: 1.27.0 + resolution: "@opentelemetry/sdk-metrics@npm:1.27.0" + dependencies: + "@opentelemetry/core": 1.27.0 + "@opentelemetry/resources": 1.27.0 + peerDependencies: + "@opentelemetry/api": ">=1.3.0 <1.10.0" + checksum: c8776577063a3a5199d5717247270daf5820ce6636530b5ea4b5a8d6b40170cec9bb6b56dacb5c118d2e90588af83d0ebbb13f4d370c7efe50f69d22e5d13463 + languageName: node + linkType: hard + "@opentelemetry/sdk-node@npm:^0.53.0": version: 0.53.0 resolution: "@opentelemetry/sdk-node@npm:0.53.0" @@ -14199,6 +14451,32 @@ __metadata: languageName: node linkType: hard +"@opentelemetry/sdk-node@npm:^0.54.0": + version: 0.54.1 + resolution: "@opentelemetry/sdk-node@npm:0.54.1" + dependencies: + "@opentelemetry/api-logs": 0.54.1 + "@opentelemetry/core": 1.27.0 + "@opentelemetry/exporter-logs-otlp-grpc": 0.54.1 + "@opentelemetry/exporter-logs-otlp-http": 0.54.1 + "@opentelemetry/exporter-logs-otlp-proto": 0.54.1 + "@opentelemetry/exporter-trace-otlp-grpc": 0.54.1 + "@opentelemetry/exporter-trace-otlp-http": 0.54.1 + "@opentelemetry/exporter-trace-otlp-proto": 0.54.1 + "@opentelemetry/exporter-zipkin": 1.27.0 + "@opentelemetry/instrumentation": 0.54.1 + "@opentelemetry/resources": 1.27.0 + "@opentelemetry/sdk-logs": 0.54.1 + "@opentelemetry/sdk-metrics": 1.27.0 + "@opentelemetry/sdk-trace-base": 1.27.0 + "@opentelemetry/sdk-trace-node": 1.27.0 + "@opentelemetry/semantic-conventions": 1.27.0 + peerDependencies: + "@opentelemetry/api": ">=1.3.0 <1.10.0" + checksum: 70791dd10a062737dfae69fb7f5e337d036ea7b9858b144742a1162eec4b236c099da688df7b0bf4b6017a43dbb4cbe243f758b60b20ef15ab3ca36384b38eb3 + languageName: node + linkType: hard + "@opentelemetry/sdk-trace-base@npm:1.26.0": version: 1.26.0 resolution: "@opentelemetry/sdk-trace-base@npm:1.26.0" @@ -14212,6 +14490,19 @@ __metadata: languageName: node linkType: hard +"@opentelemetry/sdk-trace-base@npm:1.27.0": + version: 1.27.0 + resolution: "@opentelemetry/sdk-trace-base@npm:1.27.0" + dependencies: + "@opentelemetry/core": 1.27.0 + "@opentelemetry/resources": 1.27.0 + "@opentelemetry/semantic-conventions": 1.27.0 + peerDependencies: + "@opentelemetry/api": ">=1.0.0 <1.10.0" + checksum: d28c36724aeaf4884f7957e2ab138d9a0ca715a68b2ad23e2935ff0e39cd438c57fd0c8cc85fd5e280464857ede1ae8f9c8e40a37088a1e34d2e625e77276fee + languageName: node + linkType: hard + "@opentelemetry/sdk-trace-node@npm:1.26.0": version: 1.26.0 resolution: "@opentelemetry/sdk-trace-node@npm:1.26.0" @@ -14228,6 +14519,22 @@ __metadata: languageName: node linkType: hard +"@opentelemetry/sdk-trace-node@npm:1.27.0": + version: 1.27.0 + resolution: "@opentelemetry/sdk-trace-node@npm:1.27.0" + dependencies: + "@opentelemetry/context-async-hooks": 1.27.0 + "@opentelemetry/core": 1.27.0 + "@opentelemetry/propagator-b3": 1.27.0 + "@opentelemetry/propagator-jaeger": 1.27.0 + "@opentelemetry/sdk-trace-base": 1.27.0 + semver: ^7.5.2 + peerDependencies: + "@opentelemetry/api": ">=1.0.0 <1.10.0" + checksum: 2abbd609ebefc3c8ece87321281d3b31a59201e799e55cbde0ad0d87b7643e4e5ac47d83dcde2306d32780438b6eba49f57113bc56ed02e95b6fab1732780247 + languageName: node + linkType: hard + "@opentelemetry/semantic-conventions@npm:1.24.0": version: 1.24.0 resolution: "@opentelemetry/semantic-conventions@npm:1.24.0" @@ -27415,7 +27722,7 @@ __metadata: "@backstage/plugin-search-backend-node": "workspace:^" "@backstage/plugin-signals-backend": "workspace:^" "@backstage/plugin-techdocs-backend": "workspace:^" - "@opentelemetry/auto-instrumentations-node": ^0.51.0 + "@opentelemetry/auto-instrumentations-node": ^0.52.0 "@opentelemetry/exporter-prometheus": ^0.53.0 "@opentelemetry/sdk-node": ^0.53.0 example-app: "link:../app" @@ -28362,6 +28669,13 @@ __metadata: languageName: node linkType: hard +"forwarded-parse@npm:2.1.2": + version: 2.1.2 + resolution: "forwarded-parse@npm:2.1.2" + checksum: fca4df8898248d123d9d29a9fdf48005dd757366c2c17c1e195e8311a9aa89caf9f5e592f58f7d3d635087675ff39e85c32c6205838510f6f1fa4109de519930 + languageName: node + linkType: hard + "forwarded@npm:0.2.0": version: 0.2.0 resolution: "forwarded@npm:0.2.0" From be008c3365dd5c3f29db6c643d7f63036b85921d Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 6 Nov 2024 02:42:22 +0000 Subject: [PATCH 108/161] fix(deps): update dependency @module-federation/enhanced to ^0.7.0 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .changeset/renovate-7a33477.md | 5 + packages/cli/package.json | 2 +- yarn.lock | 168 ++++++++++++++++----------------- 3 files changed, 90 insertions(+), 85 deletions(-) create mode 100644 .changeset/renovate-7a33477.md diff --git a/.changeset/renovate-7a33477.md b/.changeset/renovate-7a33477.md new file mode 100644 index 0000000000..daf17a280f --- /dev/null +++ b/.changeset/renovate-7a33477.md @@ -0,0 +1,5 @@ +--- +'@backstage/cli': patch +--- + +Updated dependency `@module-federation/enhanced` to `^0.7.0`. diff --git a/packages/cli/package.json b/packages/cli/package.json index 7cd6b55f43..d886bdde0b 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -53,7 +53,7 @@ "@backstage/release-manifests": "workspace:^", "@backstage/types": "workspace:^", "@manypkg/get-packages": "^1.1.3", - "@module-federation/enhanced": "^0.6.0", + "@module-federation/enhanced": "^0.7.0", "@octokit/graphql": "^5.0.0", "@octokit/graphql-schema": "^13.7.0", "@octokit/oauth-app": "^4.2.0", diff --git a/yarn.lock b/yarn.lock index dd05d29077..578a06ad8f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3944,7 +3944,7 @@ __metadata: "@backstage/theme": "workspace:^" "@backstage/types": "workspace:^" "@manypkg/get-packages": ^1.1.3 - "@module-federation/enhanced": ^0.6.0 + "@module-federation/enhanced": ^0.7.0 "@octokit/graphql": ^5.0.0 "@octokit/graphql-schema": ^13.7.0 "@octokit/oauth-app": ^4.2.0 @@ -11605,39 +11605,39 @@ __metadata: languageName: node linkType: hard -"@module-federation/bridge-react-webpack-plugin@npm:0.6.16": - version: 0.6.16 - resolution: "@module-federation/bridge-react-webpack-plugin@npm:0.6.16" +"@module-federation/bridge-react-webpack-plugin@npm:0.7.0": + version: 0.7.0 + resolution: "@module-federation/bridge-react-webpack-plugin@npm:0.7.0" dependencies: - "@module-federation/sdk": 0.6.16 + "@module-federation/sdk": 0.7.0 "@types/semver": 7.5.8 semver: 7.6.3 - checksum: 9b49f8788bc741279e80cbc7b19980aa0d75e689c5ca08f1a19879d1f921f20e23e54ffc3fdc47010b90786130266d04395f46681d15ffe89f9d57e4e7575882 + checksum: d45c415b34169ba13bf9f94c8b84c3ca86059599a160d2a40a72e34f17e7f0413b0897fefb219feaf1e92631624c6f2c38b6c4e4174fba6ec8b44b143a5aafc1 languageName: node linkType: hard -"@module-federation/data-prefetch@npm:0.6.16": - version: 0.6.16 - resolution: "@module-federation/data-prefetch@npm:0.6.16" +"@module-federation/data-prefetch@npm:0.7.0": + version: 0.7.0 + resolution: "@module-federation/data-prefetch@npm:0.7.0" dependencies: - "@module-federation/runtime": 0.6.16 - "@module-federation/sdk": 0.6.16 + "@module-federation/runtime": 0.7.0 + "@module-federation/sdk": 0.7.0 fs-extra: 9.1.0 peerDependencies: react: ">=16.9.0" react-dom: ">=16.9.0" - checksum: cac7dc921abb1f3209e2afd7d4f21a21de525babcbd4afed69e61b2261cf7f18b6f1d9db4be005d1b60f968a03e222639e918253591c23f0be925fb84c952326 + checksum: 01d9b542c6d0b1844f074c85b54e6f8cf6b53c9961eb3cac906963613db8768b32b5259bf94354c87688a9955de1ce33bdfdcbb5dce23c0e32bfabdad8697bc5 languageName: node linkType: hard -"@module-federation/dts-plugin@npm:0.6.16": - version: 0.6.16 - resolution: "@module-federation/dts-plugin@npm:0.6.16" +"@module-federation/dts-plugin@npm:0.7.0": + version: 0.7.0 + resolution: "@module-federation/dts-plugin@npm:0.7.0" dependencies: - "@module-federation/error-codes": 0.6.14 - "@module-federation/managers": 0.6.16 - "@module-federation/sdk": 0.6.16 - "@module-federation/third-party-dts-extractor": 0.6.16 + "@module-federation/error-codes": 0.7.0 + "@module-federation/managers": 0.7.0 + "@module-federation/sdk": 0.7.0 + "@module-federation/third-party-dts-extractor": 0.7.0 adm-zip: ^0.5.10 ansi-colors: ^4.1.3 axios: ^1.7.4 @@ -11656,22 +11656,22 @@ __metadata: peerDependenciesMeta: vue-tsc: optional: true - checksum: 6d1eae570d0234f5adfb3971c8b4b09054fc6e7bff5e06241a5a7ca699c2b22b306d74d391ccaf01ed7ef71541f87c61829342d6a65bd5234f0fcbb36a21626d + checksum: 08821d8da4d578059b45c84366f805e57f1a2917f526f5d14b8909423c9764850ab07001b22bd4c58a2713d7e64159672872d8576b9a4629b539c62b54d3712f languageName: node linkType: hard -"@module-federation/enhanced@npm:^0.6.0": - version: 0.6.16 - resolution: "@module-federation/enhanced@npm:0.6.16" +"@module-federation/enhanced@npm:^0.7.0": + version: 0.7.0 + resolution: "@module-federation/enhanced@npm:0.7.0" dependencies: - "@module-federation/bridge-react-webpack-plugin": 0.6.16 - "@module-federation/data-prefetch": 0.6.16 - "@module-federation/dts-plugin": 0.6.16 - "@module-federation/managers": 0.6.16 - "@module-federation/manifest": 0.6.16 - "@module-federation/rspack": 0.6.16 - "@module-federation/runtime-tools": 0.6.16 - "@module-federation/sdk": 0.6.16 + "@module-federation/bridge-react-webpack-plugin": 0.7.0 + "@module-federation/data-prefetch": 0.7.0 + "@module-federation/dts-plugin": 0.7.0 + "@module-federation/managers": 0.7.0 + "@module-federation/manifest": 0.7.0 + "@module-federation/rspack": 0.7.0 + "@module-federation/runtime-tools": 0.7.0 + "@module-federation/sdk": 0.7.0 btoa: ^1.2.1 upath: 2.0.1 peerDependencies: @@ -11685,51 +11685,51 @@ __metadata: optional: true webpack: optional: true - checksum: bb1f6566ed176e414816bfc22352f14b5ac45b1fa1655d8d403bde13145d8d0f9c54767d14b9b4fb2210eb5f406f3dd93826bcac1e2303be6bbaccb7eb78ab23 + checksum: 320d30bfeeb717e0a451236febae2e0824dabb07dc783b55b57e19389288a3380e9a93683e9675e4a2f80f545fdceb02cb3b3357c9d4fcfa77ee88a3d1fe3929 languageName: node linkType: hard -"@module-federation/error-codes@npm:0.6.14": - version: 0.6.14 - resolution: "@module-federation/error-codes@npm:0.6.14" - checksum: d487eebb8990c0ea712dc61813f54c487c0e3549cf21239db28dfa18b5c97ae79bad5134db90aa67aee74f5af5c01d115c7aa66a66a81b098dd75f40e158fcc6 +"@module-federation/error-codes@npm:0.7.0": + version: 0.7.0 + resolution: "@module-federation/error-codes@npm:0.7.0" + checksum: fab4559406a3ac388c7871ec26d887e0910596de6eba741e164a6befb67cd06e1494ae9d6579cb34f64c085219f8985819d16b2c8fa1c290fb1108f49a4acc5e languageName: node linkType: hard -"@module-federation/managers@npm:0.6.16": - version: 0.6.16 - resolution: "@module-federation/managers@npm:0.6.16" +"@module-federation/managers@npm:0.7.0": + version: 0.7.0 + resolution: "@module-federation/managers@npm:0.7.0" dependencies: - "@module-federation/sdk": 0.6.16 + "@module-federation/sdk": 0.7.0 find-pkg: 2.0.0 fs-extra: 9.1.0 - checksum: 6b4e3a585aa2655134152752f2951ec1e913261510bfe714e19040da6d44a40800f7ca514d56f2ad04788d7501b886f3fcfb203900c6a25b7b8228a5459f6d33 + checksum: ae7b628fe244bf84e0a3122d937aa51edcbcbe1b8e19b05e84d6c41df835c36440542984116a0fc71df8dabd016804a10882b5e92cff7b08a22fbcc32412317f languageName: node linkType: hard -"@module-federation/manifest@npm:0.6.16": - version: 0.6.16 - resolution: "@module-federation/manifest@npm:0.6.16" +"@module-federation/manifest@npm:0.7.0": + version: 0.7.0 + resolution: "@module-federation/manifest@npm:0.7.0" dependencies: - "@module-federation/dts-plugin": 0.6.16 - "@module-federation/managers": 0.6.16 - "@module-federation/sdk": 0.6.16 + "@module-federation/dts-plugin": 0.7.0 + "@module-federation/managers": 0.7.0 + "@module-federation/sdk": 0.7.0 chalk: 3.0.0 find-pkg: 2.0.0 - checksum: fee3254347f927756fcf4d64ede32b93326f976292d7540ebb238fad5ea81c003f030a6020d042239f1f54568ed79e5eafa21e812f763d5961c6827b60be59f7 + checksum: 590f5bc05da5488ff7ab90f990fd36133998efbaf48447d84ef369a44323126b08d94034739170171abba27ff19b74a11423b4ccb69a991df75e43e169e2410c languageName: node linkType: hard -"@module-federation/rspack@npm:0.6.16": - version: 0.6.16 - resolution: "@module-federation/rspack@npm:0.6.16" +"@module-federation/rspack@npm:0.7.0": + version: 0.7.0 + resolution: "@module-federation/rspack@npm:0.7.0" dependencies: - "@module-federation/bridge-react-webpack-plugin": 0.6.16 - "@module-federation/dts-plugin": 0.6.16 - "@module-federation/managers": 0.6.16 - "@module-federation/manifest": 0.6.16 - "@module-federation/runtime-tools": 0.6.16 - "@module-federation/sdk": 0.6.16 + "@module-federation/bridge-react-webpack-plugin": 0.7.0 + "@module-federation/dts-plugin": 0.7.0 + "@module-federation/managers": 0.7.0 + "@module-federation/manifest": 0.7.0 + "@module-federation/runtime-tools": 0.7.0 + "@module-federation/sdk": 0.7.0 peerDependencies: typescript: ^4.9.0 || ^5.0.0 vue-tsc: ">=1.0.24" @@ -11738,7 +11738,7 @@ __metadata: optional: true vue-tsc: optional: true - checksum: afc98f64d3270e952ff0425ddd71b13b48644306679d3a4466d38a80c855682951a4b5c1b662fa63619ffad8400d6e7029b762aefd99e7169ee431f12c278e78 + checksum: 2ab7cc1926a675377875d344442400872f41d7d74d86e507c95921f2fa985c5310cb2d8e234cd054b6b1380961ecda412d56c1689b853f5f13447c95774c1fbe languageName: node linkType: hard @@ -11752,13 +11752,13 @@ __metadata: languageName: node linkType: hard -"@module-federation/runtime-tools@npm:0.6.16": - version: 0.6.16 - resolution: "@module-federation/runtime-tools@npm:0.6.16" +"@module-federation/runtime-tools@npm:0.7.0": + version: 0.7.0 + resolution: "@module-federation/runtime-tools@npm:0.7.0" dependencies: - "@module-federation/runtime": 0.6.16 - "@module-federation/webpack-bundler-runtime": 0.6.16 - checksum: 53aa76f2563e978e9f610e9276e6f3f6e73ecbf19f3cc349d0762955e748c43ec08a74f248cb697eb31d8109869f05f0f8dda1d6d082436ec246393d0011ac95 + "@module-federation/runtime": 0.7.0 + "@module-federation/webpack-bundler-runtime": 0.7.0 + checksum: 55830c13c552d77217d854888478e5314e6fbaab4c2066b0afcea23217c815898ea2242747c8856672f549f7614cbab7bd099dc34c1a1fe2153cd452e7d45f47 languageName: node linkType: hard @@ -11771,13 +11771,13 @@ __metadata: languageName: node linkType: hard -"@module-federation/runtime@npm:0.6.16": - version: 0.6.16 - resolution: "@module-federation/runtime@npm:0.6.16" +"@module-federation/runtime@npm:0.7.0": + version: 0.7.0 + resolution: "@module-federation/runtime@npm:0.7.0" dependencies: - "@module-federation/error-codes": 0.6.14 - "@module-federation/sdk": 0.6.16 - checksum: d247b4b8ce38f84692da6a3711cdd6d35c4de7885a4639720d4df2436900d66ba2a1b815f64064b95e6aee9fb7082e4d1c6fe1e8ccecd8ddcfaef38379153bbd + "@module-federation/error-codes": 0.7.0 + "@module-federation/sdk": 0.7.0 + checksum: d7d5ecd0a7accffe8002f3a1af45484d75093dafc4e41f5178423f06adac106e609a0dcf1bc7526ea9cf8609563348e511f39d13f63280ba6bcea9dd3df976fc languageName: node linkType: hard @@ -11788,23 +11788,23 @@ __metadata: languageName: node linkType: hard -"@module-federation/sdk@npm:0.6.16": - version: 0.6.16 - resolution: "@module-federation/sdk@npm:0.6.16" +"@module-federation/sdk@npm:0.7.0": + version: 0.7.0 + resolution: "@module-federation/sdk@npm:0.7.0" dependencies: isomorphic-rslog: 0.0.5 - checksum: 4495af06a83cbf69da6f6c20b0e8b934382b7b5e9a1b56a3385756476e97750beeb0f4b2671dbc64a3c2ab4a5fdb1f99aafd7562f47a4894352fff75d9499ce8 + checksum: bbfabed2b0864f8d78232dbe659e0efd0dc32d2f6f55e1c2454439d16db6b242a42e5a13d0a210638f63610054cb2fd2f5efeafc50488451838d01b7697a3d2d languageName: node linkType: hard -"@module-federation/third-party-dts-extractor@npm:0.6.16": - version: 0.6.16 - resolution: "@module-federation/third-party-dts-extractor@npm:0.6.16" +"@module-federation/third-party-dts-extractor@npm:0.7.0": + version: 0.7.0 + resolution: "@module-federation/third-party-dts-extractor@npm:0.7.0" dependencies: find-pkg: 2.0.0 fs-extra: 9.1.0 resolve: 1.22.8 - checksum: 2f2317d3703a084a2ff11152a376276a9462954da624a6d69ab265868fb2fedeaeeb1486721f9fff0f3c15d81e3336bf71f90fabe8d4ed4cde4c4d0b5a8ff8be + checksum: 9d178d919e4eebc1bead56a84365a9e43666e3770e6864b06ccce1ffc5fd25253b09c027eb667e9a2f6bfd1f66e5b5622974b75bd04e13cfc537f7f996920a43 languageName: node linkType: hard @@ -11818,13 +11818,13 @@ __metadata: languageName: node linkType: hard -"@module-federation/webpack-bundler-runtime@npm:0.6.16": - version: 0.6.16 - resolution: "@module-federation/webpack-bundler-runtime@npm:0.6.16" +"@module-federation/webpack-bundler-runtime@npm:0.7.0": + version: 0.7.0 + resolution: "@module-federation/webpack-bundler-runtime@npm:0.7.0" dependencies: - "@module-federation/runtime": 0.6.16 - "@module-federation/sdk": 0.6.16 - checksum: e78d5879eb1553c3dc96a93c7c962d9aa576b20f420fac8747fa1e3d61ab7e4ee51372924cedcd6483b829e2b4988a6f2daad4c6ddf2841c744ef69b9ba27680 + "@module-federation/runtime": 0.7.0 + "@module-federation/sdk": 0.7.0 + checksum: 701892fd70e208030813b49cf0cee014c74c1625ede804fb5596da04662f5c1ae5e3046f7ecd42dcaaba657a48baa38c775d8d64648016d666cfd69218188351 languageName: node linkType: hard From 7940b7bbee37074fa4d90ca5c6a77ff0e1923d25 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 6 Nov 2024 03:58:23 +0000 Subject: [PATCH 109/161] fix(deps): update dependency core-js to v3.39.0 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index dd05d29077..19b6579277 100644 --- a/yarn.lock +++ b/yarn.lock @@ -24295,9 +24295,9 @@ __metadata: linkType: hard "core-js@npm:^3.6.5": - version: 3.38.1 - resolution: "core-js@npm:3.38.1" - checksum: 55703c2f6fcd537e47a5cc83e9dc9884efef61861bbefb4a96a8c95e87956db980ce314628465dd49f14e626c5e633b9e3433f3e4a1f628404a14da420eb2556 + version: 3.39.0 + resolution: "core-js@npm:3.39.0" + checksum: 7a3670e9a2a89e0a049daa288d742d09f6e16d27a8945c5e2ef6fc45dc57e5c4bc5db589da05947486f54ae978d14cf27bd3fb1db0b9907000a611e8af37355b languageName: node linkType: hard From b1e046977a88a8d66c531e43578531b114e25b0c Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 6 Nov 2024 03:58:58 +0000 Subject: [PATCH 110/161] fix(deps): update dependency cronstrue to v2.51.0 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index dd05d29077..28e25a4def 100644 --- a/yarn.lock +++ b/yarn.lock @@ -24489,11 +24489,11 @@ __metadata: linkType: hard "cronstrue@npm:^2.2.0, cronstrue@npm:^2.32.0": - version: 2.50.0 - resolution: "cronstrue@npm:2.50.0" + version: 2.51.0 + resolution: "cronstrue@npm:2.51.0" bin: cronstrue: bin/cli.js - checksum: bf6e51c4b9ab28d7ba928a392a76b7d97bd3c3dc8da5618db8424480dc6213cafed658ea835925675767fe5497931d1325e51634eeb8e2556f0630a62eb29cc3 + checksum: 7487eeb7bdb9bc8882ede5d3f1cadf73dec44f1da8d29b8ebb0312f85413cd300842ce0c6c49beb66e549917d48f699dfd8b9585d00050c5571c3f8cbf091ac6 languageName: node linkType: hard From 13c075a006bdfb4360b1568d950b0b5044924c7a Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 6 Nov 2024 04:58:15 +0000 Subject: [PATCH 111/161] fix(deps): update dependency elastic-builder to v2.30.0 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index d784c2b613..beebc97266 100644 --- a/yarn.lock +++ b/yarn.lock @@ -26016,8 +26016,8 @@ __metadata: linkType: hard "elastic-builder@npm:^2.16.0": - version: 2.29.0 - resolution: "elastic-builder@npm:2.29.0" + version: 2.30.0 + resolution: "elastic-builder@npm:2.30.0" dependencies: lodash.has: ^4.5.2 lodash.hasin: ^4.5.2 @@ -26027,7 +26027,7 @@ __metadata: lodash.isobject: ^3.0.2 lodash.isstring: ^4.0.1 lodash.omit: ^4.5.0 - checksum: 9fe71c5e5f24d09f08d9bfd66afd8e0e3f212e8e54ca5906607a109ace293adaa2c820f626608532dff28fc211a2ee414faf29f397b87b86b6af33c57428de2e + checksum: 242d8873d49e8095ec14d5bf33bba55d6dc37c86d2ff91b159195cc97ce4f575287f29e276084035a88e907afa30fe76c53ec6272cb805055a36c0c521480ea4 languageName: node linkType: hard From 4d532ce8830517f2deb9eae0b3a80c4093fbb9ca Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 6 Nov 2024 04:58:55 +0000 Subject: [PATCH 112/161] fix(deps): update dependency eslint-plugin-jest to v28.9.0 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index d784c2b613..2025c22b7d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -26783,8 +26783,8 @@ __metadata: linkType: hard "eslint-plugin-jest@npm:^28.0.0": - version: 28.8.3 - resolution: "eslint-plugin-jest@npm:28.8.3" + version: 28.9.0 + resolution: "eslint-plugin-jest@npm:28.9.0" dependencies: "@typescript-eslint/utils": ^6.0.0 || ^7.0.0 || ^8.0.0 peerDependencies: @@ -26796,7 +26796,7 @@ __metadata: optional: true jest: optional: true - checksum: e371fcbe2127a403824b6c23b66f6b2e2cc54074c3c70a9965d48bdcdfb461670965a7d7cdddab68f09e703d3a09a281d05591b1cb4315f5246d27fd8baa84ac + checksum: 90863fab5f3f2f033d98042b13769dc82504c489506872ae9926a1d2b6bcc25c5dc41105e28643f5eb81943aff1aa1cd4d44ada5c1add0a43f1c7a619adbc3d2 languageName: node linkType: hard From 5162479690901504385f04a10927d125324a7d9c Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 6 Nov 2024 05:18:09 +0000 Subject: [PATCH 113/161] fix(deps): update dependency swagger-ui-react to v5.18.1 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 206 +++++++++++++++++++++++++++--------------------------- 1 file changed, 104 insertions(+), 102 deletions(-) diff --git a/yarn.lock b/yarn.lock index d784c2b613..bed00ecc60 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3334,13 +3334,13 @@ __metadata: languageName: node linkType: hard -"@babel/runtime-corejs3@npm:^7.20.7, @babel/runtime-corejs3@npm:^7.22.15, @babel/runtime-corejs3@npm:^7.24.5": - version: 7.24.7 - resolution: "@babel/runtime-corejs3@npm:7.24.7" +"@babel/runtime-corejs3@npm:^7.20.7, @babel/runtime-corejs3@npm:^7.22.15, @babel/runtime-corejs3@npm:^7.24.7": + version: 7.26.0 + resolution: "@babel/runtime-corejs3@npm:7.26.0" dependencies: core-js-pure: ^3.30.2 regenerator-runtime: ^0.14.0 - checksum: fb5cae960a2d4cbcb2144059dfa9dbe5530d027fa210a5bc37c67c3014226c32390f221320066124872f3d6c4830af17a19da09c10ab114da9b6fa8ab4377cea + checksum: c6c5adac03e33aa4b5bb636a677aa2a6e400b91d91aac5674448d20af4100b80a8bedfb742338e4236e22c092d3edeb27210efdf48bd13ec353bd899f097ff41 languageName: node linkType: hard @@ -8846,10 +8846,10 @@ __metadata: languageName: node linkType: hard -"@braintree/sanitize-url@npm:=7.0.2": - version: 7.0.2 - resolution: "@braintree/sanitize-url@npm:7.0.2" - checksum: d90baf41220e2c6a53005ab89d01abd2ab007ba341ee77af6f0cc7e30f0fd9c1e8b78b19f7e60ba8c0befe4ecb772dcedb464bd5d768236d7fd8c373d236c169 +"@braintree/sanitize-url@npm:=7.0.4": + version: 7.0.4 + resolution: "@braintree/sanitize-url@npm:7.0.4" + checksum: e613da3aa3e2139c3a5cf0121c7d6520c109d9b94540b3967ffff76714f3b2b0e99f4f3f7387f16cf1c189fc0041c6f010ca6e786c73d4ef3221cca0ede38f74 languageName: node linkType: hard @@ -15564,6 +15564,13 @@ __metadata: languageName: node linkType: hard +"@scarf/scarf@npm:=1.3.0": + version: 1.3.0 + resolution: "@scarf/scarf@npm:1.3.0" + checksum: 652c1248c8e1b5a4ba64333c1b2e9847e314d4cd78beb4bab51b3825bcd2b45dc20d185d3b99b11b18753a9e64113475067852ac898910ad73aa0559e24f0d6d + languageName: node + linkType: hard + "@segment/analytics-core@npm:1.4.1": version: 1.4.1 resolution: "@segment/analytics-core@npm:1.4.1" @@ -16894,57 +16901,57 @@ __metadata: languageName: node linkType: hard -"@swagger-api/apidom-ast@npm:^1.0.0-alpha.5": - version: 1.0.0-alpha.5 - resolution: "@swagger-api/apidom-ast@npm:1.0.0-alpha.5" +"@swagger-api/apidom-ast@npm:^1.0.0-alpha.10, @swagger-api/apidom-ast@npm:^1.0.0-alpha.5": + version: 1.0.0-alpha.10 + resolution: "@swagger-api/apidom-ast@npm:1.0.0-alpha.10" dependencies: "@babel/runtime-corejs3": ^7.20.7 - "@swagger-api/apidom-error": ^1.0.0-alpha.5 + "@swagger-api/apidom-error": ^1.0.0-alpha.10 "@types/ramda": ~0.30.0 ramda: ~0.30.0 ramda-adjunct: ^5.0.0 unraw: ^3.0.0 - checksum: c56354ed83a10f8f1770e93b7b284108440ec77dd7b79c63bccc6109ea8734a48b86c582676fb40e27995e231e821192eecf9893fea4c8c24568655e11f95ad6 + checksum: c66835eb81f02bf2ec3a0c98888090857c4d13372711e0c5fdab2d8bef322f024cf73a0243fa2958baa32cc138259167b17af75d3b7b87d54aae61c6fda6a5b9 languageName: node linkType: hard -"@swagger-api/apidom-core@npm:>=1.0.0-alpha.5 <1.0.0-beta.0, @swagger-api/apidom-core@npm:^1.0.0-alpha.5": - version: 1.0.0-alpha.5 - resolution: "@swagger-api/apidom-core@npm:1.0.0-alpha.5" +"@swagger-api/apidom-core@npm:>=1.0.0-alpha.9 <1.0.0-beta.0, @swagger-api/apidom-core@npm:^1.0.0-alpha.10, @swagger-api/apidom-core@npm:^1.0.0-alpha.5": + version: 1.0.0-alpha.10 + resolution: "@swagger-api/apidom-core@npm:1.0.0-alpha.10" dependencies: "@babel/runtime-corejs3": ^7.20.7 - "@swagger-api/apidom-ast": ^1.0.0-alpha.5 - "@swagger-api/apidom-error": ^1.0.0-alpha.5 + "@swagger-api/apidom-ast": ^1.0.0-alpha.10 + "@swagger-api/apidom-error": ^1.0.0-alpha.10 "@types/ramda": ~0.30.0 minim: ~0.23.8 ramda: ~0.30.0 ramda-adjunct: ^5.0.0 short-unique-id: ^5.0.2 ts-mixer: ^6.0.3 - checksum: 57e7fac92e6e0d636de2b964488491cfe6ebdafeed22b75a67e668477c0ab642364e2d1cd6ae7e9d4fc334b4f45b5e205ff9c0c9f09d20297ad200d2bc740c22 + checksum: aa21d777be2871564946df5d5c9a07716a58e7fa864af8cc06c4a5cf4dba664c8aa949df1f2ba0a940dcec6fcc9c95307c2f19e212b5dcce5066cec4b401a627 languageName: node linkType: hard -"@swagger-api/apidom-error@npm:>=1.0.0-alpha.5 <1.0.0-beta.0, @swagger-api/apidom-error@npm:^1.0.0-alpha.1, @swagger-api/apidom-error@npm:^1.0.0-alpha.5": - version: 1.0.0-alpha.5 - resolution: "@swagger-api/apidom-error@npm:1.0.0-alpha.5" +"@swagger-api/apidom-error@npm:>=1.0.0-alpha.9 <1.0.0-beta.0, @swagger-api/apidom-error@npm:^1.0.0-alpha.1, @swagger-api/apidom-error@npm:^1.0.0-alpha.10, @swagger-api/apidom-error@npm:^1.0.0-alpha.5": + version: 1.0.0-alpha.10 + resolution: "@swagger-api/apidom-error@npm:1.0.0-alpha.10" dependencies: "@babel/runtime-corejs3": ^7.20.7 - checksum: c1a710786c0553a37aa7fbec5d233a86978a77fa91879cd7186139d939096d4ee15e8eb02ea8886e201d7c2a0602a699c0cb5ec8ef8f04da30841d5018edb489 + checksum: 1a70b5186bc2dc7738ec91c6037676d358b5a134071758114b38f43286a431b83e0bea23f725b08633e66ce6a93d00bfb3221df69cbd197634851d99d6e5ab15 languageName: node linkType: hard -"@swagger-api/apidom-json-pointer@npm:>=1.0.0-alpha.5 <1.0.0-beta.0, @swagger-api/apidom-json-pointer@npm:^1.0.0-alpha.1, @swagger-api/apidom-json-pointer@npm:^1.0.0-alpha.5": - version: 1.0.0-alpha.5 - resolution: "@swagger-api/apidom-json-pointer@npm:1.0.0-alpha.5" +"@swagger-api/apidom-json-pointer@npm:>=1.0.0-alpha.9 <1.0.0-beta.0, @swagger-api/apidom-json-pointer@npm:^1.0.0-alpha.1, @swagger-api/apidom-json-pointer@npm:^1.0.0-alpha.10": + version: 1.0.0-alpha.10 + resolution: "@swagger-api/apidom-json-pointer@npm:1.0.0-alpha.10" dependencies: "@babel/runtime-corejs3": ^7.20.7 - "@swagger-api/apidom-core": ^1.0.0-alpha.5 - "@swagger-api/apidom-error": ^1.0.0-alpha.5 + "@swagger-api/apidom-core": ^1.0.0-alpha.10 + "@swagger-api/apidom-error": ^1.0.0-alpha.10 "@types/ramda": ~0.30.0 ramda: ~0.30.0 ramda-adjunct: ^5.0.0 - checksum: dc2a5215c9d7978a4b24f04fedcd9a95d0e043b6ef333e96aee0072071e4b2ed3ffcf1969bdfa07573916f968743f92124a315ab9cc75d26f0e8c9279b2ba9d9 + checksum: 92e8b40921a739e257d84f8b1b1df4eb9954f16a4523350d5bf50611c12ecf9d2a75401c30a3bb91af9351a93002e7339042ea095a04a59097a53a1107944833 languageName: node linkType: hard @@ -16979,18 +16986,18 @@ __metadata: languageName: node linkType: hard -"@swagger-api/apidom-ns-json-schema-draft-4@npm:^1.0.0-alpha.5": - version: 1.0.0-alpha.5 - resolution: "@swagger-api/apidom-ns-json-schema-draft-4@npm:1.0.0-alpha.5" +"@swagger-api/apidom-ns-json-schema-draft-4@npm:^1.0.0-alpha.10, @swagger-api/apidom-ns-json-schema-draft-4@npm:^1.0.0-alpha.5": + version: 1.0.0-alpha.10 + resolution: "@swagger-api/apidom-ns-json-schema-draft-4@npm:1.0.0-alpha.10" dependencies: "@babel/runtime-corejs3": ^7.20.7 - "@swagger-api/apidom-ast": ^1.0.0-alpha.5 - "@swagger-api/apidom-core": ^1.0.0-alpha.5 + "@swagger-api/apidom-ast": ^1.0.0-alpha.10 + "@swagger-api/apidom-core": ^1.0.0-alpha.10 "@types/ramda": ~0.30.0 ramda: ~0.30.0 ramda-adjunct: ^5.0.0 ts-mixer: ^6.0.4 - checksum: f9bd2dfc9f17ffbcdd97502a2bfb2ae4da93382b09a93d145a463f73bb73f0d45d8333aa3cea5b5ec7f3cbc41764b70ff9d90b60e1ed1ff5c009573734e7a2f6 + checksum: 162c3db6ded4ad458c4e8ec5e2c60fd5779096fd68929571396dabf6f1bf2d03c92d53ae45f62363360ea90448af90d224e32c67bc2288e86a60a0afba6f4c86 languageName: node linkType: hard @@ -17042,36 +17049,36 @@ __metadata: languageName: node linkType: hard -"@swagger-api/apidom-ns-openapi-3-0@npm:^1.0.0-alpha.1, @swagger-api/apidom-ns-openapi-3-0@npm:^1.0.0-alpha.5": - version: 1.0.0-alpha.5 - resolution: "@swagger-api/apidom-ns-openapi-3-0@npm:1.0.0-alpha.5" +"@swagger-api/apidom-ns-openapi-3-0@npm:^1.0.0-alpha.1, @swagger-api/apidom-ns-openapi-3-0@npm:^1.0.0-alpha.10, @swagger-api/apidom-ns-openapi-3-0@npm:^1.0.0-alpha.5": + version: 1.0.0-alpha.10 + resolution: "@swagger-api/apidom-ns-openapi-3-0@npm:1.0.0-alpha.10" dependencies: "@babel/runtime-corejs3": ^7.20.7 - "@swagger-api/apidom-core": ^1.0.0-alpha.5 - "@swagger-api/apidom-error": ^1.0.0-alpha.5 - "@swagger-api/apidom-ns-json-schema-draft-4": ^1.0.0-alpha.5 + "@swagger-api/apidom-core": ^1.0.0-alpha.10 + "@swagger-api/apidom-error": ^1.0.0-alpha.10 + "@swagger-api/apidom-ns-json-schema-draft-4": ^1.0.0-alpha.10 "@types/ramda": ~0.30.0 ramda: ~0.30.0 ramda-adjunct: ^5.0.0 ts-mixer: ^6.0.3 - checksum: adcb1aa410800d6205460ce421cf8d70f171886a8812a04062a0d6af28a434394e0a1f5d10a02a89677f59a2323c7843ee34cbf022b9979c1d3ca07685b87916 + checksum: cd4928005a9f2892c9af08d3900e6842c5980bc497ebe37c1276f479d5339ae5dcbfa64e43dc3ea8075291bae7c5d5e9a935a788ac41d90d08fc04356bdb4cb5 languageName: node linkType: hard -"@swagger-api/apidom-ns-openapi-3-1@npm:>=1.0.0-alpha.5 <1.0.0-beta.0, @swagger-api/apidom-ns-openapi-3-1@npm:^1.0.0-alpha.1, @swagger-api/apidom-ns-openapi-3-1@npm:^1.0.0-alpha.5": - version: 1.0.0-alpha.5 - resolution: "@swagger-api/apidom-ns-openapi-3-1@npm:1.0.0-alpha.5" +"@swagger-api/apidom-ns-openapi-3-1@npm:>=1.0.0-alpha.9 <1.0.0-beta.0, @swagger-api/apidom-ns-openapi-3-1@npm:^1.0.0-alpha.1, @swagger-api/apidom-ns-openapi-3-1@npm:^1.0.0-alpha.5": + version: 1.0.0-alpha.10 + resolution: "@swagger-api/apidom-ns-openapi-3-1@npm:1.0.0-alpha.10" dependencies: "@babel/runtime-corejs3": ^7.20.7 - "@swagger-api/apidom-ast": ^1.0.0-alpha.5 - "@swagger-api/apidom-core": ^1.0.0-alpha.5 - "@swagger-api/apidom-json-pointer": ^1.0.0-alpha.5 - "@swagger-api/apidom-ns-openapi-3-0": ^1.0.0-alpha.5 + "@swagger-api/apidom-ast": ^1.0.0-alpha.10 + "@swagger-api/apidom-core": ^1.0.0-alpha.10 + "@swagger-api/apidom-json-pointer": ^1.0.0-alpha.10 + "@swagger-api/apidom-ns-openapi-3-0": ^1.0.0-alpha.10 "@types/ramda": ~0.30.0 ramda: ~0.30.0 ramda-adjunct: ^5.0.0 ts-mixer: ^6.0.3 - checksum: 34dff7a4c8cd9fa78ec1efc927bfd1a5ca6f796e786359c7b0899d98ba4efaaa28b9c6f1a4abfcb708cd36a560fa12429c86c55aaa8594d94cb712bfc83cca74 + checksum: e7587720a2aff8b887897591fe77bbecbfa6e67d4f1d1f29f96c74ccc8ef5793d74f3f517c38d5d9cbbf6e5ee855c1a0e97edebe41a54ac47d590a63e43ef196 languageName: node linkType: hard @@ -17308,12 +17315,12 @@ __metadata: languageName: node linkType: hard -"@swagger-api/apidom-reference@npm:>=1.0.0-alpha.5 <1.0.0-beta.0": - version: 1.0.0-alpha.5 - resolution: "@swagger-api/apidom-reference@npm:1.0.0-alpha.5" +"@swagger-api/apidom-reference@npm:>=1.0.0-alpha.9 <1.0.0-beta.0": + version: 1.0.0-alpha.10 + resolution: "@swagger-api/apidom-reference@npm:1.0.0-alpha.10" dependencies: "@babel/runtime-corejs3": ^7.20.7 - "@swagger-api/apidom-core": ^1.0.0-alpha.5 + "@swagger-api/apidom-core": ^1.0.0-alpha.10 "@swagger-api/apidom-error": ^1.0.0-alpha.1 "@swagger-api/apidom-json-pointer": ^1.0.0-alpha.1 "@swagger-api/apidom-ns-asyncapi-2": ^1.0.0-alpha.1 @@ -17336,7 +17343,7 @@ __metadata: "@swagger-api/apidom-parser-adapter-workflows-yaml-1": ^1.0.0-alpha.1 "@swagger-api/apidom-parser-adapter-yaml-1-2": ^1.0.0-alpha.1 "@types/ramda": ~0.30.0 - axios: ^1.4.0 + axios: ^1.7.4 minimatch: ^7.4.3 process: ^0.11.10 ramda: ~0.30.0 @@ -17384,7 +17391,7 @@ __metadata: optional: true "@swagger-api/apidom-parser-adapter-yaml-1-2": optional: true - checksum: abf5636636197780bad9a5f4b3397a03152fdf55d47d61d1b694ffc119f105606e06ffb757519fc459a7d9e00c2862b2e0844f1f64c713f290c3b8ff3470faf4 + checksum: d30ea82a49489c011b7c741beef40bf6e9c4cc3e64a08c7bfbd80fde0572597b0be694cd7f40bde1abe2bd19c9ac5aa862692295347e65f2bfb93a8aae3fd66b languageName: node linkType: hard @@ -22036,7 +22043,7 @@ __metadata: languageName: node linkType: hard -"axios@npm:1.7.7, axios@npm:^1.0.0, axios@npm:^1.4.0, axios@npm:^1.6.0, axios@npm:^1.7.4, axios@npm:^1.7.7": +"axios@npm:1.7.7, axios@npm:^1.0.0, axios@npm:^1.6.0, axios@npm:^1.7.4, axios@npm:^1.7.7": version: 1.7.7 resolution: "axios@npm:1.7.7" dependencies: @@ -24217,7 +24224,7 @@ __metadata: languageName: node linkType: hard -"cookie@npm:0.7.2, cookie@npm:^0.7.0": +"cookie@npm:0.7.2, cookie@npm:^0.7.0, cookie@npm:~0.7.2": version: 0.7.2 resolution: "cookie@npm:0.7.2" checksum: 9bf8555e33530affd571ea37b615ccad9b9a34febbf2c950c86787088eb00a8973690833b0f8ebd6b69b753c62669ea60cec89178c1fb007bf0749abed74f93e @@ -24238,13 +24245,6 @@ __metadata: languageName: node linkType: hard -"cookie@npm:~0.6.0": - version: 0.6.0 - resolution: "cookie@npm:0.6.0" - checksum: f56a7d32a07db5458e79c726b77e3c2eff655c36792f2b6c58d351fb5f61531e5b1ab7f46987150136e366c65213cbe31729e02a3eaed630c3bf7334635fb410 - languageName: node - linkType: hard - "cookiejar@npm:^2.1.4": version: 2.1.4 resolution: "cookiejar@npm:2.1.4" @@ -25773,10 +25773,10 @@ __metadata: languageName: node linkType: hard -"dompurify@npm:=3.1.4": - version: 3.1.4 - resolution: "dompurify@npm:3.1.4" - checksum: 7b8d55d6e091c69cccfef73d066bd1bc82de32c81bc050b2c396b502afda0c853152760553aeb4d7ef86e7cf46bf49720fcb0c42a49ce939125cf40d7720ebb8 +"dompurify@npm:=3.1.6": + version: 3.1.6 + resolution: "dompurify@npm:3.1.6" + checksum: cc4fc4ccd9261fbceb2a1627a985c70af231274a26ddd3f643fd0616a0a44099bd9e4480940ce3655612063be4a1fe9f5e9309967526f8c0a99f931602323866 languageName: node linkType: hard @@ -35464,6 +35464,13 @@ __metadata: languageName: node linkType: hard +"neotraverse@npm:=0.6.18": + version: 0.6.18 + resolution: "neotraverse@npm:0.6.18" + checksum: 6ec0855db8d484a33672ba4533617bab4944167c881a6ab35a987bf3b92f12159eac5c19ad9cc203c193b279cc1a09f0bd7c7fb7752f9950625cbd866071ef72 + languageName: node + linkType: hard + "netmask@npm:^2.0.2": version: 2.0.2 resolution: "netmask@npm:2.0.2" @@ -38651,7 +38658,7 @@ __metadata: languageName: node linkType: hard -"qs@npm:6.13.0, qs@npm:^6.10.1, qs@npm:^6.10.2, qs@npm:^6.10.3, qs@npm:^6.11.0, qs@npm:^6.11.2, qs@npm:^6.12.2, qs@npm:^6.9.4": +"qs@npm:6.13.0, qs@npm:^6.10.1, qs@npm:^6.10.3, qs@npm:^6.11.0, qs@npm:^6.11.2, qs@npm:^6.12.2, qs@npm:^6.9.4": version: 6.13.0 resolution: "qs@npm:6.13.0" dependencies: @@ -38771,7 +38778,7 @@ __metadata: languageName: node linkType: hard -"ramda@npm:~0.30.0": +"ramda@npm:^0.30.1, ramda@npm:~0.30.0": version: 0.30.1 resolution: "ramda@npm:0.30.1" checksum: ce6f4b6b967a84a4e65c01ab1b1cdd73d46b8efe71aeccf5d1443c56c4e31a0ea82ece7df6510453dd3d83b92cabf8a6b4d50d189a1b35c08a6f44b281bebf79 @@ -40142,10 +40149,10 @@ __metadata: languageName: node linkType: hard -"reselect@npm:^5.1.0": - version: 5.1.0 - resolution: "reselect@npm:5.1.0" - checksum: 5bc9c5d03d7caea00d0c0e24330bf23d91801227346fec1cef6a60988ab8d3dd7cee76e6994ca0915bc1c20845bb2bd929b95753763e0a9db74c0f9dff5cb845 +"reselect@npm:^5.1.1": + version: 5.1.1 + resolution: "reselect@npm:5.1.1" + checksum: 5d32d48be29071ddda21a775945c2210cf4ca3fccde1c4a0e1582ac3bf99c431c6c2330ef7ca34eae4c06feea617e7cb2c275c4b33ccf9a930836dfc98b49b13 languageName: node linkType: hard @@ -42594,42 +42601,44 @@ __metadata: languageName: node linkType: hard -"swagger-client@npm:^3.28.1": - version: 3.28.2 - resolution: "swagger-client@npm:3.28.2" +"swagger-client@npm:^3.30.1": + version: 3.30.1 + resolution: "swagger-client@npm:3.30.1" dependencies: "@babel/runtime-corejs3": ^7.22.15 - "@swagger-api/apidom-core": ">=1.0.0-alpha.5 <1.0.0-beta.0" - "@swagger-api/apidom-error": ">=1.0.0-alpha.5 <1.0.0-beta.0" - "@swagger-api/apidom-json-pointer": ">=1.0.0-alpha.5 <1.0.0-beta.0" - "@swagger-api/apidom-ns-openapi-3-1": ">=1.0.0-alpha.5 <1.0.0-beta.0" - "@swagger-api/apidom-reference": ">=1.0.0-alpha.5 <1.0.0-beta.0" - cookie: ~0.6.0 + "@scarf/scarf": =1.3.0 + "@swagger-api/apidom-core": ">=1.0.0-alpha.9 <1.0.0-beta.0" + "@swagger-api/apidom-error": ">=1.0.0-alpha.9 <1.0.0-beta.0" + "@swagger-api/apidom-json-pointer": ">=1.0.0-alpha.9 <1.0.0-beta.0" + "@swagger-api/apidom-ns-openapi-3-1": ">=1.0.0-alpha.9 <1.0.0-beta.0" + "@swagger-api/apidom-reference": ">=1.0.0-alpha.9 <1.0.0-beta.0" + cookie: ~0.7.2 deepmerge: ~4.3.0 fast-json-patch: ^3.0.0-1 js-yaml: ^4.1.0 + neotraverse: =0.6.18 node-abort-controller: ^3.1.1 node-fetch-commonjs: ^3.3.2 openapi-path-templating: ^1.5.1 openapi-server-url-templating: ^1.0.0 - qs: ^6.10.2 + ramda: ^0.30.1 ramda-adjunct: ^5.0.0 - traverse: =0.6.8 - checksum: 46b970fce13976c2491d3f1a18cbaee9eedebe89bb6da9c4444a6c60de8f9436f375b4cfbd011093a3070f6719037852e8e4a1d3bf06aeb8b7192b805bfe20bf + checksum: b5c7b259855c1a7b9d7d8616bc667d489c05f602b4a6ab1570120fb5506f151e518c720d63601806f03baaa2c34495644ced4a29d5aac4f8a9231d0ca6dc98aa languageName: node linkType: hard "swagger-ui-react@npm:^5.0.0": - version: 5.17.14 - resolution: "swagger-ui-react@npm:5.17.14" + version: 5.18.1 + resolution: "swagger-ui-react@npm:5.18.1" dependencies: - "@babel/runtime-corejs3": ^7.24.5 - "@braintree/sanitize-url": =7.0.2 + "@babel/runtime-corejs3": ^7.24.7 + "@braintree/sanitize-url": =7.0.4 + "@scarf/scarf": =1.3.0 base64-js: ^1.5.1 classnames: ^2.5.1 css.escape: 1.5.1 deep-extend: 0.6.0 - dompurify: =3.1.4 + dompurify: =3.1.6 ieee754: ^1.2.1 immutable: ^3.x.x js-file-download: ^0.4.12 @@ -42648,10 +42657,10 @@ __metadata: redux: ^5.0.1 redux-immutable: ^4.0.0 remarkable: ^2.0.1 - reselect: ^5.1.0 + reselect: ^5.1.1 serialize-error: ^8.1.0 sha.js: ^2.4.11 - swagger-client: ^3.28.1 + swagger-client: ^3.30.1 url-parse: ^1.5.10 xml: =1.0.1 xml-but-prettier: ^1.0.1 @@ -42659,7 +42668,7 @@ __metadata: peerDependencies: react: ">=16.8.0 <19" react-dom: ">=16.8.0 <19" - checksum: 1283b23feb91b475ab036f219342374853b6113090c47c49df4576fa9f187a6df05825e7df059d862b8fcf3be51c25691a8da380084f4ca84bc6b5d0ee0ef744 + checksum: 3ce49a81c72b70e947c0e8b2977ac03e9b5e19d961ae7ca672b5281a36ce293a3ec1cdaf971328bdefb7392f316e06e4f5ba5283f44cc54df783eb713302781c languageName: node linkType: hard @@ -43320,13 +43329,6 @@ __metadata: languageName: node linkType: hard -"traverse@npm:=0.6.8": - version: 0.6.8 - resolution: "traverse@npm:0.6.8" - checksum: ef22abfc73fe2052403093b6747febbfeb52dcf827db1ca0542a78932c918706b9b12c373ef27e1c3e07e3e92eb1c646b4fe97b936fe775d59cbce7da417e13b - languageName: node - linkType: hard - "tree-kill@npm:^1.2.2": version: 1.2.2 resolution: "tree-kill@npm:1.2.2" From f5e464a34f9c55c617d31b942b1bf0f09118d6c9 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 6 Nov 2024 05:18:53 +0000 Subject: [PATCH 114/161] fix(deps): update dependency testcontainers to v10.14.0 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index d784c2b613..8c132c8f71 100644 --- a/yarn.lock +++ b/yarn.lock @@ -42952,8 +42952,8 @@ __metadata: linkType: hard "testcontainers@npm:^10.0.0": - version: 10.13.2 - resolution: "testcontainers@npm:10.13.2" + version: 10.14.0 + resolution: "testcontainers@npm:10.14.0" dependencies: "@balena/dockerignore": ^1.0.2 "@types/dockerode": ^3.3.29 @@ -42970,7 +42970,7 @@ __metadata: tar-fs: ^3.0.6 tmp: ^0.2.3 undici: ^5.28.4 - checksum: dd115745369981d159b9e74ce2461c2d7c9f3cfbe747e021c8268913b0b20beb5234cb160f22743cb40b38442dbcdfb5f985c63aa14d3b367493d0bfece6afe3 + checksum: 8d83bf259748b07aac2913a41875be15df7cbb2f8b2b6a2535e0de8705a9ca3838ae8112de79fb698cdb12d33ebdb9ff45de37abab69e0c3ccbfe95ba6f0c999 languageName: node linkType: hard From e740fc95fcc85f04c111b1384e4bb3dc5c71d445 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 6 Nov 2024 06:13:50 +0000 Subject: [PATCH 115/161] fix(deps): update dependency winston to v3.16.0 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 2293568acd..50bd66900f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -45365,8 +45365,8 @@ __metadata: linkType: hard "winston@npm:^3.13.0, winston@npm:^3.2.1": - version: 3.15.0 - resolution: "winston@npm:3.15.0" + version: 3.16.0 + resolution: "winston@npm:3.16.0" dependencies: "@colors/colors": ^1.6.0 "@dabh/diagnostics": ^2.0.2 @@ -45379,7 +45379,7 @@ __metadata: stack-trace: 0.0.x triple-beam: ^1.3.0 winston-transport: ^4.7.0 - checksum: 2ae6f3a3359fadd90f69a4db20d78aba6901e18114648e48c8538e925511e4820f8d488f19b1c026096ece614732338aa138f4a0fa2c5e29e8fbc53029f55473 + checksum: 2b01d51d8dc355c7eec67fe26f1f9642a5d4fb4ad3db38612229fa95c7c925fba7cbe3d87d362f36c433f9ad15032d455f96159a5bbe77166c4a8cf440127a6d languageName: node linkType: hard From fd4085dd1f35d250942e97ca5916882a9b6e4c03 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 6 Nov 2024 07:17:47 +0000 Subject: [PATCH 116/161] fix(deps): update dependency yauzl to v3.2.0 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 50bd66900f..f105792f93 100644 --- a/yarn.lock +++ b/yarn.lock @@ -45805,12 +45805,12 @@ __metadata: linkType: soft "yauzl@npm:^3.0.0": - version: 3.1.3 - resolution: "yauzl@npm:3.1.3" + version: 3.2.0 + resolution: "yauzl@npm:3.2.0" dependencies: buffer-crc32: ~0.2.3 pend: ~1.2.0 - checksum: 5b782f6e99361a9c715e7a82e7aae3d983b6ddff6ebe3a66d2dd3f4ee601ec41c55fa88587bf6de0acbc013aac0b2cac84f9f0cd48372fd5329ee5e273f46f2c + checksum: d16440447bbc4973cf60c455290d6a394c47b82d449193098b10c69a6cc8f3eb003e361a512d1885ca67c96c95351aadb46bfcc47ee2c73a5134743d99275554 languageName: node linkType: hard From ecf6b39eef4f793a9918070ea55644342833b498 Mon Sep 17 00:00:00 2001 From: Oliver Dirks Date: Wed, 6 Nov 2024 08:18:26 +0100 Subject: [PATCH 117/161] fix: use node-fetch instead of native fetch Signed-off-by: Oliver Dirks --- .changeset/six-beds-exercise.md | 5 +++++ .../src/entrypoints/auth/plugin/PluginTokenHandler.ts | 1 + 2 files changed, 6 insertions(+) create mode 100644 .changeset/six-beds-exercise.md diff --git a/.changeset/six-beds-exercise.md b/.changeset/six-beds-exercise.md new file mode 100644 index 0000000000..b2c01e8ac7 --- /dev/null +++ b/.changeset/six-beds-exercise.md @@ -0,0 +1,5 @@ +--- +'@backstage/backend-defaults': patch +--- + +Use `node-fetch` instead of native fetch, as per https://backstage.io/docs/architecture-decisions/adrs-adr013 diff --git a/packages/backend-defaults/src/entrypoints/auth/plugin/PluginTokenHandler.ts b/packages/backend-defaults/src/entrypoints/auth/plugin/PluginTokenHandler.ts index ff594ecbd4..4bea74e3af 100644 --- a/packages/backend-defaults/src/entrypoints/auth/plugin/PluginTokenHandler.ts +++ b/packages/backend-defaults/src/entrypoints/auth/plugin/PluginTokenHandler.ts @@ -22,6 +22,7 @@ import { tokenTypes } from '@backstage/plugin-auth-node'; import { JwksClient } from '../JwksClient'; import { HumanDuration, durationToMilliseconds } from '@backstage/types'; import { PluginKeySource } from './keys/types'; +import fetch from 'node-fetch'; const SECONDS_IN_MS = 1000; From df02fa8137f8b3bb4cbed2cc498e5f66c3b5e1f7 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 6 Nov 2024 08:35:33 +0000 Subject: [PATCH 118/161] chore(deps): update dependency knip to v5.36.3 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index f105792f93..3c05afde72 100644 --- a/yarn.lock +++ b/yarn.lock @@ -32830,8 +32830,8 @@ __metadata: linkType: hard "knip@npm:^5.0.0": - version: 5.36.2 - resolution: "knip@npm:5.36.2" + version: 5.36.3 + resolution: "knip@npm:5.36.3" dependencies: "@nodelib/fs.walk": 1.2.8 "@snyk/github-codeowners": 1.1.0 @@ -32855,7 +32855,7 @@ __metadata: bin: knip: bin/knip.js knip-bun: bin/knip-bun.js - checksum: add434c880a6346f6a660df4961a5e7e6be62aabbc148d8f401ff64423dabd96004ef9b21921682971ade0c7798faee967a9e4832bec647875fccf73674c9f8e + checksum: e9315dbe6ecea1c1e95215dc9e678cd9605a8015e68cec2c36566764892e0d2b8320b0277d2c911610221811af7d47e27c011b847ad3cb5cef82fef09bcd1608 languageName: node linkType: hard From 4bcccb16206c7036e261cef0717719ceb446f971 Mon Sep 17 00:00:00 2001 From: Mark Foresta Date: Sat, 14 Sep 2024 14:06:25 -0400 Subject: [PATCH 119/161] Basic changes to include templateMetadata Signed-off-by: Mark Foresta --- .../src/scaffolder/dryrun/createDryRunner.ts | 7 +++++-- plugins/scaffolder-backend/src/service/router.ts | 1 + 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/plugins/scaffolder-backend/src/scaffolder/dryrun/createDryRunner.ts b/plugins/scaffolder-backend/src/scaffolder/dryrun/createDryRunner.ts index c993e0d46d..a2cb19ce33 100644 --- a/plugins/scaffolder-backend/src/scaffolder/dryrun/createDryRunner.ts +++ b/plugins/scaffolder-backend/src/scaffolder/dryrun/createDryRunner.ts @@ -38,10 +38,11 @@ import { BackstageCredentials, resolveSafeChildPath, } from '@backstage/backend-plugin-api'; -import type { UserEntity } from '@backstage/catalog-model'; +import type { EntityMeta, UserEntity } from '@backstage/catalog-model'; interface DryRunInput { spec: TaskSpec; + templateMetadata: EntityMeta; secrets?: TaskSecrets; directoryContents: SerializedFile[]; credentials: BackstageCredentials; @@ -105,7 +106,6 @@ export function createDryRunner(options: TemplateTesterCreateOptions) { await deserializeDirectoryContents(contentsPath, input.directoryContents); const abortSignal = new AbortController().signal; - const result = await workflowRunner.execute({ spec: { ...input.spec, @@ -119,6 +119,9 @@ export function createDryRunner(options: TemplateTesterCreateOptions) { ], templateInfo: { entityRef: 'template:default/dry-run', + entity: { + metadata: input.templateMetadata, + }, baseUrl: pathToFileURL( resolveSafeChildPath(contentsPath, 'template.yaml'), ).toString(), diff --git a/plugins/scaffolder-backend/src/service/router.ts b/plugins/scaffolder-backend/src/service/router.ts index 35dacf6559..23c3988b0d 100644 --- a/plugins/scaffolder-backend/src/service/router.ts +++ b/plugins/scaffolder-backend/src/service/router.ts @@ -825,6 +825,7 @@ export async function createRouter( ref: userEntityRef, }, }, + templateMetadata: template.metadata, directoryContents: (body.directoryContents ?? []).map(file => ({ path: file.path, content: Buffer.from(file.base64Content, 'base64'), From 2603968870bc2c879fadc8feec6172855eda43fe Mon Sep 17 00:00:00 2001 From: Mark Foresta Date: Sat, 21 Sep 2024 12:19:15 -0400 Subject: [PATCH 120/161] Attempting to move templateInfo to caller Signed-off-by: Mark Foresta --- .../src/scaffolder/dryrun/createDryRunner.ts | 35 +++++++++---------- .../scaffolder-backend/src/service/router.ts | 22 +++++++++++- 2 files changed, 38 insertions(+), 19 deletions(-) diff --git a/plugins/scaffolder-backend/src/scaffolder/dryrun/createDryRunner.ts b/plugins/scaffolder-backend/src/scaffolder/dryrun/createDryRunner.ts index a2cb19ce33..7d62310920 100644 --- a/plugins/scaffolder-backend/src/scaffolder/dryrun/createDryRunner.ts +++ b/plugins/scaffolder-backend/src/scaffolder/dryrun/createDryRunner.ts @@ -15,10 +15,10 @@ */ import { ScmIntegrations } from '@backstage/integration'; -import { TaskSpec } from '@backstage/plugin-scaffolder-common'; +import { TaskSpec, TemplateInfo } from '@backstage/plugin-scaffolder-common'; import { JsonObject } from '@backstage/types'; import { v4 as uuid } from 'uuid'; -import { pathToFileURL } from 'url'; +import { fileURLToPath, pathToFileURL } from 'url'; import { Logger } from 'winston'; import { createTemplateAction, @@ -38,11 +38,12 @@ import { BackstageCredentials, resolveSafeChildPath, } from '@backstage/backend-plugin-api'; -import type { EntityMeta, UserEntity } from '@backstage/catalog-model'; +import type { UserEntity } from '@backstage/catalog-model'; +import { template } from 'lodash'; interface DryRunInput { spec: TaskSpec; - templateMetadata: EntityMeta; + templateInfo: TemplateInfo; secrets?: TaskSecrets; directoryContents: SerializedFile[]; credentials: BackstageCredentials; @@ -95,12 +96,18 @@ export function createDryRunner(options: TemplateTesterCreateOptions) { ]), }); - const dryRunId = uuid(); + // Extracting contentsPath and dryRunId from the baseUrl + const baseUrl = input.templateInfo.baseUrl; + if (!baseUrl) { + throw new Error('baseUrl is required'); + } + const basePath = fileURLToPath(new URL(baseUrl)); + const contentsPath = basePath.replace('template.yaml', ''); + const dryRunId = contentsPath + .replace(options.workingDirectory, '') + .replace('dry-run-content-', ''); + const log = new Array<{ body: JsonObject }>(); - const contentsPath = resolveSafeChildPath( - options.workingDirectory, - `dry-run-content-${dryRunId}`, - ); try { await deserializeDirectoryContents(contentsPath, input.directoryContents); @@ -117,15 +124,7 @@ export function createDryRunner(options: TemplateTesterCreateOptions) { action: 'dry-run:extract', }, ], - templateInfo: { - entityRef: 'template:default/dry-run', - entity: { - metadata: input.templateMetadata, - }, - baseUrl: pathToFileURL( - resolveSafeChildPath(contentsPath, 'template.yaml'), - ).toString(), - }, + templateInfo: input.templateInfo, }, secrets: input.secrets, getInitiatorCredentials: () => Promise.resolve(input.credentials), diff --git a/plugins/scaffolder-backend/src/service/router.ts b/plugins/scaffolder-backend/src/service/router.ts index 23c3988b0d..c62a187e1b 100644 --- a/plugins/scaffolder-backend/src/service/router.ts +++ b/plugins/scaffolder-backend/src/service/router.ts @@ -94,6 +94,7 @@ import { PermissionsService, SchedulerService, UrlReaderService, + resolveSafeChildPath, } from '@backstage/backend-plugin-api'; import { IdentityApi, @@ -105,6 +106,8 @@ import { AutocompleteHandler, WorkspaceProvider, } from '@backstage/plugin-scaffolder-node/alpha'; +import { pathToFileURL } from 'url'; +import { v4 as uuid } from 'uuid'; /** * @@ -814,6 +817,23 @@ export async function createRouter( name: step.name ?? step.action, })); + const dryRunId = uuid(); + const contentsPath = resolveSafeChildPath( + workingDirectory, + `dry-run-content-${dryRunId}`, + ); + console.log('Mark: contentsPath', contentsPath); + + const templateInfo = { + entityRef: 'template:default/dry-run', + entity: { + metadata: template.metadata, + }, + baseUrl: pathToFileURL( + resolveSafeChildPath(contentsPath, 'template.yaml'), + ).toString(), + }; + const result = await dryRunner({ spec: { apiVersion: template.apiVersion, @@ -825,7 +845,7 @@ export async function createRouter( ref: userEntityRef, }, }, - templateMetadata: template.metadata, + templateInfo: templateInfo, directoryContents: (body.directoryContents ?? []).map(file => ({ path: file.path, content: Buffer.from(file.base64Content, 'base64'), From 26503bad98b0275a51bfc2504ad37a8d2244d352 Mon Sep 17 00:00:00 2001 From: Mark Foresta Date: Sun, 22 Sep 2024 14:29:20 -0400 Subject: [PATCH 121/161] removing unused imports Signed-off-by: Mark Foresta --- .../src/scaffolder/dryrun/createDryRunner.ts | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/plugins/scaffolder-backend/src/scaffolder/dryrun/createDryRunner.ts b/plugins/scaffolder-backend/src/scaffolder/dryrun/createDryRunner.ts index 7d62310920..3ed99d080c 100644 --- a/plugins/scaffolder-backend/src/scaffolder/dryrun/createDryRunner.ts +++ b/plugins/scaffolder-backend/src/scaffolder/dryrun/createDryRunner.ts @@ -17,8 +17,7 @@ import { ScmIntegrations } from '@backstage/integration'; import { TaskSpec, TemplateInfo } from '@backstage/plugin-scaffolder-common'; import { JsonObject } from '@backstage/types'; -import { v4 as uuid } from 'uuid'; -import { fileURLToPath, pathToFileURL } from 'url'; +import { fileURLToPath } from 'url'; import { Logger } from 'winston'; import { createTemplateAction, @@ -34,12 +33,8 @@ import { NunjucksWorkflowRunner } from '../tasks/NunjucksWorkflowRunner'; import { DecoratedActionsRegistry } from './DecoratedActionsRegistry'; import fs from 'fs-extra'; import { PermissionEvaluator } from '@backstage/plugin-permission-common'; -import { - BackstageCredentials, - resolveSafeChildPath, -} from '@backstage/backend-plugin-api'; +import { BackstageCredentials } from '@backstage/backend-plugin-api'; import type { UserEntity } from '@backstage/catalog-model'; -import { template } from 'lodash'; interface DryRunInput { spec: TaskSpec; From 91e112058da349dd59b7977039c106525dcffd77 Mon Sep 17 00:00:00 2001 From: Mark Foresta Date: Sun, 22 Sep 2024 14:58:51 -0400 Subject: [PATCH 122/161] removing unintend changes to storybook/yarn Signed-off-by: Mark Foresta --- storybook/yarn.lock | 364 +++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 356 insertions(+), 8 deletions(-) diff --git a/storybook/yarn.lock b/storybook/yarn.lock index e9796bc070..186b07a14a 100644 --- a/storybook/yarn.lock +++ b/storybook/yarn.lock @@ -1,6 +1,3 @@ -# This file is generated by running "yarn install" inside your project. -# Manual changes might be lost - proceed with caution! - __metadata: version: 6 cacheKey: 8 @@ -2156,7 +2153,17 @@ __metadata: languageName: node linkType: hard -"call-bind@npm:^1.0.2, call-bind@npm:^1.0.7": +"call-bind@npm:^1.0.0, call-bind@npm:^1.0.2": + version: 1.0.2 + resolution: "call-bind@npm:1.0.2" + dependencies: + function-bind: ^1.1.1 + get-intrinsic: ^1.0.2 + checksum: f8e31de9d19988a4b80f3e704788c4a2d6b6f3d17cfec4f57dc29ced450c53a49270dc66bf0fbd693329ee948dd33e6c90a329519aef17474a4d961e8d6426b0 + languageName: node + linkType: hard + +"call-bind@npm:^1.0.7": version: 1.0.7 resolution: "call-bind@npm:1.0.7" dependencies: @@ -3034,6 +3041,13 @@ __metadata: languageName: node linkType: hard +"function-bind@npm:^1.1.1": + version: 1.1.1 + resolution: "function-bind@npm:1.1.1" + checksum: b32fbaebb3f8ec4969f033073b43f5c8befbb58f1a79e12f1d7490358150359ebd92f49e72ff0144f65f2c48ea2a605bff2d07965f548f6474fd8efd95bf361a + languageName: node + linkType: hard + "function-bind@npm:^1.1.2": version: 1.1.2 resolution: "function-bind@npm:1.1.2" @@ -3048,6 +3062,25 @@ __metadata: languageName: node linkType: hard +"get-caller-file@npm:^2.0.5": + version: 2.0.5 + resolution: "get-caller-file@npm:2.0.5" + checksum: b9769a836d2a98c3ee734a88ba712e62703f1df31b94b784762c433c27a386dd6029ff55c2a920c392e33657d80191edbf18c61487e198844844516f843496b9 + languageName: node + linkType: hard + +"get-intrinsic@npm:^1.0.2, get-intrinsic@npm:^1.1.1, get-intrinsic@npm:^1.1.3, get-intrinsic@npm:^1.2.0": + version: 1.2.1 + resolution: "get-intrinsic@npm:1.2.1" + dependencies: + function-bind: ^1.1.1 + has: ^1.0.3 + has-proto: ^1.0.1 + has-symbols: ^1.0.3 + checksum: 5b61d88552c24b0cf6fa2d1b3bc5459d7306f699de060d76442cce49a4721f52b8c560a33ab392cf5575b7810277d54ded9d4d39a1ea61855619ebc005aa7e5f + languageName: node + linkType: hard + "get-intrinsic@npm:^1.1.3, get-intrinsic@npm:^1.2.4": version: 1.2.4 resolution: "get-intrinsic@npm:1.2.4" @@ -3061,6 +3094,19 @@ __metadata: languageName: node linkType: hard +"get-intrinsic@npm:^1.2.4": + version: 1.2.4 + resolution: "get-intrinsic@npm:1.2.4" + dependencies: + es-errors: ^1.3.0 + function-bind: ^1.1.2 + has-proto: ^1.0.1 + has-symbols: ^1.0.3 + hasown: ^2.0.0 + checksum: 414e3cdf2c203d1b9d7d33111df746a4512a1aa622770b361dadddf8ed0b5aeb26c560f49ca077e24bfafb0acb55ca908d1f709216ccba33ffc548ec8a79a951 + languageName: node + linkType: hard + "glob-parent@npm:^5.1.2": version: 5.1.2 resolution: "glob-parent@npm:5.1.2" @@ -3192,6 +3238,24 @@ __metadata: languageName: node linkType: hard +"has-glob@npm:^1.0.0": + version: 1.0.0 + resolution: "has-glob@npm:1.0.0" + dependencies: + is-glob: ^3.0.0 + checksum: cafad93e599f49f676a9ab444ec90210fcda35ac14ad6c9bb96c08057ad18a1318f1116b053aa6bdc744f19252537006872d3fc76785e842bbe8cc4312447fc8 + languageName: node + linkType: hard + +"has-property-descriptors@npm:^1.0.0": + version: 1.0.0 + resolution: "has-property-descriptors@npm:1.0.0" + dependencies: + get-intrinsic: ^1.1.1 + checksum: a6d3f0a266d0294d972e354782e872e2fe1b6495b321e6ef678c9b7a06a40408a6891817350c62e752adced73a94ac903c54734fee05bf65b1905ee1368194bb + languageName: node + linkType: hard + "has-property-descriptors@npm:^1.0.2": version: 1.0.2 resolution: "has-property-descriptors@npm:1.0.2" @@ -3889,7 +3953,229 @@ __metadata: abbrev: ^2.0.0 bin: nopt: bin/nopt.js - checksum: 6fa729cc77ce4162cfad8abbc9ba31d4a0ff6850c3af61d59b505653bef4781ec059f8890ecfe93ee8aa0c511093369cca88bfc998101616a2904e715bbbb7c9 + checksum: d35fdec187269503843924e0114c0c6533fb54bbf1620d0f28b4b60ba01712d6687f62565c55cc20a504eff0fbe5c63e22340c3fad549ad40469ffb611b04f2f + languageName: node + linkType: hard + +"normalize-package-data@npm:^2.3.2, normalize-package-data@npm:^2.3.4, normalize-package-data@npm:^2.5.0": + version: 2.5.0 + resolution: "normalize-package-data@npm:2.5.0" + dependencies: + hosted-git-info: ^2.1.4 + resolve: ^1.10.0 + semver: 2 || 3 || 4 || 5 + validate-npm-package-license: ^3.0.1 + checksum: 7999112efc35a6259bc22db460540cae06564aa65d0271e3bdfa86876d08b0e578b7b5b0028ee61b23f1cae9fc0e7847e4edc0948d3068a39a2a82853efc8499 + languageName: node + linkType: hard + +"normalize-path@npm:^3.0.0, normalize-path@npm:~3.0.0": + version: 3.0.0 + resolution: "normalize-path@npm:3.0.0" + checksum: 88eeb4da891e10b1318c4b2476b6e2ecbeb5ff97d946815ffea7794c31a89017c70d7f34b3c2ebf23ef4e9fc9fb99f7dffe36da22011b5b5c6ffa34f4873ec20 + languageName: node + linkType: hard + +"normalize-range@npm:^0.1.2": + version: 0.1.2 + resolution: "normalize-range@npm:0.1.2" + checksum: 9b2f14f093593f367a7a0834267c24f3cb3e887a2d9809c77d8a7e5fd08738bcd15af46f0ab01cc3a3d660386f015816b5c922cea8bf2ee79777f40874063184 + languageName: node + linkType: hard + +"npm-run-path@npm:^4.0.1": + version: 4.0.1 + resolution: "npm-run-path@npm:4.0.1" + dependencies: + path-key: ^3.0.0 + checksum: 5374c0cea4b0bbfdfae62da7bbdf1e1558d338335f4cacf2515c282ff358ff27b2ecb91ffa5330a8b14390ac66a1e146e10700440c1ab868208430f56b5f4d23 + languageName: node + linkType: hard + +"npmlog@npm:^5.0.1": + version: 5.0.1 + resolution: "npmlog@npm:5.0.1" + dependencies: + are-we-there-yet: ^2.0.0 + console-control-strings: ^1.1.0 + gauge: ^3.0.0 + set-blocking: ^2.0.0 + checksum: 516b2663028761f062d13e8beb3f00069c5664925871a9b57989642ebe09f23ab02145bf3ab88da7866c4e112cafff72401f61a672c7c8a20edc585a7016ef5f + languageName: node + linkType: hard + +"npmlog@npm:^6.0.0": + version: 6.0.2 + resolution: "npmlog@npm:6.0.2" + dependencies: + are-we-there-yet: ^3.0.0 + console-control-strings: ^1.1.0 + gauge: ^4.0.3 + set-blocking: ^2.0.0 + checksum: ae238cd264a1c3f22091cdd9e2b106f684297d3c184f1146984ecbe18aaa86343953f26b9520dedd1b1372bc0316905b736c1932d778dbeb1fcf5a1001390e2a + languageName: node + linkType: hard + +"nth-check@npm:^2.0.1": + version: 2.1.1 + resolution: "nth-check@npm:2.1.1" + dependencies: + boolbase: ^1.0.0 + checksum: 5afc3dafcd1573b08877ca8e6148c52abd565f1d06b1eb08caf982e3fa289a82f2cae697ffb55b5021e146d60443f1590a5d6b944844e944714a5b549675bcd3 + languageName: node + linkType: hard + +"num2fraction@npm:^1.2.2": + version: 1.2.2 + resolution: "num2fraction@npm:1.2.2" + checksum: 1da9c6797b505d3f5b17c7f694c4fa31565bdd5c0e5d669553253aed848a580804cd285280e8a73148bd9628839267daee4967f24b53d4e893e44b563e412635 + languageName: node + linkType: hard + +"object-assign@npm:^4.0.1, object-assign@npm:^4.1.1": + version: 4.1.1 + resolution: "object-assign@npm:4.1.1" + checksum: fcc6e4ea8c7fe48abfbb552578b1c53e0d194086e2e6bbbf59e0a536381a292f39943c6e9628af05b5528aa5e3318bb30d6b2e53cadaf5b8fe9e12c4b69af23f + languageName: node + linkType: hard + +"object-copy@npm:^0.1.0": + version: 0.1.0 + resolution: "object-copy@npm:0.1.0" + dependencies: + copy-descriptor: ^0.1.0 + define-property: ^0.2.5 + kind-of: ^3.0.3 + checksum: a9e35f07e3a2c882a7e979090360d1a20ab51d1fa19dfdac3aa8873b328a7c4c7683946ee97c824ae40079d848d6740a3788fa14f2185155dab7ed970a72c783 + languageName: node + linkType: hard + +"object-inspect@npm:^1.12.0, object-inspect@npm:^1.9.0": + version: 1.12.2 + resolution: "object-inspect@npm:1.12.2" + checksum: a534fc1b8534284ed71f25ce3a496013b7ea030f3d1b77118f6b7b1713829262be9e6243acbcb3ef8c626e2b64186112cb7f6db74e37b2789b9c789ca23048b2 + languageName: node + linkType: hard + +"object-inspect@npm:^1.13.1": + version: 1.13.2 + resolution: "object-inspect@npm:1.13.2" + checksum: 9f850b3c045db60e0e97746e809ee4090d6ce62195af17dd1e9438ac761394a7d8ec4f7906559aea5424eaf61e35d3e53feded2ccd5f62fcc7d9670d3c8eb353 + languageName: node + linkType: hard + +"object-is@npm:^1.1.5": + version: 1.1.5 + resolution: "object-is@npm:1.1.5" + dependencies: + call-bind: ^1.0.2 + define-properties: ^1.1.3 + checksum: 989b18c4cba258a6b74dc1d74a41805c1a1425bce29f6cabb50dcb1a6a651ea9104a1b07046739a49a5bb1bc49727bcb00efd5c55f932f6ea04ec8927a7901fe + languageName: node + linkType: hard + +"object-keys@npm:^1.1.1": + version: 1.1.1 + resolution: "object-keys@npm:1.1.1" + checksum: b363c5e7644b1e1b04aa507e88dcb8e3a2f52b6ffd0ea801e4c7a62d5aa559affe21c55a07fd4b1fd55fc03a33c610d73426664b20032405d7b92a1414c34d6a + languageName: node + linkType: hard + +"object-visit@npm:^1.0.0": + version: 1.0.1 + resolution: "object-visit@npm:1.0.1" + dependencies: + isobject: ^3.0.0 + checksum: b0ee07f5bf3bb881b881ff53b467ebbde2b37ebb38649d6944a6cd7681b32eedd99da9bd1e01c55facf81f54ed06b13af61aba6ad87f0052982995e09333f790 + languageName: node + linkType: hard + +"object.assign@npm:^4.1.0, object.assign@npm:^4.1.2, object.assign@npm:^4.1.4": + version: 4.1.4 + resolution: "object.assign@npm:4.1.4" + dependencies: + call-bind: ^1.0.2 + define-properties: ^1.1.4 + has-symbols: ^1.0.3 + object-keys: ^1.1.1 + checksum: 76cab513a5999acbfe0ff355f15a6a125e71805fcf53de4e9d4e082e1989bdb81d1e329291e1e4e0ae7719f0e4ef80e88fb2d367ae60500d79d25a6224ac8864 + languageName: node + linkType: hard + +"object.entries@npm:^1.1.0": + version: 1.1.5 + resolution: "object.entries@npm:1.1.5" + dependencies: + call-bind: ^1.0.2 + define-properties: ^1.1.3 + es-abstract: ^1.19.1 + checksum: d658696f74fd222060d8428d2a9fda2ce736b700cb06f6bdf4a16a1892d145afb746f453502b2fa55d1dca8ead6f14ddbcf66c545df45adadea757a6c4cd86c7 + languageName: node + linkType: hard + +"object.fromentries@npm:^2.0.0 || ^1.0.0": + version: 2.0.5 + resolution: "object.fromentries@npm:2.0.5" + dependencies: + call-bind: ^1.0.2 + define-properties: ^1.1.3 + es-abstract: ^1.19.1 + checksum: 61a0b565ded97b76df9e30b569729866e1824cce902f98e90bb106e84f378aea20163366f66dc75c9000e2aad2ed0caf65c6f530cb2abc4c0c0f6c982102db4b + languageName: node + linkType: hard + +"object.getownpropertydescriptors@npm:^2.0.3, object.getownpropertydescriptors@npm:^2.1.2": + version: 2.1.4 + resolution: "object.getownpropertydescriptors@npm:2.1.4" + dependencies: + array.prototype.reduce: ^1.0.4 + call-bind: ^1.0.2 + define-properties: ^1.1.4 + es-abstract: ^1.20.1 + checksum: 988c466fe49fc4f19a28d2d1d894c95c6abfe33c94674ec0b14d96eed71f453c7ad16873d430dc2acbb1760de6d3d2affac4b81237a306012cc4dc49f7539e7f + languageName: node + linkType: hard + +"object.pick@npm:^1.3.0": + version: 1.3.0 + resolution: "object.pick@npm:1.3.0" + dependencies: + isobject: ^3.0.1 + checksum: 77fb6eed57c67adf75e9901187e37af39f052ef601cb4480386436561357eb9e459e820762f01fd02c5c1b42ece839ad393717a6d1850d848ee11fbabb3e580a + languageName: node + linkType: hard + +"object.values@npm:^1.1.0": + version: 1.1.5 + resolution: "object.values@npm:1.1.5" + dependencies: + call-bind: ^1.0.2 + define-properties: ^1.1.3 + es-abstract: ^1.19.1 + checksum: 0f17e99741ebfbd0fa55ce942f6184743d3070c61bd39221afc929c8422c4907618c8da694c6915bc04a83ab3224260c779ba37fc07bb668bdc5f33b66a902a4 + languageName: node + linkType: hard + +"objectorarray@npm:^1.0.5": + version: 1.0.5 + resolution: "objectorarray@npm:1.0.5" + checksum: 8fd776aa495d113e217837f4adc1d53e63f656498237094d25f84c3e2c038b34b71d6fd85c4b60c7ae5f558790e5042426a400fae3eac35f297e11be12643a78 + languageName: node + linkType: hard + +"on-finished@npm:2.4.1": + version: 2.4.1 + resolution: "on-finished@npm:2.4.1" + dependencies: + ee-first: 1.1.1 + checksum: d20929a25e7f0bb62f937a425b5edeb4e4cde0540d77ba146ec9357f00b0d497cdb3b9b05b9c8e46222407d1548d08166bff69cc56dfa55ba0e4469228920ff0 + languageName: node + linkType: hard + +"on-headers@npm:~1.0.2": + version: 1.0.2 + resolution: "on-headers@npm:1.0.2" + checksum: 2bf13467215d1e540a62a75021e8b318a6cfc5d4fc53af8e8f84ad98dbcea02d506c6d24180cd62e1d769c44721ba542f3154effc1f7579a8288c9f7873ed8e5 languageName: node linkType: hard @@ -4115,9 +4401,27 @@ __metadata: linkType: hard "punycode@npm:^2.1.0": - version: 2.3.1 - resolution: "punycode@npm:2.3.1" - checksum: bb0a0ceedca4c3c57a9b981b90601579058903c62be23c5e8e843d2c2d4148a3ecf029d5133486fb0e1822b098ba8bba09e89d6b21742d02fa26bda6441a6fb2 + version: 2.1.1 + resolution: "punycode@npm:2.1.1" + checksum: 823bf443c6dd14f669984dea25757b37993f67e8d94698996064035edd43bed8a5a17a9f12e439c2b35df1078c6bec05a6c86e336209eb1061e8025c481168e8 + languageName: node + linkType: hard + +"qs@npm:6.13.0": + version: 6.13.0 + resolution: "qs@npm:6.13.0" + dependencies: + side-channel: ^1.0.6 + checksum: e9404dc0fc2849245107108ce9ec2766cde3be1b271de0bf1021d049dc5b98d1a2901e67b431ac5509f865420a7ed80b7acb3980099fe1c118a1c5d2e1432ad8 + languageName: node + linkType: hard + +"qs@npm:^6.10.0": + version: 6.11.0 + resolution: "qs@npm:6.11.0" + dependencies: + side-channel: ^1.0.4 + checksum: 6e1f29dd5385f7488ec74ac7b6c92f4d09a90408882d0c208414a34dd33badc1a621019d4c799a3df15ab9b1d0292f97c1dd71dc7c045e69f81a8064e5af7297 languageName: node linkType: hard @@ -4438,6 +4742,36 @@ __metadata: languageName: node linkType: hard +"side-channel@npm:^1.0.4": + version: 1.0.4 + resolution: "side-channel@npm:1.0.4" + dependencies: + call-bind: ^1.0.0 + get-intrinsic: ^1.0.2 + object-inspect: ^1.9.0 + checksum: 351e41b947079c10bd0858364f32bb3a7379514c399edb64ab3dce683933483fc63fb5e4efe0a15a2e8a7e3c436b6a91736ddb8d8c6591b0460a24bb4a1ee245 + languageName: node + linkType: hard + +"side-channel@npm:^1.0.6": + version: 1.0.6 + resolution: "side-channel@npm:1.0.6" + dependencies: + call-bind: ^1.0.7 + es-errors: ^1.3.0 + get-intrinsic: ^1.2.4 + object-inspect: ^1.13.1 + checksum: bfc1afc1827d712271453e91b7cd3878ac0efd767495fd4e594c4c2afaa7963b7b510e249572bfd54b0527e66e4a12b61b80c061389e129755f34c493aad9b97 + languageName: node + linkType: hard + +"signal-exit@npm:^3.0.0, signal-exit@npm:^3.0.2, signal-exit@npm:^3.0.3, signal-exit@npm:^3.0.7": + version: 3.0.7 + resolution: "signal-exit@npm:3.0.7" + checksum: a2f098f247adc367dffc27845853e9959b9e88b01cb301658cfe4194352d8d2bb32e18467c786a7fe15f1d44b233ea35633d076d5e737870b7139949d1ab6318 + languageName: node + linkType: hard + "signal-exit@npm:^4.0.1": version: 4.1.0 resolution: "signal-exit@npm:4.1.0" @@ -4445,6 +4779,20 @@ __metadata: languageName: node linkType: hard +"sisteransi@npm:^1.0.5": + version: 1.0.5 + resolution: "sisteransi@npm:1.0.5" + checksum: aba6438f46d2bfcef94cf112c835ab395172c75f67453fe05c340c770d3c402363018ae1ab4172a1026a90c47eaccf3af7b6ff6fa749a680c2929bd7fa2b37a4 + languageName: node + linkType: hard + +"slash@npm:^2.0.0": + version: 2.0.0 + resolution: "slash@npm:2.0.0" + checksum: 512d4350735375bd11647233cb0e2f93beca6f53441015eea241fe784d8068281c3987fbaa93e7ef1c38df68d9c60013045c92837423c69115297d6169aa85e6 + languageName: node + linkType: hard + "slash@npm:^3.0.0": version: 3.0.0 resolution: "slash@npm:3.0.0" From 38d71169efd08afba3fbef92928846c524ace3b7 Mon Sep 17 00:00:00 2001 From: Mark Foresta Date: Sat, 12 Oct 2024 10:39:41 -0400 Subject: [PATCH 123/161] Use path dirname rather than parsing it manually Signed-off-by: Mark Foresta --- .../src/scaffolder/dryrun/createDryRunner.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/plugins/scaffolder-backend/src/scaffolder/dryrun/createDryRunner.ts b/plugins/scaffolder-backend/src/scaffolder/dryrun/createDryRunner.ts index 3ed99d080c..0d4adfece2 100644 --- a/plugins/scaffolder-backend/src/scaffolder/dryrun/createDryRunner.ts +++ b/plugins/scaffolder-backend/src/scaffolder/dryrun/createDryRunner.ts @@ -28,6 +28,7 @@ import { SerializedFile, serializeDirectoryContents, } from '@backstage/plugin-scaffolder-node'; +import path from 'path'; import { TemplateActionRegistry } from '../actions'; import { NunjucksWorkflowRunner } from '../tasks/NunjucksWorkflowRunner'; import { DecoratedActionsRegistry } from './DecoratedActionsRegistry'; @@ -97,7 +98,7 @@ export function createDryRunner(options: TemplateTesterCreateOptions) { throw new Error('baseUrl is required'); } const basePath = fileURLToPath(new URL(baseUrl)); - const contentsPath = basePath.replace('template.yaml', ''); + const contentsPath = path.dirname(basePath); const dryRunId = contentsPath .replace(options.workingDirectory, '') .replace('dry-run-content-', ''); From 7b6cb4b50ccd72790bbe67bf8f7bf4c246c698ea Mon Sep 17 00:00:00 2001 From: Mark Foresta Date: Sat, 12 Oct 2024 10:44:45 -0400 Subject: [PATCH 124/161] generate fresh uuid based on review comment Signed-off-by: Mark Foresta --- .../src/scaffolder/dryrun/createDryRunner.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/plugins/scaffolder-backend/src/scaffolder/dryrun/createDryRunner.ts b/plugins/scaffolder-backend/src/scaffolder/dryrun/createDryRunner.ts index 0d4adfece2..c9b84638e0 100644 --- a/plugins/scaffolder-backend/src/scaffolder/dryrun/createDryRunner.ts +++ b/plugins/scaffolder-backend/src/scaffolder/dryrun/createDryRunner.ts @@ -36,6 +36,8 @@ import fs from 'fs-extra'; import { PermissionEvaluator } from '@backstage/plugin-permission-common'; import { BackstageCredentials } from '@backstage/backend-plugin-api'; import type { UserEntity } from '@backstage/catalog-model'; +import { v4 as uuid } from 'uuid'; + interface DryRunInput { spec: TaskSpec; @@ -99,9 +101,7 @@ export function createDryRunner(options: TemplateTesterCreateOptions) { } const basePath = fileURLToPath(new URL(baseUrl)); const contentsPath = path.dirname(basePath); - const dryRunId = contentsPath - .replace(options.workingDirectory, '') - .replace('dry-run-content-', ''); + const dryRunId = uuid() const log = new Array<{ body: JsonObject }>(); From cc1b975256718db97dc0fd243c105be712da2308 Mon Sep 17 00:00:00 2001 From: Mark Foresta Date: Sat, 12 Oct 2024 10:45:53 -0400 Subject: [PATCH 125/161] Removing logging Signed-off-by: Mark Foresta --- plugins/scaffolder-backend/src/service/router.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/plugins/scaffolder-backend/src/service/router.ts b/plugins/scaffolder-backend/src/service/router.ts index c62a187e1b..4a024b9170 100644 --- a/plugins/scaffolder-backend/src/service/router.ts +++ b/plugins/scaffolder-backend/src/service/router.ts @@ -822,7 +822,6 @@ export async function createRouter( workingDirectory, `dry-run-content-${dryRunId}`, ); - console.log('Mark: contentsPath', contentsPath); const templateInfo = { entityRef: 'template:default/dry-run', From 56c28118b1b9de5fd3009002ffc2359cb395177c Mon Sep 17 00:00:00 2001 From: Mark Foresta Date: Sat, 12 Oct 2024 12:20:18 -0400 Subject: [PATCH 126/161] Ran prettier on createDryRunner.ts Signed-off-by: Mark Foresta --- .../scaffolder-backend/src/scaffolder/dryrun/createDryRunner.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/scaffolder-backend/src/scaffolder/dryrun/createDryRunner.ts b/plugins/scaffolder-backend/src/scaffolder/dryrun/createDryRunner.ts index c9b84638e0..02f60bc9ea 100644 --- a/plugins/scaffolder-backend/src/scaffolder/dryrun/createDryRunner.ts +++ b/plugins/scaffolder-backend/src/scaffolder/dryrun/createDryRunner.ts @@ -88,7 +88,7 @@ export function createDryRunner(options: TemplateTesterCreateOptions) { supportsDryRun: true, async handler(ctx) { contentPromise = serializeDirectoryContents(ctx.workspacePath); - await contentPromise.catch(() => {}); + await contentPromise.catch(() => { }); }, }), ]), From 7ab3371d33c46ea1894af4a9c44632cf9bacbed6 Mon Sep 17 00:00:00 2001 From: Mark Foresta Date: Sat, 12 Oct 2024 12:29:38 -0400 Subject: [PATCH 127/161] Adding Changeset Signed-off-by: Mark Foresta --- .changeset/soft-turkeys-tie.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/soft-turkeys-tie.md diff --git a/.changeset/soft-turkeys-tie.md b/.changeset/soft-turkeys-tie.md new file mode 100644 index 0000000000..a1ca9f1c22 --- /dev/null +++ b/.changeset/soft-turkeys-tie.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-scaffolder-backend': patch +--- + +Modified createDryRunner and corresponding route to include templateMetaData inside the templateInfo. This allows custom action writers to access things like `templateInfo.entity.metadata.name` via the action context while executing templates using the dry run framework. From fa28a5f10ad04d923ac42c7b621fe769a4325bff Mon Sep 17 00:00:00 2001 From: Mark Foresta Date: Sat, 12 Oct 2024 12:46:21 -0400 Subject: [PATCH 128/161] Adding test for metadata during dry run Signed-off-by: Mark Foresta --- .../tasks/NunjucksWorkflowRunner.test.ts | 34 +++++++++++++++++-- 1 file changed, 31 insertions(+), 3 deletions(-) diff --git a/plugins/scaffolder-backend/src/scaffolder/tasks/NunjucksWorkflowRunner.test.ts b/plugins/scaffolder-backend/src/scaffolder/tasks/NunjucksWorkflowRunner.test.ts index 0bcbd2f917..5dab8fb893 100644 --- a/plugins/scaffolder-backend/src/scaffolder/tasks/NunjucksWorkflowRunner.test.ts +++ b/plugins/scaffolder-backend/src/scaffolder/tasks/NunjucksWorkflowRunner.test.ts @@ -78,7 +78,7 @@ describe('NunjucksWorkflowRunner', () => { spec, secrets, isDryRun, - complete: async () => {}, + complete: async () => { }, done: false, emitLog: fakeTaskLog, cancelSignal: new AbortController().signal, @@ -636,8 +636,8 @@ describe('NunjucksWorkflowRunner', () => { }), getTaskState: (): Promise< | { - state: JsonObject; - } + state: JsonObject; + } | undefined > => { return Promise.resolve({ @@ -1331,6 +1331,34 @@ describe('NunjucksWorkflowRunner', () => { expect(fakeActionHandler.mock.calls[0][0].isDryRun).toEqual(true); }); + + it('should have metadata in action context during dry run', async () => { + const task = createMockTaskWithSpec( + { + apiVersion: 'scaffolder.backstage.io/v1beta3', + templateInfo: { entityRef: "dryRun-Entity", entity: { metadata: { name: "test-template" } } }, + parameters: {}, + output: {}, + steps: [ + { + id: 'test', + name: 'name', + action: 'jest-validated-action', + input: { foo: 1 }, + }, + ], + }, + { + backstageToken: token, + }, + true, + ); + + await runner.execute(task); + + expect(fakeActionHandler.mock.calls[0][0].isDryRun).toEqual(true); + expect(fakeActionHandler.mock.calls[0][0].templateInfo.entity.metadata.name).toEqual("test-template"); + }); }); describe('permissions', () => { From 2632cd74ed6b05134c4d484406fea1cb14f53878 Mon Sep 17 00:00:00 2001 From: Mark Foresta Date: Sat, 12 Oct 2024 12:51:22 -0400 Subject: [PATCH 129/161] wrapping function names in code blocks to avoid spelling errors Signed-off-by: Mark Foresta --- .changeset/soft-turkeys-tie.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.changeset/soft-turkeys-tie.md b/.changeset/soft-turkeys-tie.md index a1ca9f1c22..3962f49460 100644 --- a/.changeset/soft-turkeys-tie.md +++ b/.changeset/soft-turkeys-tie.md @@ -2,4 +2,4 @@ '@backstage/plugin-scaffolder-backend': patch --- -Modified createDryRunner and corresponding route to include templateMetaData inside the templateInfo. This allows custom action writers to access things like `templateInfo.entity.metadata.name` via the action context while executing templates using the dry run framework. +Modified `createDryRunner` and corresponding route to include `templateMetaData` inside the `templateInfo`. This allows custom action writers to access things like `templateInfo.entity.metadata.name` via the action context while executing templates using the dry run framework. From 3b797a2d814f3da7dd1dc71815abe72f409a37b8 Mon Sep 17 00:00:00 2001 From: Mark Foresta Date: Sat, 12 Oct 2024 13:03:11 -0400 Subject: [PATCH 130/161] Ran prettier fix Signed-off-by: Mark Foresta --- .../src/scaffolder/dryrun/createDryRunner.ts | 5 ++--- .../tasks/NunjucksWorkflowRunner.test.ts | 15 ++++++++++----- 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/plugins/scaffolder-backend/src/scaffolder/dryrun/createDryRunner.ts b/plugins/scaffolder-backend/src/scaffolder/dryrun/createDryRunner.ts index 02f60bc9ea..5fab0a80c7 100644 --- a/plugins/scaffolder-backend/src/scaffolder/dryrun/createDryRunner.ts +++ b/plugins/scaffolder-backend/src/scaffolder/dryrun/createDryRunner.ts @@ -38,7 +38,6 @@ import { BackstageCredentials } from '@backstage/backend-plugin-api'; import type { UserEntity } from '@backstage/catalog-model'; import { v4 as uuid } from 'uuid'; - interface DryRunInput { spec: TaskSpec; templateInfo: TemplateInfo; @@ -88,7 +87,7 @@ export function createDryRunner(options: TemplateTesterCreateOptions) { supportsDryRun: true, async handler(ctx) { contentPromise = serializeDirectoryContents(ctx.workspacePath); - await contentPromise.catch(() => { }); + await contentPromise.catch(() => {}); }, }), ]), @@ -101,7 +100,7 @@ export function createDryRunner(options: TemplateTesterCreateOptions) { } const basePath = fileURLToPath(new URL(baseUrl)); const contentsPath = path.dirname(basePath); - const dryRunId = uuid() + const dryRunId = uuid(); const log = new Array<{ body: JsonObject }>(); diff --git a/plugins/scaffolder-backend/src/scaffolder/tasks/NunjucksWorkflowRunner.test.ts b/plugins/scaffolder-backend/src/scaffolder/tasks/NunjucksWorkflowRunner.test.ts index 5dab8fb893..25caf7bad0 100644 --- a/plugins/scaffolder-backend/src/scaffolder/tasks/NunjucksWorkflowRunner.test.ts +++ b/plugins/scaffolder-backend/src/scaffolder/tasks/NunjucksWorkflowRunner.test.ts @@ -78,7 +78,7 @@ describe('NunjucksWorkflowRunner', () => { spec, secrets, isDryRun, - complete: async () => { }, + complete: async () => {}, done: false, emitLog: fakeTaskLog, cancelSignal: new AbortController().signal, @@ -636,8 +636,8 @@ describe('NunjucksWorkflowRunner', () => { }), getTaskState: (): Promise< | { - state: JsonObject; - } + state: JsonObject; + } | undefined > => { return Promise.resolve({ @@ -1336,7 +1336,10 @@ describe('NunjucksWorkflowRunner', () => { const task = createMockTaskWithSpec( { apiVersion: 'scaffolder.backstage.io/v1beta3', - templateInfo: { entityRef: "dryRun-Entity", entity: { metadata: { name: "test-template" } } }, + templateInfo: { + entityRef: 'dryRun-Entity', + entity: { metadata: { name: 'test-template' } }, + }, parameters: {}, output: {}, steps: [ @@ -1357,7 +1360,9 @@ describe('NunjucksWorkflowRunner', () => { await runner.execute(task); expect(fakeActionHandler.mock.calls[0][0].isDryRun).toEqual(true); - expect(fakeActionHandler.mock.calls[0][0].templateInfo.entity.metadata.name).toEqual("test-template"); + expect( + fakeActionHandler.mock.calls[0][0].templateInfo.entity.metadata.name, + ).toEqual('test-template'); }); }); From 018b3e6e29fbcc86127d8b6d11bea867f38e2ee7 Mon Sep 17 00:00:00 2001 From: Mark Foresta Date: Sat, 19 Oct 2024 20:44:53 -0400 Subject: [PATCH 131/161] stringifyEntityRef Signed-off-by: Mark Foresta --- plugins/scaffolder-backend/src/service/router.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plugins/scaffolder-backend/src/service/router.ts b/plugins/scaffolder-backend/src/service/router.ts index 4a024b9170..3f5daf84a0 100644 --- a/plugins/scaffolder-backend/src/service/router.ts +++ b/plugins/scaffolder-backend/src/service/router.ts @@ -822,9 +822,9 @@ export async function createRouter( workingDirectory, `dry-run-content-${dryRunId}`, ); - + const templateInfo = { - entityRef: 'template:default/dry-run', + entityRef: stringifyEntityRef(template), entity: { metadata: template.metadata, }, From ae83fc3fe7f43d82bfdacfb6737934a3d89cf3c0 Mon Sep 17 00:00:00 2001 From: Mark Foresta Date: Sat, 19 Oct 2024 21:22:56 -0400 Subject: [PATCH 132/161] Ran prettier fix Signed-off-by: Mark Foresta --- plugins/scaffolder-backend/src/service/router.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/scaffolder-backend/src/service/router.ts b/plugins/scaffolder-backend/src/service/router.ts index 3f5daf84a0..261beb1f56 100644 --- a/plugins/scaffolder-backend/src/service/router.ts +++ b/plugins/scaffolder-backend/src/service/router.ts @@ -822,7 +822,7 @@ export async function createRouter( workingDirectory, `dry-run-content-${dryRunId}`, ); - + const templateInfo = { entityRef: stringifyEntityRef(template), entity: { From aa4ad53e4a7a5ae94d48d7950abd6481aa249651 Mon Sep 17 00:00:00 2001 From: blam Date: Wed, 6 Nov 2024 09:54:47 +0100 Subject: [PATCH 133/161] chore: reset yarn.lock Signed-off-by: blam --- storybook/yarn.lock | 364 +------------------------------------------- 1 file changed, 8 insertions(+), 356 deletions(-) diff --git a/storybook/yarn.lock b/storybook/yarn.lock index 186b07a14a..e9796bc070 100644 --- a/storybook/yarn.lock +++ b/storybook/yarn.lock @@ -1,3 +1,6 @@ +# This file is generated by running "yarn install" inside your project. +# Manual changes might be lost - proceed with caution! + __metadata: version: 6 cacheKey: 8 @@ -2153,17 +2156,7 @@ __metadata: languageName: node linkType: hard -"call-bind@npm:^1.0.0, call-bind@npm:^1.0.2": - version: 1.0.2 - resolution: "call-bind@npm:1.0.2" - dependencies: - function-bind: ^1.1.1 - get-intrinsic: ^1.0.2 - checksum: f8e31de9d19988a4b80f3e704788c4a2d6b6f3d17cfec4f57dc29ced450c53a49270dc66bf0fbd693329ee948dd33e6c90a329519aef17474a4d961e8d6426b0 - languageName: node - linkType: hard - -"call-bind@npm:^1.0.7": +"call-bind@npm:^1.0.2, call-bind@npm:^1.0.7": version: 1.0.7 resolution: "call-bind@npm:1.0.7" dependencies: @@ -3041,13 +3034,6 @@ __metadata: languageName: node linkType: hard -"function-bind@npm:^1.1.1": - version: 1.1.1 - resolution: "function-bind@npm:1.1.1" - checksum: b32fbaebb3f8ec4969f033073b43f5c8befbb58f1a79e12f1d7490358150359ebd92f49e72ff0144f65f2c48ea2a605bff2d07965f548f6474fd8efd95bf361a - languageName: node - linkType: hard - "function-bind@npm:^1.1.2": version: 1.1.2 resolution: "function-bind@npm:1.1.2" @@ -3062,25 +3048,6 @@ __metadata: languageName: node linkType: hard -"get-caller-file@npm:^2.0.5": - version: 2.0.5 - resolution: "get-caller-file@npm:2.0.5" - checksum: b9769a836d2a98c3ee734a88ba712e62703f1df31b94b784762c433c27a386dd6029ff55c2a920c392e33657d80191edbf18c61487e198844844516f843496b9 - languageName: node - linkType: hard - -"get-intrinsic@npm:^1.0.2, get-intrinsic@npm:^1.1.1, get-intrinsic@npm:^1.1.3, get-intrinsic@npm:^1.2.0": - version: 1.2.1 - resolution: "get-intrinsic@npm:1.2.1" - dependencies: - function-bind: ^1.1.1 - has: ^1.0.3 - has-proto: ^1.0.1 - has-symbols: ^1.0.3 - checksum: 5b61d88552c24b0cf6fa2d1b3bc5459d7306f699de060d76442cce49a4721f52b8c560a33ab392cf5575b7810277d54ded9d4d39a1ea61855619ebc005aa7e5f - languageName: node - linkType: hard - "get-intrinsic@npm:^1.1.3, get-intrinsic@npm:^1.2.4": version: 1.2.4 resolution: "get-intrinsic@npm:1.2.4" @@ -3094,19 +3061,6 @@ __metadata: languageName: node linkType: hard -"get-intrinsic@npm:^1.2.4": - version: 1.2.4 - resolution: "get-intrinsic@npm:1.2.4" - dependencies: - es-errors: ^1.3.0 - function-bind: ^1.1.2 - has-proto: ^1.0.1 - has-symbols: ^1.0.3 - hasown: ^2.0.0 - checksum: 414e3cdf2c203d1b9d7d33111df746a4512a1aa622770b361dadddf8ed0b5aeb26c560f49ca077e24bfafb0acb55ca908d1f709216ccba33ffc548ec8a79a951 - languageName: node - linkType: hard - "glob-parent@npm:^5.1.2": version: 5.1.2 resolution: "glob-parent@npm:5.1.2" @@ -3238,24 +3192,6 @@ __metadata: languageName: node linkType: hard -"has-glob@npm:^1.0.0": - version: 1.0.0 - resolution: "has-glob@npm:1.0.0" - dependencies: - is-glob: ^3.0.0 - checksum: cafad93e599f49f676a9ab444ec90210fcda35ac14ad6c9bb96c08057ad18a1318f1116b053aa6bdc744f19252537006872d3fc76785e842bbe8cc4312447fc8 - languageName: node - linkType: hard - -"has-property-descriptors@npm:^1.0.0": - version: 1.0.0 - resolution: "has-property-descriptors@npm:1.0.0" - dependencies: - get-intrinsic: ^1.1.1 - checksum: a6d3f0a266d0294d972e354782e872e2fe1b6495b321e6ef678c9b7a06a40408a6891817350c62e752adced73a94ac903c54734fee05bf65b1905ee1368194bb - languageName: node - linkType: hard - "has-property-descriptors@npm:^1.0.2": version: 1.0.2 resolution: "has-property-descriptors@npm:1.0.2" @@ -3953,229 +3889,7 @@ __metadata: abbrev: ^2.0.0 bin: nopt: bin/nopt.js - checksum: d35fdec187269503843924e0114c0c6533fb54bbf1620d0f28b4b60ba01712d6687f62565c55cc20a504eff0fbe5c63e22340c3fad549ad40469ffb611b04f2f - languageName: node - linkType: hard - -"normalize-package-data@npm:^2.3.2, normalize-package-data@npm:^2.3.4, normalize-package-data@npm:^2.5.0": - version: 2.5.0 - resolution: "normalize-package-data@npm:2.5.0" - dependencies: - hosted-git-info: ^2.1.4 - resolve: ^1.10.0 - semver: 2 || 3 || 4 || 5 - validate-npm-package-license: ^3.0.1 - checksum: 7999112efc35a6259bc22db460540cae06564aa65d0271e3bdfa86876d08b0e578b7b5b0028ee61b23f1cae9fc0e7847e4edc0948d3068a39a2a82853efc8499 - languageName: node - linkType: hard - -"normalize-path@npm:^3.0.0, normalize-path@npm:~3.0.0": - version: 3.0.0 - resolution: "normalize-path@npm:3.0.0" - checksum: 88eeb4da891e10b1318c4b2476b6e2ecbeb5ff97d946815ffea7794c31a89017c70d7f34b3c2ebf23ef4e9fc9fb99f7dffe36da22011b5b5c6ffa34f4873ec20 - languageName: node - linkType: hard - -"normalize-range@npm:^0.1.2": - version: 0.1.2 - resolution: "normalize-range@npm:0.1.2" - checksum: 9b2f14f093593f367a7a0834267c24f3cb3e887a2d9809c77d8a7e5fd08738bcd15af46f0ab01cc3a3d660386f015816b5c922cea8bf2ee79777f40874063184 - languageName: node - linkType: hard - -"npm-run-path@npm:^4.0.1": - version: 4.0.1 - resolution: "npm-run-path@npm:4.0.1" - dependencies: - path-key: ^3.0.0 - checksum: 5374c0cea4b0bbfdfae62da7bbdf1e1558d338335f4cacf2515c282ff358ff27b2ecb91ffa5330a8b14390ac66a1e146e10700440c1ab868208430f56b5f4d23 - languageName: node - linkType: hard - -"npmlog@npm:^5.0.1": - version: 5.0.1 - resolution: "npmlog@npm:5.0.1" - dependencies: - are-we-there-yet: ^2.0.0 - console-control-strings: ^1.1.0 - gauge: ^3.0.0 - set-blocking: ^2.0.0 - checksum: 516b2663028761f062d13e8beb3f00069c5664925871a9b57989642ebe09f23ab02145bf3ab88da7866c4e112cafff72401f61a672c7c8a20edc585a7016ef5f - languageName: node - linkType: hard - -"npmlog@npm:^6.0.0": - version: 6.0.2 - resolution: "npmlog@npm:6.0.2" - dependencies: - are-we-there-yet: ^3.0.0 - console-control-strings: ^1.1.0 - gauge: ^4.0.3 - set-blocking: ^2.0.0 - checksum: ae238cd264a1c3f22091cdd9e2b106f684297d3c184f1146984ecbe18aaa86343953f26b9520dedd1b1372bc0316905b736c1932d778dbeb1fcf5a1001390e2a - languageName: node - linkType: hard - -"nth-check@npm:^2.0.1": - version: 2.1.1 - resolution: "nth-check@npm:2.1.1" - dependencies: - boolbase: ^1.0.0 - checksum: 5afc3dafcd1573b08877ca8e6148c52abd565f1d06b1eb08caf982e3fa289a82f2cae697ffb55b5021e146d60443f1590a5d6b944844e944714a5b549675bcd3 - languageName: node - linkType: hard - -"num2fraction@npm:^1.2.2": - version: 1.2.2 - resolution: "num2fraction@npm:1.2.2" - checksum: 1da9c6797b505d3f5b17c7f694c4fa31565bdd5c0e5d669553253aed848a580804cd285280e8a73148bd9628839267daee4967f24b53d4e893e44b563e412635 - languageName: node - linkType: hard - -"object-assign@npm:^4.0.1, object-assign@npm:^4.1.1": - version: 4.1.1 - resolution: "object-assign@npm:4.1.1" - checksum: fcc6e4ea8c7fe48abfbb552578b1c53e0d194086e2e6bbbf59e0a536381a292f39943c6e9628af05b5528aa5e3318bb30d6b2e53cadaf5b8fe9e12c4b69af23f - languageName: node - linkType: hard - -"object-copy@npm:^0.1.0": - version: 0.1.0 - resolution: "object-copy@npm:0.1.0" - dependencies: - copy-descriptor: ^0.1.0 - define-property: ^0.2.5 - kind-of: ^3.0.3 - checksum: a9e35f07e3a2c882a7e979090360d1a20ab51d1fa19dfdac3aa8873b328a7c4c7683946ee97c824ae40079d848d6740a3788fa14f2185155dab7ed970a72c783 - languageName: node - linkType: hard - -"object-inspect@npm:^1.12.0, object-inspect@npm:^1.9.0": - version: 1.12.2 - resolution: "object-inspect@npm:1.12.2" - checksum: a534fc1b8534284ed71f25ce3a496013b7ea030f3d1b77118f6b7b1713829262be9e6243acbcb3ef8c626e2b64186112cb7f6db74e37b2789b9c789ca23048b2 - languageName: node - linkType: hard - -"object-inspect@npm:^1.13.1": - version: 1.13.2 - resolution: "object-inspect@npm:1.13.2" - checksum: 9f850b3c045db60e0e97746e809ee4090d6ce62195af17dd1e9438ac761394a7d8ec4f7906559aea5424eaf61e35d3e53feded2ccd5f62fcc7d9670d3c8eb353 - languageName: node - linkType: hard - -"object-is@npm:^1.1.5": - version: 1.1.5 - resolution: "object-is@npm:1.1.5" - dependencies: - call-bind: ^1.0.2 - define-properties: ^1.1.3 - checksum: 989b18c4cba258a6b74dc1d74a41805c1a1425bce29f6cabb50dcb1a6a651ea9104a1b07046739a49a5bb1bc49727bcb00efd5c55f932f6ea04ec8927a7901fe - languageName: node - linkType: hard - -"object-keys@npm:^1.1.1": - version: 1.1.1 - resolution: "object-keys@npm:1.1.1" - checksum: b363c5e7644b1e1b04aa507e88dcb8e3a2f52b6ffd0ea801e4c7a62d5aa559affe21c55a07fd4b1fd55fc03a33c610d73426664b20032405d7b92a1414c34d6a - languageName: node - linkType: hard - -"object-visit@npm:^1.0.0": - version: 1.0.1 - resolution: "object-visit@npm:1.0.1" - dependencies: - isobject: ^3.0.0 - checksum: b0ee07f5bf3bb881b881ff53b467ebbde2b37ebb38649d6944a6cd7681b32eedd99da9bd1e01c55facf81f54ed06b13af61aba6ad87f0052982995e09333f790 - languageName: node - linkType: hard - -"object.assign@npm:^4.1.0, object.assign@npm:^4.1.2, object.assign@npm:^4.1.4": - version: 4.1.4 - resolution: "object.assign@npm:4.1.4" - dependencies: - call-bind: ^1.0.2 - define-properties: ^1.1.4 - has-symbols: ^1.0.3 - object-keys: ^1.1.1 - checksum: 76cab513a5999acbfe0ff355f15a6a125e71805fcf53de4e9d4e082e1989bdb81d1e329291e1e4e0ae7719f0e4ef80e88fb2d367ae60500d79d25a6224ac8864 - languageName: node - linkType: hard - -"object.entries@npm:^1.1.0": - version: 1.1.5 - resolution: "object.entries@npm:1.1.5" - dependencies: - call-bind: ^1.0.2 - define-properties: ^1.1.3 - es-abstract: ^1.19.1 - checksum: d658696f74fd222060d8428d2a9fda2ce736b700cb06f6bdf4a16a1892d145afb746f453502b2fa55d1dca8ead6f14ddbcf66c545df45adadea757a6c4cd86c7 - languageName: node - linkType: hard - -"object.fromentries@npm:^2.0.0 || ^1.0.0": - version: 2.0.5 - resolution: "object.fromentries@npm:2.0.5" - dependencies: - call-bind: ^1.0.2 - define-properties: ^1.1.3 - es-abstract: ^1.19.1 - checksum: 61a0b565ded97b76df9e30b569729866e1824cce902f98e90bb106e84f378aea20163366f66dc75c9000e2aad2ed0caf65c6f530cb2abc4c0c0f6c982102db4b - languageName: node - linkType: hard - -"object.getownpropertydescriptors@npm:^2.0.3, object.getownpropertydescriptors@npm:^2.1.2": - version: 2.1.4 - resolution: "object.getownpropertydescriptors@npm:2.1.4" - dependencies: - array.prototype.reduce: ^1.0.4 - call-bind: ^1.0.2 - define-properties: ^1.1.4 - es-abstract: ^1.20.1 - checksum: 988c466fe49fc4f19a28d2d1d894c95c6abfe33c94674ec0b14d96eed71f453c7ad16873d430dc2acbb1760de6d3d2affac4b81237a306012cc4dc49f7539e7f - languageName: node - linkType: hard - -"object.pick@npm:^1.3.0": - version: 1.3.0 - resolution: "object.pick@npm:1.3.0" - dependencies: - isobject: ^3.0.1 - checksum: 77fb6eed57c67adf75e9901187e37af39f052ef601cb4480386436561357eb9e459e820762f01fd02c5c1b42ece839ad393717a6d1850d848ee11fbabb3e580a - languageName: node - linkType: hard - -"object.values@npm:^1.1.0": - version: 1.1.5 - resolution: "object.values@npm:1.1.5" - dependencies: - call-bind: ^1.0.2 - define-properties: ^1.1.3 - es-abstract: ^1.19.1 - checksum: 0f17e99741ebfbd0fa55ce942f6184743d3070c61bd39221afc929c8422c4907618c8da694c6915bc04a83ab3224260c779ba37fc07bb668bdc5f33b66a902a4 - languageName: node - linkType: hard - -"objectorarray@npm:^1.0.5": - version: 1.0.5 - resolution: "objectorarray@npm:1.0.5" - checksum: 8fd776aa495d113e217837f4adc1d53e63f656498237094d25f84c3e2c038b34b71d6fd85c4b60c7ae5f558790e5042426a400fae3eac35f297e11be12643a78 - languageName: node - linkType: hard - -"on-finished@npm:2.4.1": - version: 2.4.1 - resolution: "on-finished@npm:2.4.1" - dependencies: - ee-first: 1.1.1 - checksum: d20929a25e7f0bb62f937a425b5edeb4e4cde0540d77ba146ec9357f00b0d497cdb3b9b05b9c8e46222407d1548d08166bff69cc56dfa55ba0e4469228920ff0 - languageName: node - linkType: hard - -"on-headers@npm:~1.0.2": - version: 1.0.2 - resolution: "on-headers@npm:1.0.2" - checksum: 2bf13467215d1e540a62a75021e8b318a6cfc5d4fc53af8e8f84ad98dbcea02d506c6d24180cd62e1d769c44721ba542f3154effc1f7579a8288c9f7873ed8e5 + checksum: 6fa729cc77ce4162cfad8abbc9ba31d4a0ff6850c3af61d59b505653bef4781ec059f8890ecfe93ee8aa0c511093369cca88bfc998101616a2904e715bbbb7c9 languageName: node linkType: hard @@ -4401,27 +4115,9 @@ __metadata: linkType: hard "punycode@npm:^2.1.0": - version: 2.1.1 - resolution: "punycode@npm:2.1.1" - checksum: 823bf443c6dd14f669984dea25757b37993f67e8d94698996064035edd43bed8a5a17a9f12e439c2b35df1078c6bec05a6c86e336209eb1061e8025c481168e8 - languageName: node - linkType: hard - -"qs@npm:6.13.0": - version: 6.13.0 - resolution: "qs@npm:6.13.0" - dependencies: - side-channel: ^1.0.6 - checksum: e9404dc0fc2849245107108ce9ec2766cde3be1b271de0bf1021d049dc5b98d1a2901e67b431ac5509f865420a7ed80b7acb3980099fe1c118a1c5d2e1432ad8 - languageName: node - linkType: hard - -"qs@npm:^6.10.0": - version: 6.11.0 - resolution: "qs@npm:6.11.0" - dependencies: - side-channel: ^1.0.4 - checksum: 6e1f29dd5385f7488ec74ac7b6c92f4d09a90408882d0c208414a34dd33badc1a621019d4c799a3df15ab9b1d0292f97c1dd71dc7c045e69f81a8064e5af7297 + version: 2.3.1 + resolution: "punycode@npm:2.3.1" + checksum: bb0a0ceedca4c3c57a9b981b90601579058903c62be23c5e8e843d2c2d4148a3ecf029d5133486fb0e1822b098ba8bba09e89d6b21742d02fa26bda6441a6fb2 languageName: node linkType: hard @@ -4742,36 +4438,6 @@ __metadata: languageName: node linkType: hard -"side-channel@npm:^1.0.4": - version: 1.0.4 - resolution: "side-channel@npm:1.0.4" - dependencies: - call-bind: ^1.0.0 - get-intrinsic: ^1.0.2 - object-inspect: ^1.9.0 - checksum: 351e41b947079c10bd0858364f32bb3a7379514c399edb64ab3dce683933483fc63fb5e4efe0a15a2e8a7e3c436b6a91736ddb8d8c6591b0460a24bb4a1ee245 - languageName: node - linkType: hard - -"side-channel@npm:^1.0.6": - version: 1.0.6 - resolution: "side-channel@npm:1.0.6" - dependencies: - call-bind: ^1.0.7 - es-errors: ^1.3.0 - get-intrinsic: ^1.2.4 - object-inspect: ^1.13.1 - checksum: bfc1afc1827d712271453e91b7cd3878ac0efd767495fd4e594c4c2afaa7963b7b510e249572bfd54b0527e66e4a12b61b80c061389e129755f34c493aad9b97 - languageName: node - linkType: hard - -"signal-exit@npm:^3.0.0, signal-exit@npm:^3.0.2, signal-exit@npm:^3.0.3, signal-exit@npm:^3.0.7": - version: 3.0.7 - resolution: "signal-exit@npm:3.0.7" - checksum: a2f098f247adc367dffc27845853e9959b9e88b01cb301658cfe4194352d8d2bb32e18467c786a7fe15f1d44b233ea35633d076d5e737870b7139949d1ab6318 - languageName: node - linkType: hard - "signal-exit@npm:^4.0.1": version: 4.1.0 resolution: "signal-exit@npm:4.1.0" @@ -4779,20 +4445,6 @@ __metadata: languageName: node linkType: hard -"sisteransi@npm:^1.0.5": - version: 1.0.5 - resolution: "sisteransi@npm:1.0.5" - checksum: aba6438f46d2bfcef94cf112c835ab395172c75f67453fe05c340c770d3c402363018ae1ab4172a1026a90c47eaccf3af7b6ff6fa749a680c2929bd7fa2b37a4 - languageName: node - linkType: hard - -"slash@npm:^2.0.0": - version: 2.0.0 - resolution: "slash@npm:2.0.0" - checksum: 512d4350735375bd11647233cb0e2f93beca6f53441015eea241fe784d8068281c3987fbaa93e7ef1c38df68d9c60013045c92837423c69115297d6169aa85e6 - languageName: node - linkType: hard - "slash@npm:^3.0.0": version: 3.0.0 resolution: "slash@npm:3.0.0" From 67bf8321f086f551d4e8a7e988e02d760a408a5e Mon Sep 17 00:00:00 2001 From: Jonathan Roebuck Date: Fri, 18 Oct 2024 11:57:33 +0100 Subject: [PATCH 134/161] add docs root index.md file with link to Backstage overview Signed-off-by: Jonathan Roebuck --- docs/index.md | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 docs/index.md diff --git a/docs/index.md b/docs/index.md new file mode 100644 index 0000000000..12286c9c2e --- /dev/null +++ b/docs/index.md @@ -0,0 +1,7 @@ +--- +id: docs-index +title: Backstage docs +description: Learn about Backstage, an open-source framework for building developer portals. +--- + +For an introduction to Backstage and its features, check out the [What is Backstage?](./overview/what-is-backstage.md) page. From 16a436abfc0cb91d7ac6750e4969b874ec91b419 Mon Sep 17 00:00:00 2001 From: Jonathan Roebuck Date: Tue, 22 Oct 2024 12:57:29 +0100 Subject: [PATCH 135/161] use redirect instead of docs/index.md Signed-off-by: Jonathan Roebuck --- docs/index.md | 7 ------- mkdocs.yml | 3 +++ 2 files changed, 3 insertions(+), 7 deletions(-) delete mode 100644 docs/index.md diff --git a/docs/index.md b/docs/index.md deleted file mode 100644 index 12286c9c2e..0000000000 --- a/docs/index.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -id: docs-index -title: Backstage docs -description: Learn about Backstage, an open-source framework for building developer portals. ---- - -For an introduction to Backstage and its features, check out the [What is Backstage?](./overview/what-is-backstage.md) page. diff --git a/mkdocs.yml b/mkdocs.yml index aa545111d4..76467e9476 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -5,6 +5,9 @@ edit_uri: edit/master/docs plugins: - techdocs-core + - redirects: + redirect_maps: + 'index.md': 'overview/what-is-backstage.md' # For sidebar navigation on https://backstage.io/, see `microsite/sidebars.js` nav: From 2bfd20ae44d598be5e00c8c9bc15d50137f312f4 Mon Sep 17 00:00:00 2001 From: Jonathan Roebuck Date: Tue, 5 Nov 2024 10:29:13 +0000 Subject: [PATCH 136/161] fix double redirect bug Signed-off-by: Jonathan Roebuck --- .../components/TechDocsReaderPageContent/dom.tsx | 2 +- .../src/reader/transformers/handleMetaRedirects.tsx | 12 +++++------- 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/plugins/techdocs/src/reader/components/TechDocsReaderPageContent/dom.tsx b/plugins/techdocs/src/reader/components/TechDocsReaderPageContent/dom.tsx index 3656d22326..901a2f56a9 100644 --- a/plugins/techdocs/src/reader/components/TechDocsReaderPageContent/dom.tsx +++ b/plugins/techdocs/src/reader/components/TechDocsReaderPageContent/dom.tsx @@ -187,7 +187,7 @@ export const useTechDocsReaderDom = ( const postRender = useCallback( async (transformedElement: Element) => transformer(transformedElement, [ - handleMetaRedirects(navigate, entityRef.name), + handleMetaRedirects(entityRef.name), scrollIntoNavigation(), copyToClipboard(theme), addLinkClickListener({ diff --git a/plugins/techdocs/src/reader/transformers/handleMetaRedirects.tsx b/plugins/techdocs/src/reader/transformers/handleMetaRedirects.tsx index 04b7b27ba2..99adbee1bd 100644 --- a/plugins/techdocs/src/reader/transformers/handleMetaRedirects.tsx +++ b/plugins/techdocs/src/reader/transformers/handleMetaRedirects.tsx @@ -20,10 +20,7 @@ import React from 'react'; import { renderReactElement } from './renderReactElement'; import { TechDocsRedirectNotification } from '../components/TechDocsRedirectNotification'; -export const handleMetaRedirects = ( - navigate: (to: string) => void, - entityName: string, -): Transformer => { +export const handleMetaRedirects = (entityName: string): Transformer => { const redirectAfterMs = 3000; const determineRedirectURL = (metaUrl: string) => { @@ -55,7 +52,6 @@ export const handleMetaRedirects = ( if (!metaContentParameters || metaContentParameters.length < 2) { return dom; } - const metaUrl = metaContentParameters[1]; const redirectURL = determineRedirectURL(metaUrl); @@ -69,7 +65,9 @@ export const handleMetaRedirects = ( renderReactElement( navigate(redirectURL)} + handleButtonClick={() => { + window.location.href = redirectURL; + }} autoHideDuration={redirectAfterMs} />, container, @@ -77,7 +75,7 @@ export const handleMetaRedirects = ( document.body.appendChild(container); setTimeout(() => { - navigate(redirectURL); + window.location.href = redirectURL; }, redirectAfterMs); return dom; From b5ee3f5d3baf53b7778f4079bda15fe3cc18d529 Mon Sep 17 00:00:00 2001 From: Jonathan Roebuck Date: Tue, 5 Nov 2024 11:43:50 +0000 Subject: [PATCH 137/161] fix test Signed-off-by: Jonathan Roebuck --- .../src/reader/transformers/handleMetaRedirects.test.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/techdocs/src/reader/transformers/handleMetaRedirects.test.ts b/plugins/techdocs/src/reader/transformers/handleMetaRedirects.test.ts index 0be1773846..bb1f49d14b 100644 --- a/plugins/techdocs/src/reader/transformers/handleMetaRedirects.test.ts +++ b/plugins/techdocs/src/reader/transformers/handleMetaRedirects.test.ts @@ -38,7 +38,7 @@ describe('handleMetaRedirects', () => { }); return await createTestShadowDom(html, { preTransformers: [], - postTransformers: [handleMetaRedirects(navigate, entityName)], + postTransformers: [handleMetaRedirects(entityName)], }); }; beforeEach(() => { From 85db4aec871939430f9b6b599be08f0661762254 Mon Sep 17 00:00:00 2001 From: Jonathan Roebuck Date: Wed, 6 Nov 2024 08:52:18 +0000 Subject: [PATCH 138/161] Revert "fix test" This reverts commit 4b398ae6575a3a024a125c8ae8e200fc2d50414a. Signed-off-by: Jonathan Roebuck --- .../src/reader/transformers/handleMetaRedirects.test.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/techdocs/src/reader/transformers/handleMetaRedirects.test.ts b/plugins/techdocs/src/reader/transformers/handleMetaRedirects.test.ts index bb1f49d14b..0be1773846 100644 --- a/plugins/techdocs/src/reader/transformers/handleMetaRedirects.test.ts +++ b/plugins/techdocs/src/reader/transformers/handleMetaRedirects.test.ts @@ -38,7 +38,7 @@ describe('handleMetaRedirects', () => { }); return await createTestShadowDom(html, { preTransformers: [], - postTransformers: [handleMetaRedirects(entityName)], + postTransformers: [handleMetaRedirects(navigate, entityName)], }); }; beforeEach(() => { From 67b04f0e0c5c13ac0c44790081b9bf011930c203 Mon Sep 17 00:00:00 2001 From: Jonathan Roebuck Date: Wed, 6 Nov 2024 08:52:27 +0000 Subject: [PATCH 139/161] Revert "fix double redirect bug" This reverts commit 5d7f3702199e268d24340e954df7c41707f15eac. Signed-off-by: Jonathan Roebuck --- .../components/TechDocsReaderPageContent/dom.tsx | 2 +- .../src/reader/transformers/handleMetaRedirects.tsx | 12 +++++++----- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/plugins/techdocs/src/reader/components/TechDocsReaderPageContent/dom.tsx b/plugins/techdocs/src/reader/components/TechDocsReaderPageContent/dom.tsx index 901a2f56a9..3656d22326 100644 --- a/plugins/techdocs/src/reader/components/TechDocsReaderPageContent/dom.tsx +++ b/plugins/techdocs/src/reader/components/TechDocsReaderPageContent/dom.tsx @@ -187,7 +187,7 @@ export const useTechDocsReaderDom = ( const postRender = useCallback( async (transformedElement: Element) => transformer(transformedElement, [ - handleMetaRedirects(entityRef.name), + handleMetaRedirects(navigate, entityRef.name), scrollIntoNavigation(), copyToClipboard(theme), addLinkClickListener({ diff --git a/plugins/techdocs/src/reader/transformers/handleMetaRedirects.tsx b/plugins/techdocs/src/reader/transformers/handleMetaRedirects.tsx index 99adbee1bd..04b7b27ba2 100644 --- a/plugins/techdocs/src/reader/transformers/handleMetaRedirects.tsx +++ b/plugins/techdocs/src/reader/transformers/handleMetaRedirects.tsx @@ -20,7 +20,10 @@ import React from 'react'; import { renderReactElement } from './renderReactElement'; import { TechDocsRedirectNotification } from '../components/TechDocsRedirectNotification'; -export const handleMetaRedirects = (entityName: string): Transformer => { +export const handleMetaRedirects = ( + navigate: (to: string) => void, + entityName: string, +): Transformer => { const redirectAfterMs = 3000; const determineRedirectURL = (metaUrl: string) => { @@ -52,6 +55,7 @@ export const handleMetaRedirects = (entityName: string): Transformer => { if (!metaContentParameters || metaContentParameters.length < 2) { return dom; } + const metaUrl = metaContentParameters[1]; const redirectURL = determineRedirectURL(metaUrl); @@ -65,9 +69,7 @@ export const handleMetaRedirects = (entityName: string): Transformer => { renderReactElement( { - window.location.href = redirectURL; - }} + handleButtonClick={() => navigate(redirectURL)} autoHideDuration={redirectAfterMs} />, container, @@ -75,7 +77,7 @@ export const handleMetaRedirects = (entityName: string): Transformer => { document.body.appendChild(container); setTimeout(() => { - window.location.href = redirectURL; + navigate(redirectURL); }, redirectAfterMs); return dom; From d35c13f81d34a697552e2a467a042acaa57314c8 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 6 Nov 2024 09:19:32 +0000 Subject: [PATCH 140/161] fix(deps): update swc monorepo Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 102 +++++++++++++++++++++++++++--------------------------- 1 file changed, 51 insertions(+), 51 deletions(-) diff --git a/yarn.lock b/yarn.lock index 690bff2107..4f473b1966 100644 --- a/yarn.lock +++ b/yarn.lock @@ -17702,92 +17702,92 @@ __metadata: languageName: node linkType: hard -"@swc/core-darwin-arm64@npm:1.7.36": - version: 1.7.36 - resolution: "@swc/core-darwin-arm64@npm:1.7.36" +"@swc/core-darwin-arm64@npm:1.8.0": + version: 1.8.0 + resolution: "@swc/core-darwin-arm64@npm:1.8.0" conditions: os=darwin & cpu=arm64 languageName: node linkType: hard -"@swc/core-darwin-x64@npm:1.7.36": - version: 1.7.36 - resolution: "@swc/core-darwin-x64@npm:1.7.36" +"@swc/core-darwin-x64@npm:1.8.0": + version: 1.8.0 + resolution: "@swc/core-darwin-x64@npm:1.8.0" conditions: os=darwin & cpu=x64 languageName: node linkType: hard -"@swc/core-linux-arm-gnueabihf@npm:1.7.36": - version: 1.7.36 - resolution: "@swc/core-linux-arm-gnueabihf@npm:1.7.36" +"@swc/core-linux-arm-gnueabihf@npm:1.8.0": + version: 1.8.0 + resolution: "@swc/core-linux-arm-gnueabihf@npm:1.8.0" conditions: os=linux & cpu=arm languageName: node linkType: hard -"@swc/core-linux-arm64-gnu@npm:1.7.36": - version: 1.7.36 - resolution: "@swc/core-linux-arm64-gnu@npm:1.7.36" +"@swc/core-linux-arm64-gnu@npm:1.8.0": + version: 1.8.0 + resolution: "@swc/core-linux-arm64-gnu@npm:1.8.0" conditions: os=linux & cpu=arm64 & libc=glibc languageName: node linkType: hard -"@swc/core-linux-arm64-musl@npm:1.7.36": - version: 1.7.36 - resolution: "@swc/core-linux-arm64-musl@npm:1.7.36" +"@swc/core-linux-arm64-musl@npm:1.8.0": + version: 1.8.0 + resolution: "@swc/core-linux-arm64-musl@npm:1.8.0" conditions: os=linux & cpu=arm64 & libc=musl languageName: node linkType: hard -"@swc/core-linux-x64-gnu@npm:1.7.36": - version: 1.7.36 - resolution: "@swc/core-linux-x64-gnu@npm:1.7.36" +"@swc/core-linux-x64-gnu@npm:1.8.0": + version: 1.8.0 + resolution: "@swc/core-linux-x64-gnu@npm:1.8.0" conditions: os=linux & cpu=x64 & libc=glibc languageName: node linkType: hard -"@swc/core-linux-x64-musl@npm:1.7.36": - version: 1.7.36 - resolution: "@swc/core-linux-x64-musl@npm:1.7.36" +"@swc/core-linux-x64-musl@npm:1.8.0": + version: 1.8.0 + resolution: "@swc/core-linux-x64-musl@npm:1.8.0" conditions: os=linux & cpu=x64 & libc=musl languageName: node linkType: hard -"@swc/core-win32-arm64-msvc@npm:1.7.36": - version: 1.7.36 - resolution: "@swc/core-win32-arm64-msvc@npm:1.7.36" +"@swc/core-win32-arm64-msvc@npm:1.8.0": + version: 1.8.0 + resolution: "@swc/core-win32-arm64-msvc@npm:1.8.0" conditions: os=win32 & cpu=arm64 languageName: node linkType: hard -"@swc/core-win32-ia32-msvc@npm:1.7.36": - version: 1.7.36 - resolution: "@swc/core-win32-ia32-msvc@npm:1.7.36" +"@swc/core-win32-ia32-msvc@npm:1.8.0": + version: 1.8.0 + resolution: "@swc/core-win32-ia32-msvc@npm:1.8.0" conditions: os=win32 & cpu=ia32 languageName: node linkType: hard -"@swc/core-win32-x64-msvc@npm:1.7.36": - version: 1.7.36 - resolution: "@swc/core-win32-x64-msvc@npm:1.7.36" +"@swc/core-win32-x64-msvc@npm:1.8.0": + version: 1.8.0 + resolution: "@swc/core-win32-x64-msvc@npm:1.8.0" conditions: os=win32 & cpu=x64 languageName: node linkType: hard "@swc/core@npm:^1.3.46": - version: 1.7.36 - resolution: "@swc/core@npm:1.7.36" + version: 1.8.0 + resolution: "@swc/core@npm:1.8.0" dependencies: - "@swc/core-darwin-arm64": 1.7.36 - "@swc/core-darwin-x64": 1.7.36 - "@swc/core-linux-arm-gnueabihf": 1.7.36 - "@swc/core-linux-arm64-gnu": 1.7.36 - "@swc/core-linux-arm64-musl": 1.7.36 - "@swc/core-linux-x64-gnu": 1.7.36 - "@swc/core-linux-x64-musl": 1.7.36 - "@swc/core-win32-arm64-msvc": 1.7.36 - "@swc/core-win32-ia32-msvc": 1.7.36 - "@swc/core-win32-x64-msvc": 1.7.36 + "@swc/core-darwin-arm64": 1.8.0 + "@swc/core-darwin-x64": 1.8.0 + "@swc/core-linux-arm-gnueabihf": 1.8.0 + "@swc/core-linux-arm64-gnu": 1.8.0 + "@swc/core-linux-arm64-musl": 1.8.0 + "@swc/core-linux-x64-gnu": 1.8.0 + "@swc/core-linux-x64-musl": 1.8.0 + "@swc/core-win32-arm64-msvc": 1.8.0 + "@swc/core-win32-ia32-msvc": 1.8.0 + "@swc/core-win32-x64-msvc": 1.8.0 "@swc/counter": ^0.1.3 - "@swc/types": ^0.1.13 + "@swc/types": ^0.1.14 peerDependencies: "@swc/helpers": "*" dependenciesMeta: @@ -17814,7 +17814,7 @@ __metadata: peerDependenciesMeta: "@swc/helpers": optional: true - checksum: 848531930b7d179b2bb9ba38e0d39dd127d66b16cc5c9ee9ec318fd50156ada18bc1368f2d02e0ba745b8f43eec0f695eaf89b6a9f8e52a239c5ab3e4b07ee27 + checksum: 8b62e6399943ef930cd32dd4e34de475baa62be7873ee0d4f89a1c4784e441df1373d9df6dda1c00203cda9907af347329e32874059ff00bed004de1cfc373a1 languageName: node linkType: hard @@ -17835,24 +17835,24 @@ __metadata: linkType: hard "@swc/jest@npm:^0.2.22": - version: 0.2.36 - resolution: "@swc/jest@npm:0.2.36" + version: 0.2.37 + resolution: "@swc/jest@npm:0.2.37" dependencies: "@jest/create-cache-key-function": ^29.7.0 "@swc/counter": ^0.1.3 jsonc-parser: ^3.2.0 peerDependencies: "@swc/core": "*" - checksum: 14f2e696ac093e23dae1e2e57d894bbcde4de6fe80341a26c8d0d8cbae5aae31832f8fa32dc698529f128d19a76aeedf2227f59480de6dab5eb3f30bfdf9b71a + checksum: 8d9a16404068c7f7d0548bc62f9d1465592178affbc7fe105dd59d463975d82cdcab2e0582c2a542250e6d240c76828bdbc404c77c85dd4d81061eb720351c4a languageName: node linkType: hard -"@swc/types@npm:^0.1.13": - version: 0.1.13 - resolution: "@swc/types@npm:0.1.13" +"@swc/types@npm:^0.1.14": + version: 0.1.14 + resolution: "@swc/types@npm:0.1.14" dependencies: "@swc/counter": ^0.1.3 - checksum: 4d9ef0fba20e410bee38b20b60eeb284a1284c1cf6b5f84754b6f5e467e5e0621e2db67dc31e22c524a8d63f36d0a1d530126cd97752a85f140d91bf53553e01 + checksum: d7f198e1a07f4dbcff62a9823dfa81703e0029a908a02f9e9bfb9f18bc259c05b780f3385d36ec220e86a107dd6908f96bdc50319699bd34bf04b01d9adb5d5b languageName: node linkType: hard From da36f4cc9c5165916611de081bff891cfc9e5ead Mon Sep 17 00:00:00 2001 From: Andre Wanlin Date: Wed, 6 Nov 2024 07:53:36 -0600 Subject: [PATCH 141/161] Corrected Bitbucket Server Discovery Frontmatter Signed-off-by: Andre Wanlin --- docs/integrations/bitbucketServer/discovery--old.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/integrations/bitbucketServer/discovery--old.md b/docs/integrations/bitbucketServer/discovery--old.md index d8ef11533b..83fe70da0d 100644 --- a/docs/integrations/bitbucketServer/discovery--old.md +++ b/docs/integrations/bitbucketServer/discovery--old.md @@ -1,5 +1,5 @@ --- -id: discovery +id: discovery--old title: Bitbucket Server Discovery sidebar_label: Discovery # prettier-ignore From e937ae7b1f9b9b8822a965e48046e568f75a33da Mon Sep 17 00:00:00 2001 From: Sydney Achinger <78113809+squid-ney@users.noreply.github.com> Date: Wed, 6 Nov 2024 14:38:34 -0500 Subject: [PATCH 142/161] Fix unecessary re-rendering of site's index page. (#27505) Signed-off-by: Sydney Achinger --- .changeset/hungry-cats-juggle.md | 5 +++++ .../reader/components/TechDocsReaderPageContent/dom.tsx | 8 +++++--- 2 files changed, 10 insertions(+), 3 deletions(-) create mode 100644 .changeset/hungry-cats-juggle.md diff --git a/.changeset/hungry-cats-juggle.md b/.changeset/hungry-cats-juggle.md new file mode 100644 index 0000000000..af52f9388f --- /dev/null +++ b/.changeset/hungry-cats-juggle.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-techdocs': patch +--- + +Fix an issue with index page of documentation site being re-rendered. diff --git a/plugins/techdocs/src/reader/components/TechDocsReaderPageContent/dom.tsx b/plugins/techdocs/src/reader/components/TechDocsReaderPageContent/dom.tsx index 3656d22326..8d23ed7b8b 100644 --- a/plugins/techdocs/src/reader/components/TechDocsReaderPageContent/dom.tsx +++ b/plugins/techdocs/src/reader/components/TechDocsReaderPageContent/dom.tsx @@ -47,6 +47,7 @@ import { handleMetaRedirects, } from '../../transformers'; import { useNavigateUrl } from './useNavigateUrl'; +import { useParams } from 'react-router-dom'; const MOBILE_MEDIA_QUERY = 'screen and (max-width: 76.1875em)'; @@ -69,6 +70,7 @@ export const useTechDocsReaderDom = ( const scmIntegrationsApi = useApi(scmIntegrationsApiRef); const { state, path, content: rawPage } = useTechDocsReader(); + const { '*': currPath = '' } = useParams(); const [dom, setDom] = useState(null); const isStyleLoading = useShadowDomStylesLoading(dom); @@ -277,8 +279,8 @@ export const useTechDocsReaderDom = ( } // Skip this update if the location's path has changed but the state - // contains a page for another page that isn't loaded yet. - if (!window.location.pathname.endsWith(path)) { + // contains a page that isn't loaded yet. + if (currPath !== path) { return; } @@ -297,7 +299,7 @@ export const useTechDocsReaderDom = ( return () => { shouldReplaceContent = false; }; - }, [rawPage, path, preRender, postRender]); + }, [rawPage, currPath, path, preRender, postRender]); return dom; }; From 28e222bbd8b8c174c98f4e36bc2b719662023cec Mon Sep 17 00:00:00 2001 From: Stephen Glass Date: Wed, 6 Nov 2024 15:45:39 -0500 Subject: [PATCH 143/161] Apply suggestions from code review Co-authored-by: Vincenzo Scamporlino Signed-off-by: Stephen Glass --- plugins/scaffolder-common/src/permissions.ts | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/plugins/scaffolder-common/src/permissions.ts b/plugins/scaffolder-common/src/permissions.ts index a81952a568..e758291e75 100644 --- a/plugins/scaffolder-common/src/permissions.ts +++ b/plugins/scaffolder-common/src/permissions.ts @@ -148,12 +148,6 @@ export const scaffolderTaskPermissions = [ taskReadPermission, ]; -/** - * List of the scaffolder permissions that are associated with scaffolder management. - * @alpha - */ -export const scaffolderManagementPermissions = [templateManagementPermission]; - /** * List of all the scaffolder permissions * @alpha @@ -162,5 +156,5 @@ export const scaffolderPermissions = [ ...scaffolderTemplatePermissions, ...scaffolderActionPermissions, ...scaffolderTaskPermissions, - ...scaffolderManagementPermissions, + templateManagementPermission, ]; From 71bb422d4fc6aeda3062be50ec6c315151c851ab Mon Sep 17 00:00:00 2001 From: Stephen Glass Date: Wed, 6 Nov 2024 15:57:10 -0500 Subject: [PATCH 144/161] Update report-alpha.api.md Signed-off-by: Stephen Glass --- plugins/scaffolder-common/report-alpha.api.md | 3 --- 1 file changed, 3 deletions(-) diff --git a/plugins/scaffolder-common/report-alpha.api.md b/plugins/scaffolder-common/report-alpha.api.md index 47ca033731..97a3de63c5 100644 --- a/plugins/scaffolder-common/report-alpha.api.md +++ b/plugins/scaffolder-common/report-alpha.api.md @@ -18,9 +18,6 @@ export const RESOURCE_TYPE_SCAFFOLDER_TEMPLATE = 'scaffolder-template'; // @alpha export const scaffolderActionPermissions: ResourcePermission<'scaffolder-action'>[]; -// @alpha -export const scaffolderManagementPermissions: BasicPermission[]; - // @alpha export const scaffolderPermissions: ( | BasicPermission From f5dbb50004ef630309de83813000ac51a898b6ea Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 7 Nov 2024 08:10:37 +0000 Subject: [PATCH 145/161] chore(deps): update dependency msw to v2.6.1 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index a0a4a4fd26..aaeda1f413 100644 --- a/yarn.lock +++ b/yarn.lock @@ -35544,8 +35544,8 @@ __metadata: linkType: hard "msw@npm:^2.0.0, msw@npm:^2.0.8": - version: 2.6.0 - resolution: "msw@npm:2.6.0" + version: 2.6.1 + resolution: "msw@npm:2.6.1" dependencies: "@bundled-es-modules/cookie": ^2.0.0 "@bundled-es-modules/statuses": ^1.0.1 @@ -35572,7 +35572,7 @@ __metadata: optional: true bin: msw: cli/index.js - checksum: ce1d6d5f926d4c55992e5a7078110780f7d05f6f23bddaa99c4e6a10e1ee3de11f0dbafaa2a916b70445ddbdd8368c2c92e5e50d0c60777a5709e693996c9bc8 + checksum: ac322235fb6edd650537fc7797fac158d30a6ffead1abe968b1dbc49ad6024ae6cfa0a9b6d3f1bec0ad31ecb98c08f276a3b0086dba649d93f87c4140b12a9b9 languageName: node linkType: hard From 3f1fb219bf6509902b5fe5e968b7c09b5e94a8e5 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Thu, 7 Nov 2024 09:51:45 +0100 Subject: [PATCH 146/161] repo-tools: make generate-patch add global resolution entry as fallback Signed-off-by: Patrik Oldsberg --- .changeset/strange-clocks-pretend.md | 5 +++++ .../src/commands/generate-patch/generate-patch.ts | 8 ++++++-- 2 files changed, 11 insertions(+), 2 deletions(-) create mode 100644 .changeset/strange-clocks-pretend.md diff --git a/.changeset/strange-clocks-pretend.md b/.changeset/strange-clocks-pretend.md new file mode 100644 index 0000000000..9a3b6e20ac --- /dev/null +++ b/.changeset/strange-clocks-pretend.md @@ -0,0 +1,5 @@ +--- +'@backstage/repo-tools': patch +--- + +The `generate-patch` command will now fall back to always adding a `resolutions` entry, even if no matching descriptors are found. diff --git a/packages/repo-tools/src/commands/generate-patch/generate-patch.ts b/packages/repo-tools/src/commands/generate-patch/generate-patch.ts index e5d9928cea..3c33d9c1b0 100644 --- a/packages/repo-tools/src/commands/generate-patch/generate-patch.ts +++ b/packages/repo-tools/src/commands/generate-patch/generate-patch.ts @@ -217,8 +217,12 @@ async function loadTrimmedRootPkg(ctx: PatchContext, query?: string) { } return async (patchEntry?: string) => { - for (const descriptor of descriptors) { - resolutionsObj[descriptor] = patchEntry; + if (descriptors.length > 0) { + for (const descriptor of descriptors) { + resolutionsObj[descriptor] = patchEntry; + } + } else { + resolutionsObj[ctx.packageName] = patchEntry; } // We use the same patch for all versions of the package, if they don't // apply it might require manual intervention using the --query option From 95401a8455f7fddcf0f29769634bd50daf770eca Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Thu, 7 Nov 2024 09:52:05 +0100 Subject: [PATCH 147/161] repo-tools: fix generate-patch not including new files Signed-off-by: Patrik Oldsberg --- .changeset/ninety-panthers-provide.md | 5 ++++ .../commands/generate-patch/generate-patch.ts | 23 +++++++++++++++++++ 2 files changed, 28 insertions(+) create mode 100644 .changeset/ninety-panthers-provide.md diff --git a/.changeset/ninety-panthers-provide.md b/.changeset/ninety-panthers-provide.md new file mode 100644 index 0000000000..467344ae61 --- /dev/null +++ b/.changeset/ninety-panthers-provide.md @@ -0,0 +1,5 @@ +--- +'@backstage/repo-tools': patch +--- + +The `generate-patch` command now properly includes newly created files in the patch. diff --git a/packages/repo-tools/src/commands/generate-patch/generate-patch.ts b/packages/repo-tools/src/commands/generate-patch/generate-patch.ts index 3c33d9c1b0..e817abd74b 100644 --- a/packages/repo-tools/src/commands/generate-patch/generate-patch.ts +++ b/packages/repo-tools/src/commands/generate-patch/generate-patch.ts @@ -413,6 +413,23 @@ async function generatePatchForArchives( cwd: patchDir, env: { ...process.env, ...GIT_ENV }, }); + // Commit the base archive contents, so that we can later add all files and diff against the index + await exec( + 'git', + [ + '-c', + 'user.name="patcher"', + '-c', + 'user.email="patcher@acme.org"', + 'commit', + '-m', + 'base', + ], + { + cwd: patchDir, + env: { ...process.env, ...GIT_ENV }, + }, + ); // Remove all existing files for (const path of await fs.readdir(patchDir)) { @@ -428,12 +445,18 @@ async function generatePatchForArchives( // Extract the target archive to use a target for the patch await tar.extract({ file: headPath, cwd: patchDir, strip: 1 }); + // Add and diff against index, to make sure we include untracked files + await exec('git', ['add', '.'], { + cwd: patchDir, + env: { ...process.env, ...GIT_ENV }, + }); const { stdout: patch } = await exec( 'git', [ '-c', 'core.safecrlf=false', 'diff', + '--cached', '--src-prefix=a/', '--dst-prefix=b/', '--ignore-cr-at-eol', From 0cf38e198649ed932c8577da0e49601fe266f0ae Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 7 Nov 2024 09:03:34 +0000 Subject: [PATCH 148/161] chore(deps): update dependency @rspack/core to v1.1.0 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 88 +++++++++++++++++++++++++++---------------------------- 1 file changed, 44 insertions(+), 44 deletions(-) diff --git a/yarn.lock b/yarn.lock index aaeda1f413..731456a9c4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -15632,82 +15632,82 @@ __metadata: languageName: node linkType: hard -"@rspack/binding-darwin-arm64@npm:1.0.14": - version: 1.0.14 - resolution: "@rspack/binding-darwin-arm64@npm:1.0.14" +"@rspack/binding-darwin-arm64@npm:1.1.0": + version: 1.1.0 + resolution: "@rspack/binding-darwin-arm64@npm:1.1.0" conditions: os=darwin & cpu=arm64 languageName: node linkType: hard -"@rspack/binding-darwin-x64@npm:1.0.14": - version: 1.0.14 - resolution: "@rspack/binding-darwin-x64@npm:1.0.14" +"@rspack/binding-darwin-x64@npm:1.1.0": + version: 1.1.0 + resolution: "@rspack/binding-darwin-x64@npm:1.1.0" conditions: os=darwin & cpu=x64 languageName: node linkType: hard -"@rspack/binding-linux-arm64-gnu@npm:1.0.14": - version: 1.0.14 - resolution: "@rspack/binding-linux-arm64-gnu@npm:1.0.14" +"@rspack/binding-linux-arm64-gnu@npm:1.1.0": + version: 1.1.0 + resolution: "@rspack/binding-linux-arm64-gnu@npm:1.1.0" conditions: os=linux & cpu=arm64 & libc=glibc languageName: node linkType: hard -"@rspack/binding-linux-arm64-musl@npm:1.0.14": - version: 1.0.14 - resolution: "@rspack/binding-linux-arm64-musl@npm:1.0.14" +"@rspack/binding-linux-arm64-musl@npm:1.1.0": + version: 1.1.0 + resolution: "@rspack/binding-linux-arm64-musl@npm:1.1.0" conditions: os=linux & cpu=arm64 & libc=musl languageName: node linkType: hard -"@rspack/binding-linux-x64-gnu@npm:1.0.14": - version: 1.0.14 - resolution: "@rspack/binding-linux-x64-gnu@npm:1.0.14" +"@rspack/binding-linux-x64-gnu@npm:1.1.0": + version: 1.1.0 + resolution: "@rspack/binding-linux-x64-gnu@npm:1.1.0" conditions: os=linux & cpu=x64 & libc=glibc languageName: node linkType: hard -"@rspack/binding-linux-x64-musl@npm:1.0.14": - version: 1.0.14 - resolution: "@rspack/binding-linux-x64-musl@npm:1.0.14" +"@rspack/binding-linux-x64-musl@npm:1.1.0": + version: 1.1.0 + resolution: "@rspack/binding-linux-x64-musl@npm:1.1.0" conditions: os=linux & cpu=x64 & libc=musl languageName: node linkType: hard -"@rspack/binding-win32-arm64-msvc@npm:1.0.14": - version: 1.0.14 - resolution: "@rspack/binding-win32-arm64-msvc@npm:1.0.14" +"@rspack/binding-win32-arm64-msvc@npm:1.1.0": + version: 1.1.0 + resolution: "@rspack/binding-win32-arm64-msvc@npm:1.1.0" conditions: os=win32 & cpu=arm64 languageName: node linkType: hard -"@rspack/binding-win32-ia32-msvc@npm:1.0.14": - version: 1.0.14 - resolution: "@rspack/binding-win32-ia32-msvc@npm:1.0.14" +"@rspack/binding-win32-ia32-msvc@npm:1.1.0": + version: 1.1.0 + resolution: "@rspack/binding-win32-ia32-msvc@npm:1.1.0" conditions: os=win32 & cpu=ia32 languageName: node linkType: hard -"@rspack/binding-win32-x64-msvc@npm:1.0.14": - version: 1.0.14 - resolution: "@rspack/binding-win32-x64-msvc@npm:1.0.14" +"@rspack/binding-win32-x64-msvc@npm:1.1.0": + version: 1.1.0 + resolution: "@rspack/binding-win32-x64-msvc@npm:1.1.0" conditions: os=win32 & cpu=x64 languageName: node linkType: hard -"@rspack/binding@npm:1.0.14": - version: 1.0.14 - resolution: "@rspack/binding@npm:1.0.14" +"@rspack/binding@npm:1.1.0": + version: 1.1.0 + resolution: "@rspack/binding@npm:1.1.0" dependencies: - "@rspack/binding-darwin-arm64": 1.0.14 - "@rspack/binding-darwin-x64": 1.0.14 - "@rspack/binding-linux-arm64-gnu": 1.0.14 - "@rspack/binding-linux-arm64-musl": 1.0.14 - "@rspack/binding-linux-x64-gnu": 1.0.14 - "@rspack/binding-linux-x64-musl": 1.0.14 - "@rspack/binding-win32-arm64-msvc": 1.0.14 - "@rspack/binding-win32-ia32-msvc": 1.0.14 - "@rspack/binding-win32-x64-msvc": 1.0.14 + "@rspack/binding-darwin-arm64": 1.1.0 + "@rspack/binding-darwin-x64": 1.1.0 + "@rspack/binding-linux-arm64-gnu": 1.1.0 + "@rspack/binding-linux-arm64-musl": 1.1.0 + "@rspack/binding-linux-x64-gnu": 1.1.0 + "@rspack/binding-linux-x64-musl": 1.1.0 + "@rspack/binding-win32-arm64-msvc": 1.1.0 + "@rspack/binding-win32-ia32-msvc": 1.1.0 + "@rspack/binding-win32-x64-msvc": 1.1.0 dependenciesMeta: "@rspack/binding-darwin-arm64": optional: true @@ -15727,16 +15727,16 @@ __metadata: optional: true "@rspack/binding-win32-x64-msvc": optional: true - checksum: 0fae05a49eb978cb565ebe78d66a51565fd833ee15b2e1f7739e98ccad706faacdd662c6f10a12d730004f62a8ec3a5e87521746ddc127b0c91116ba751504aa + checksum: 2cdf186dcd63f8dd927a92455f7b57313dd1ed7e0a188f513317a8e67127490bf72a928a8fe9540e329a6036bd72c457b2549c5ea03a6abfc0043d883df34403 languageName: node linkType: hard "@rspack/core@npm:^1.0.10": - version: 1.0.14 - resolution: "@rspack/core@npm:1.0.14" + version: 1.1.0 + resolution: "@rspack/core@npm:1.1.0" dependencies: "@module-federation/runtime-tools": 0.5.1 - "@rspack/binding": 1.0.14 + "@rspack/binding": 1.1.0 "@rspack/lite-tapable": 1.0.1 caniuse-lite: ^1.0.30001616 peerDependencies: @@ -15744,7 +15744,7 @@ __metadata: peerDependenciesMeta: "@swc/helpers": optional: true - checksum: 0aeb557b36ba03b0c8a51f5e46d4671c245fb6e3b47c26ecb5c9e0d18afece9c88266c3ff3a809345fc5f6dbdeb63747a2495397a153537531c5224de340c38e + checksum: 9c620784f8cfe3f88d18551aa578b8ec8ebd1e5d78eb4753a39a847893e8ca7d221ef1c5deb3332de35ad35e0de0709ffe890e692841a123c5740694efbc67cf languageName: node linkType: hard From aa9ab97d790b42c1534256cdc24d949816e0d9f0 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 7 Nov 2024 10:06:08 +0000 Subject: [PATCH 149/161] fix(deps): update dependency @module-federation/enhanced to v0.7.1 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 174 +++++++++++++++++++++++++++--------------------------- 1 file changed, 87 insertions(+), 87 deletions(-) diff --git a/yarn.lock b/yarn.lock index 731456a9c4..6a115513dd 100644 --- a/yarn.lock +++ b/yarn.lock @@ -11605,39 +11605,39 @@ __metadata: languageName: node linkType: hard -"@module-federation/bridge-react-webpack-plugin@npm:0.7.0": - version: 0.7.0 - resolution: "@module-federation/bridge-react-webpack-plugin@npm:0.7.0" +"@module-federation/bridge-react-webpack-plugin@npm:0.7.1": + version: 0.7.1 + resolution: "@module-federation/bridge-react-webpack-plugin@npm:0.7.1" dependencies: - "@module-federation/sdk": 0.7.0 + "@module-federation/sdk": 0.7.1 "@types/semver": 7.5.8 semver: 7.6.3 - checksum: d45c415b34169ba13bf9f94c8b84c3ca86059599a160d2a40a72e34f17e7f0413b0897fefb219feaf1e92631624c6f2c38b6c4e4174fba6ec8b44b143a5aafc1 + checksum: 9b3a032b156c5c23d9878da69712dd6b84944c234014cd0ce279da1aa4c493b742b7930ba87ceac33d6beedbfcccaf0bd5aa7cff2a4ab32aea15fe898b5f55b8 languageName: node linkType: hard -"@module-federation/data-prefetch@npm:0.7.0": - version: 0.7.0 - resolution: "@module-federation/data-prefetch@npm:0.7.0" +"@module-federation/data-prefetch@npm:0.7.1": + version: 0.7.1 + resolution: "@module-federation/data-prefetch@npm:0.7.1" dependencies: - "@module-federation/runtime": 0.7.0 - "@module-federation/sdk": 0.7.0 + "@module-federation/runtime": 0.7.1 + "@module-federation/sdk": 0.7.1 fs-extra: 9.1.0 peerDependencies: react: ">=16.9.0" react-dom: ">=16.9.0" - checksum: 01d9b542c6d0b1844f074c85b54e6f8cf6b53c9961eb3cac906963613db8768b32b5259bf94354c87688a9955de1ce33bdfdcbb5dce23c0e32bfabdad8697bc5 + checksum: 41574f11cc6e89cd1223c74dfc69e90423961eb51164203910a24e3846ea4faf73906e77ea9664bafc87ac01642fa20a177aad5a2e21e0cad441c0bf35925255 languageName: node linkType: hard -"@module-federation/dts-plugin@npm:0.7.0": - version: 0.7.0 - resolution: "@module-federation/dts-plugin@npm:0.7.0" +"@module-federation/dts-plugin@npm:0.7.1": + version: 0.7.1 + resolution: "@module-federation/dts-plugin@npm:0.7.1" dependencies: - "@module-federation/error-codes": 0.7.0 - "@module-federation/managers": 0.7.0 - "@module-federation/sdk": 0.7.0 - "@module-federation/third-party-dts-extractor": 0.7.0 + "@module-federation/error-codes": 0.7.1 + "@module-federation/managers": 0.7.1 + "@module-federation/sdk": 0.7.1 + "@module-federation/third-party-dts-extractor": 0.7.1 adm-zip: ^0.5.10 ansi-colors: ^4.1.3 axios: ^1.7.4 @@ -11656,22 +11656,22 @@ __metadata: peerDependenciesMeta: vue-tsc: optional: true - checksum: 08821d8da4d578059b45c84366f805e57f1a2917f526f5d14b8909423c9764850ab07001b22bd4c58a2713d7e64159672872d8576b9a4629b539c62b54d3712f + checksum: 45221b4086e2ca610a91f562577107c2b56a4e87d1fe2933fe7ece4242423efa1c304f6cb5b5dfd561d3457eb5b1a8178fc0b04743310e7d346b63656d6d25ce languageName: node linkType: hard "@module-federation/enhanced@npm:^0.7.0": - version: 0.7.0 - resolution: "@module-federation/enhanced@npm:0.7.0" + version: 0.7.1 + resolution: "@module-federation/enhanced@npm:0.7.1" dependencies: - "@module-federation/bridge-react-webpack-plugin": 0.7.0 - "@module-federation/data-prefetch": 0.7.0 - "@module-federation/dts-plugin": 0.7.0 - "@module-federation/managers": 0.7.0 - "@module-federation/manifest": 0.7.0 - "@module-federation/rspack": 0.7.0 - "@module-federation/runtime-tools": 0.7.0 - "@module-federation/sdk": 0.7.0 + "@module-federation/bridge-react-webpack-plugin": 0.7.1 + "@module-federation/data-prefetch": 0.7.1 + "@module-federation/dts-plugin": 0.7.1 + "@module-federation/managers": 0.7.1 + "@module-federation/manifest": 0.7.1 + "@module-federation/rspack": 0.7.1 + "@module-federation/runtime-tools": 0.7.1 + "@module-federation/sdk": 0.7.1 btoa: ^1.2.1 upath: 2.0.1 peerDependencies: @@ -11685,51 +11685,51 @@ __metadata: optional: true webpack: optional: true - checksum: 320d30bfeeb717e0a451236febae2e0824dabb07dc783b55b57e19389288a3380e9a93683e9675e4a2f80f545fdceb02cb3b3357c9d4fcfa77ee88a3d1fe3929 + checksum: aafb5482d787dd200445e6650062281bcec0496ca9f3282cbd0cec8ec74c5d22de7587c7a5247120e963a9b4cb1691d796694e6f3a08570a0fce59bd58ece3e5 languageName: node linkType: hard -"@module-federation/error-codes@npm:0.7.0": - version: 0.7.0 - resolution: "@module-federation/error-codes@npm:0.7.0" - checksum: fab4559406a3ac388c7871ec26d887e0910596de6eba741e164a6befb67cd06e1494ae9d6579cb34f64c085219f8985819d16b2c8fa1c290fb1108f49a4acc5e +"@module-federation/error-codes@npm:0.7.1": + version: 0.7.1 + resolution: "@module-federation/error-codes@npm:0.7.1" + checksum: 08e9079362c10d7249d0c1166700fc885a541fa520bbfecae72652657ce1a94cb534520244ed4d96e8c356915eb77ad0076216f78286a3779a6739f91b0b6fac languageName: node linkType: hard -"@module-federation/managers@npm:0.7.0": - version: 0.7.0 - resolution: "@module-federation/managers@npm:0.7.0" +"@module-federation/managers@npm:0.7.1": + version: 0.7.1 + resolution: "@module-federation/managers@npm:0.7.1" dependencies: - "@module-federation/sdk": 0.7.0 + "@module-federation/sdk": 0.7.1 find-pkg: 2.0.0 fs-extra: 9.1.0 - checksum: ae7b628fe244bf84e0a3122d937aa51edcbcbe1b8e19b05e84d6c41df835c36440542984116a0fc71df8dabd016804a10882b5e92cff7b08a22fbcc32412317f + checksum: 55c768ba66db87e05931be96a1e9be64e9b2ece140e67e0618f7caf4f239f9856e048b7c2b1abcac3f6b41a5fb992feaa64dd736ecf500028ec983017e44084e languageName: node linkType: hard -"@module-federation/manifest@npm:0.7.0": - version: 0.7.0 - resolution: "@module-federation/manifest@npm:0.7.0" +"@module-federation/manifest@npm:0.7.1": + version: 0.7.1 + resolution: "@module-federation/manifest@npm:0.7.1" dependencies: - "@module-federation/dts-plugin": 0.7.0 - "@module-federation/managers": 0.7.0 - "@module-federation/sdk": 0.7.0 + "@module-federation/dts-plugin": 0.7.1 + "@module-federation/managers": 0.7.1 + "@module-federation/sdk": 0.7.1 chalk: 3.0.0 find-pkg: 2.0.0 - checksum: 590f5bc05da5488ff7ab90f990fd36133998efbaf48447d84ef369a44323126b08d94034739170171abba27ff19b74a11423b4ccb69a991df75e43e169e2410c + checksum: f0f4cf6dae7809e4d009f9e61f69c1ad1b87fbc36b7f8ac9b4805f40ececc8788adc9dd5a848161bfc0b359cb6c85606bac14858e00af80bddb49c014a5e7efa languageName: node linkType: hard -"@module-federation/rspack@npm:0.7.0": - version: 0.7.0 - resolution: "@module-federation/rspack@npm:0.7.0" +"@module-federation/rspack@npm:0.7.1": + version: 0.7.1 + resolution: "@module-federation/rspack@npm:0.7.1" dependencies: - "@module-federation/bridge-react-webpack-plugin": 0.7.0 - "@module-federation/dts-plugin": 0.7.0 - "@module-federation/managers": 0.7.0 - "@module-federation/manifest": 0.7.0 - "@module-federation/runtime-tools": 0.7.0 - "@module-federation/sdk": 0.7.0 + "@module-federation/bridge-react-webpack-plugin": 0.7.1 + "@module-federation/dts-plugin": 0.7.1 + "@module-federation/managers": 0.7.1 + "@module-federation/manifest": 0.7.1 + "@module-federation/runtime-tools": 0.7.1 + "@module-federation/sdk": 0.7.1 peerDependencies: typescript: ^4.9.0 || ^5.0.0 vue-tsc: ">=1.0.24" @@ -11738,7 +11738,7 @@ __metadata: optional: true vue-tsc: optional: true - checksum: 2ab7cc1926a675377875d344442400872f41d7d74d86e507c95921f2fa985c5310cb2d8e234cd054b6b1380961ecda412d56c1689b853f5f13447c95774c1fbe + checksum: bee6c0e8f6dbff6795a1023a66b7f0786d058443ac9297ce6200ed69fe03382a3802fbe19bbf6a47ef5e510aa3bb35dc3c134cdf183c12b7b229e848799db4ac languageName: node linkType: hard @@ -11752,13 +11752,13 @@ __metadata: languageName: node linkType: hard -"@module-federation/runtime-tools@npm:0.7.0": - version: 0.7.0 - resolution: "@module-federation/runtime-tools@npm:0.7.0" +"@module-federation/runtime-tools@npm:0.7.1": + version: 0.7.1 + resolution: "@module-federation/runtime-tools@npm:0.7.1" dependencies: - "@module-federation/runtime": 0.7.0 - "@module-federation/webpack-bundler-runtime": 0.7.0 - checksum: 55830c13c552d77217d854888478e5314e6fbaab4c2066b0afcea23217c815898ea2242747c8856672f549f7614cbab7bd099dc34c1a1fe2153cd452e7d45f47 + "@module-federation/runtime": 0.7.1 + "@module-federation/webpack-bundler-runtime": 0.7.1 + checksum: 878c4f3f36c1166565f27ffe3d29bd9e57f17e225b3b38b40385fb3d8dd8d680f3b33459b7c9cf5d4c9f842aedb51cdb83471bc9eca3fabcaa4ec380be0506b2 languageName: node linkType: hard @@ -11771,13 +11771,13 @@ __metadata: languageName: node linkType: hard -"@module-federation/runtime@npm:0.7.0": - version: 0.7.0 - resolution: "@module-federation/runtime@npm:0.7.0" +"@module-federation/runtime@npm:0.7.1": + version: 0.7.1 + resolution: "@module-federation/runtime@npm:0.7.1" dependencies: - "@module-federation/error-codes": 0.7.0 - "@module-federation/sdk": 0.7.0 - checksum: d7d5ecd0a7accffe8002f3a1af45484d75093dafc4e41f5178423f06adac106e609a0dcf1bc7526ea9cf8609563348e511f39d13f63280ba6bcea9dd3df976fc + "@module-federation/error-codes": 0.7.1 + "@module-federation/sdk": 0.7.1 + checksum: ad290430e84422e305266d299fa0463b2f02629104283c4e10aac9d7fb51786034707da2a2c486e8386cdb31583ad10ab56d26fe502d4e2aad09459effe291fa languageName: node linkType: hard @@ -11788,23 +11788,23 @@ __metadata: languageName: node linkType: hard -"@module-federation/sdk@npm:0.7.0": - version: 0.7.0 - resolution: "@module-federation/sdk@npm:0.7.0" +"@module-federation/sdk@npm:0.7.1": + version: 0.7.1 + resolution: "@module-federation/sdk@npm:0.7.1" dependencies: - isomorphic-rslog: 0.0.5 - checksum: bbfabed2b0864f8d78232dbe659e0efd0dc32d2f6f55e1c2454439d16db6b242a42e5a13d0a210638f63610054cb2fd2f5efeafc50488451838d01b7697a3d2d + isomorphic-rslog: 0.0.6 + checksum: 1b0ca45eac09a9f05b1cd004c0e9ec343f2a4efcde68cd66ca5d58738535d4e05ea0891af29ef45fc80c5cfeb4b18bc0e99427bd693e92e072194b56247246bd languageName: node linkType: hard -"@module-federation/third-party-dts-extractor@npm:0.7.0": - version: 0.7.0 - resolution: "@module-federation/third-party-dts-extractor@npm:0.7.0" +"@module-federation/third-party-dts-extractor@npm:0.7.1": + version: 0.7.1 + resolution: "@module-federation/third-party-dts-extractor@npm:0.7.1" dependencies: find-pkg: 2.0.0 fs-extra: 9.1.0 resolve: 1.22.8 - checksum: 9d178d919e4eebc1bead56a84365a9e43666e3770e6864b06ccce1ffc5fd25253b09c027eb667e9a2f6bfd1f66e5b5622974b75bd04e13cfc537f7f996920a43 + checksum: 5f630e2b2174055dc030614d24b45d4d20f92bdac58afd20eceeea091f085339c5f2cfe386d98eab74cd614ef54eeff1677fbdd2c3aea6f73151069532e7989e languageName: node linkType: hard @@ -11818,13 +11818,13 @@ __metadata: languageName: node linkType: hard -"@module-federation/webpack-bundler-runtime@npm:0.7.0": - version: 0.7.0 - resolution: "@module-federation/webpack-bundler-runtime@npm:0.7.0" +"@module-federation/webpack-bundler-runtime@npm:0.7.1": + version: 0.7.1 + resolution: "@module-federation/webpack-bundler-runtime@npm:0.7.1" dependencies: - "@module-federation/runtime": 0.7.0 - "@module-federation/sdk": 0.7.0 - checksum: 701892fd70e208030813b49cf0cee014c74c1625ede804fb5596da04662f5c1ae5e3046f7ecd42dcaaba657a48baa38c775d8d64648016d666cfd69218188351 + "@module-federation/runtime": 0.7.1 + "@module-federation/sdk": 0.7.1 + checksum: ec5898e2dfca69c6f21c5565ebe1c3e435c50bb28dc6aebfd5c62724e2798f9126569633d0a268de833d364a58a4f693baaef4fef54807a4d7c50ef22faab5e9 languageName: node linkType: hard @@ -31610,10 +31610,10 @@ __metadata: languageName: node linkType: hard -"isomorphic-rslog@npm:0.0.5": - version: 0.0.5 - resolution: "isomorphic-rslog@npm:0.0.5" - checksum: ba3d8a5ca4691ae4e6ef8a50c404b94658618c87bd2ac7618946f8ea067489ee4a16a152b74afe24bcbdfe975e3b3a63e3c5149bf2a929aa781bdd7eb3f1370f +"isomorphic-rslog@npm:0.0.6": + version: 0.0.6 + resolution: "isomorphic-rslog@npm:0.0.6" + checksum: 20ee7ebedecf32a5504b733dd7065780e98434aa64c5ba5d330ae1b5769bb26601f9cb4b70b195e17eaf62c40264396b5431ef371cd32eb2c0c83a5474d59eea languageName: node linkType: hard From 5c04e0f650207fccf926d71c60261d4841c40ee4 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 7 Nov 2024 11:18:17 +0000 Subject: [PATCH 150/161] fix(deps): update react-router monorepo to v6.28.0 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/yarn.lock b/yarn.lock index 6a115513dd..b34d6dee62 100644 --- a/yarn.lock +++ b/yarn.lock @@ -15318,10 +15318,10 @@ __metadata: languageName: node linkType: hard -"@remix-run/router@npm:1.20.0": - version: 1.20.0 - resolution: "@remix-run/router@npm:1.20.0" - checksum: 6bff41117eabb867b17c89baa727580f0a431368b309cd9a1f69767aafa68ea9cac95ff0eeb86d37c2c8655f5cd7c6283d37ae5e6d93e94f648c6112ddb24ede +"@remix-run/router@npm:1.21.0": + version: 1.21.0 + resolution: "@remix-run/router@npm:1.21.0" + checksum: d9477a7772053ad0ffcf03385cfb1a54e56f8a56d1f9f5062de3b1dfcbd019dd73282a00a5a72aa55c120771110982448c165c1405d64540aaef13051a8e45cc languageName: node linkType: hard @@ -39723,15 +39723,15 @@ __metadata: linkType: hard "react-router-dom@npm:^6.3.0": - version: 6.27.0 - resolution: "react-router-dom@npm:6.27.0" + version: 6.28.0 + resolution: "react-router-dom@npm:6.28.0" dependencies: - "@remix-run/router": 1.20.0 - react-router: 6.27.0 + "@remix-run/router": 1.21.0 + react-router: 6.28.0 peerDependencies: react: ">=16.8" react-dom: ">=16.8" - checksum: de3dcc56297a2879a0e3997fa34ba0f3e1b9986a2ad3ef7991f913902ecf38da0282c98f7834f344ce2d881dbab0a382201a57e9f9ef5e9816febdb26dc038b7 + checksum: 0cf4658a92bc66f50ec9d8518c36aa5a402bcadce71fb624ed6f900d73a29ea87ff904a4f2c42279107e75e80cc08c6192563fadcc5d4e642e6d476e38e83b21 languageName: node linkType: hard @@ -39746,14 +39746,14 @@ __metadata: languageName: node linkType: hard -"react-router@npm:6.27.0, react-router@npm:^6.3.0": - version: 6.27.0 - resolution: "react-router@npm:6.27.0" +"react-router@npm:6.28.0, react-router@npm:^6.3.0": + version: 6.28.0 + resolution: "react-router@npm:6.28.0" dependencies: - "@remix-run/router": 1.20.0 + "@remix-run/router": 1.21.0 peerDependencies: react: ">=16.8" - checksum: d22eedc33bcb11891b431655f90eed2d52c2fb3165ad11ca625f62970caf59c4859e6b1a3f92e78902b31ff1a8b2482ebf97ddebb82e9687d1f98730c14e04e6 + checksum: 23246ca957b5c2bc8d6f9a81fee2df2ce4fc3feca3ec27c2fd85999568fc1299a4e8273e4ab70b6f3acd43a1fb45e0c93cb01ef77e68c9f9e1f7e4f42a1419ea languageName: node linkType: hard From 09ea0930a381d84d81441b9078ea831bbf2dc3b9 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Thu, 7 Nov 2024 12:23:46 +0100 Subject: [PATCH 151/161] cli: fix for dist/node_modules being trimmed from published packages Signed-off-by: Patrik Oldsberg --- .changeset/thick-trees-worry.md | 5 +++++ packages/cli/package.json | 1 + packages/cli/src/lib/builder/config.ts | 2 ++ yarn.lock | 13 +++++++++++++ 4 files changed, 21 insertions(+) create mode 100644 .changeset/thick-trees-worry.md diff --git a/.changeset/thick-trees-worry.md b/.changeset/thick-trees-worry.md new file mode 100644 index 0000000000..7f5428f739 --- /dev/null +++ b/.changeset/thick-trees-worry.md @@ -0,0 +1,5 @@ +--- +'@backstage/cli': patch +--- + +Fixed an issue where `.css` style injection would fail for published packages. diff --git a/packages/cli/package.json b/packages/cli/package.json index d886bdde0b..6423fd79f4 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -140,6 +140,7 @@ "rollup-plugin-dts": "^6.1.0", "rollup-plugin-esbuild": "^6.1.1", "rollup-plugin-postcss": "^4.0.0", + "rollup-plugin-rename-node-modules": "^1.3.1", "rollup-pluginutils": "^2.8.2", "semver": "^7.5.3", "style-loader": "^3.3.1", diff --git a/packages/cli/src/lib/builder/config.ts b/packages/cli/src/lib/builder/config.ts index 32ee386ce4..842d133380 100644 --- a/packages/cli/src/lib/builder/config.ts +++ b/packages/cli/src/lib/builder/config.ts @@ -25,6 +25,7 @@ import svgr from '@svgr/rollup'; import dts from 'rollup-plugin-dts'; import json from '@rollup/plugin-json'; import yaml from '@rollup/plugin-yaml'; +import renameNodeModules from 'rollup-plugin-rename-node-modules'; import { RollupOptions, OutputOptions, @@ -181,6 +182,7 @@ export async function makeRollupConfigs( include: /\.icon\.svg$/, template: svgrTemplate, }), + renameNodeModules('node_modules_dist'), esbuild({ target: 'ES2022', minify: options.minify, diff --git a/yarn.lock b/yarn.lock index 6a115513dd..d73f8833fd 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4054,6 +4054,7 @@ __metadata: rollup-plugin-dts: ^6.1.0 rollup-plugin-esbuild: ^6.1.1 rollup-plugin-postcss: ^4.0.0 + rollup-plugin-rename-node-modules: ^1.3.1 rollup-pluginutils: ^2.8.2 semver: ^7.5.3 style-loader: ^3.3.1 @@ -40811,6 +40812,18 @@ __metadata: languageName: node linkType: hard +"rollup-plugin-rename-node-modules@npm:^1.3.1": + version: 1.3.1 + resolution: "rollup-plugin-rename-node-modules@npm:1.3.1" + dependencies: + estree-walker: ^2.0.1 + magic-string: ^0.25.7 + peerDependencies: + rollup: ^2.28.2 + checksum: ef64fca4ae6e3b5f45d438315a34c368b259b7024f3f6a2f73c6fd819fdf98d7623327abdd0d641694ce030641312d4e91ce4cb171e195fc9f580a3a02f303ff + languageName: node + linkType: hard + "rollup-plugin-smart-asset@npm:^2.1.2": version: 2.1.2 resolution: "rollup-plugin-smart-asset@npm:2.1.2" From 30f0a49e13e1118d0a68a20e4d6fbcbed303d595 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Thu, 7 Nov 2024 12:31:59 +0100 Subject: [PATCH 152/161] cli: avoid external dep for node_modules rewrite Signed-off-by: Patrik Oldsberg --- packages/cli/package.json | 1 - packages/cli/src/lib/builder/config.ts | 13 +++++++++---- yarn.lock | 13 ------------- 3 files changed, 9 insertions(+), 18 deletions(-) diff --git a/packages/cli/package.json b/packages/cli/package.json index 6423fd79f4..d886bdde0b 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -140,7 +140,6 @@ "rollup-plugin-dts": "^6.1.0", "rollup-plugin-esbuild": "^6.1.1", "rollup-plugin-postcss": "^4.0.0", - "rollup-plugin-rename-node-modules": "^1.3.1", "rollup-pluginutils": "^2.8.2", "semver": "^7.5.3", "style-loader": "^3.3.1", diff --git a/packages/cli/src/lib/builder/config.ts b/packages/cli/src/lib/builder/config.ts index 842d133380..e419503649 100644 --- a/packages/cli/src/lib/builder/config.ts +++ b/packages/cli/src/lib/builder/config.ts @@ -25,7 +25,6 @@ import svgr from '@svgr/rollup'; import dts from 'rollup-plugin-dts'; import json from '@rollup/plugin-json'; import yaml from '@rollup/plugin-yaml'; -import renameNodeModules from 'rollup-plugin-rename-node-modules'; import { RollupOptions, OutputOptions, @@ -116,10 +115,16 @@ export async function makeRollupConfigs( const output = new Array(); const mainFields = ['module', 'main']; + // Avoid using node_modules as a directory name, since it's trimmed from published packages. + // This can happen when inlining dependencies such as style-inject added for css injection. + const rewriteNodeModules = (name: string) => + name.replaceAll('node_modules', 'node_modules_dist'); + if (options.outputs.has(Output.cjs)) { output.push({ dir: distDir, - entryFileNames: `[name].cjs.js`, + entryFileNames: chunkInfo => + `${rewriteNodeModules(chunkInfo.name)}.cjs.js`, chunkFileNames: `cjs/[name]-[hash].cjs.js`, format: 'commonjs', interop: 'compat', @@ -132,7 +137,8 @@ export async function makeRollupConfigs( if (options.outputs.has(Output.esm)) { output.push({ dir: distDir, - entryFileNames: `[name].esm.js`, + entryFileNames: chunkInfo => + `${rewriteNodeModules(chunkInfo.name)}.esm.js`, chunkFileNames: `esm/[name]-[hash].esm.js`, format: 'module', sourcemap: true, @@ -182,7 +188,6 @@ export async function makeRollupConfigs( include: /\.icon\.svg$/, template: svgrTemplate, }), - renameNodeModules('node_modules_dist'), esbuild({ target: 'ES2022', minify: options.minify, diff --git a/yarn.lock b/yarn.lock index d73f8833fd..6a115513dd 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4054,7 +4054,6 @@ __metadata: rollup-plugin-dts: ^6.1.0 rollup-plugin-esbuild: ^6.1.1 rollup-plugin-postcss: ^4.0.0 - rollup-plugin-rename-node-modules: ^1.3.1 rollup-pluginutils: ^2.8.2 semver: ^7.5.3 style-loader: ^3.3.1 @@ -40812,18 +40811,6 @@ __metadata: languageName: node linkType: hard -"rollup-plugin-rename-node-modules@npm:^1.3.1": - version: 1.3.1 - resolution: "rollup-plugin-rename-node-modules@npm:1.3.1" - dependencies: - estree-walker: ^2.0.1 - magic-string: ^0.25.7 - peerDependencies: - rollup: ^2.28.2 - checksum: ef64fca4ae6e3b5f45d438315a34c368b259b7024f3f6a2f73c6fd819fdf98d7623327abdd0d641694ce030641312d4e91ce4cb171e195fc9f580a3a02f303ff - languageName: node - linkType: hard - "rollup-plugin-smart-asset@npm:^2.1.2": version: 2.1.2 resolution: "rollup-plugin-smart-asset@npm:2.1.2" From 84b9dda3c8e48ed4f548c359d8d6967076f8977d Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 7 Nov 2024 12:13:24 +0000 Subject: [PATCH 153/161] fix(deps): update dependency cross-spawn to v7.0.4 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/yarn.lock b/yarn.lock index b34d6dee62..23c7796da2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -24843,7 +24843,7 @@ __metadata: languageName: node linkType: hard -"cross-spawn@npm:7.0.3, cross-spawn@npm:^7.0.0, cross-spawn@npm:^7.0.1, cross-spawn@npm:^7.0.2, cross-spawn@npm:^7.0.3": +"cross-spawn@npm:7.0.3": version: 7.0.3 resolution: "cross-spawn@npm:7.0.3" dependencies: @@ -24878,6 +24878,17 @@ __metadata: languageName: node linkType: hard +"cross-spawn@npm:^7.0.0, cross-spawn@npm:^7.0.1, cross-spawn@npm:^7.0.2, cross-spawn@npm:^7.0.3": + version: 7.0.4 + resolution: "cross-spawn@npm:7.0.4" + dependencies: + path-key: ^3.1.0 + shebang-command: ^2.0.0 + which: ^2.0.1 + checksum: 7db025938789a927d0e55eecefef2236319eb4ca723d457faa2c1572f8927f6b048fa20667ef2e663b5873b24145401219813120be4023554d239a9bd2e76644 + languageName: node + linkType: hard + "crosspath@npm:^2.0.0": version: 2.0.0 resolution: "crosspath@npm:2.0.0" From d849865b6fafdf7d7c8eb5b96e7d5fd933105e16 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Thu, 7 Nov 2024 13:22:54 +0100 Subject: [PATCH 154/161] cli: improve autocomplete of extra entry points in published packages Signed-off-by: Patrik Oldsberg --- .changeset/seven-berries-listen.md | 5 ++ .../cli/src/lib/packager/productionPack.ts | 62 +++++-------------- 2 files changed, 22 insertions(+), 45 deletions(-) create mode 100644 .changeset/seven-berries-listen.md diff --git a/.changeset/seven-berries-listen.md b/.changeset/seven-berries-listen.md new file mode 100644 index 0000000000..2ab18d9e19 --- /dev/null +++ b/.changeset/seven-berries-listen.md @@ -0,0 +1,5 @@ +--- +'@backstage/cli': minor +--- + +The package packing now populates `typesVersions` for additional entry points rather than using additional `package.json` files for type resolution. This improves auto completion of separate entry points when consuming published packages. diff --git a/packages/cli/src/lib/packager/productionPack.ts b/packages/cli/src/lib/packager/productionPack.ts index c15a7f8b9e..9736e97b8d 100644 --- a/packages/cli/src/lib/packager/productionPack.ts +++ b/packages/cli/src/lib/packager/productionPack.ts @@ -49,11 +49,7 @@ export async function productionPack(options: ProductionPackOptions) { } // This mutates pkg to fill in index exports, so call it before applying publishConfig - const writeCompatibilityEntryPoints = await prepareExportsEntryPoints( - pkg, - packageDir, - options.featureDetectionProject, - ); + await rewriteEntryPoints(pkg, packageDir, options.featureDetectionProject); // TODO(Rugvip): Once exports are rolled out more broadly we should deprecate and remove this behavior const publishConfig = pkg.publishConfig ?? {}; @@ -63,9 +59,6 @@ export async function productionPack(options: ProductionPackOptions) { } } - // For published packages we rely on compatibility entry points rather than this - delete pkg.typesVersions; - // We remove the dependencies from package.json of packages that are marked // as bundled, so that yarn doesn't try to install them. if (pkg.bundled) { @@ -97,10 +90,6 @@ export async function productionPack(options: ProductionPackOptions) { } else { await fs.writeJson(pkgPath, pkg, { encoding: 'utf8', spaces: 2 }); } - - if (writeCompatibilityEntryPoints) { - await writeCompatibilityEntryPoints(targetDir ?? packageDir); - } } // Reverts the changes made by productionPack when called without a targetDir. @@ -138,7 +127,7 @@ const EXPORT_MAP = { * well as returning a function that creates backwards compatibility * entry points for importers that don't support exports. */ -async function prepareExportsEntryPoints( +async function rewriteEntryPoints( pkg: BackstagePackageJson, packageDir: string, featureDetectionProject?: Project, @@ -150,12 +139,13 @@ async function prepareExportsEntryPoints( const distFiles = await fs.readdir(distPath); const outputExports = {} as Record>; - const compatibilityWriters = new Array< - (targetDir: string) => Promise - >(); - const entryPoints = readEntryPoints(pkg); + // Clear to ensure a clean slate before adding entries back in further down + if (pkg.typesVersions) { + pkg.typesVersions = { '*': {} }; + } + for (const entryPoint of entryPoints) { if (!SCRIPT_EXTS.includes(entryPoint.ext)) { outputExports[entryPoint.mount] = entryPoint.path; @@ -171,6 +161,16 @@ async function prepareExportsEntryPoints( } } + // Our current tooling relies on the typesVersions field rather than export.*.types + if (exp.types) { + if (!pkg.typesVersions) { + pkg.typesVersions = { '*': {} }; + } + pkg.typesVersions['*'][entryPoint.name] = [ + `dist/${entryPoint.name}.d.ts`, + ]; + } + exp.default = exp.require ?? exp.import; // Find the default export type for the entry point, if feature detection is active @@ -192,7 +192,6 @@ async function prepareExportsEntryPoints( } } - // This creates a directory with a lone package.json for backwards compatibility if (entryPoint.mount === '.') { if (exp.default) { pkg.main = exp.default; @@ -203,28 +202,6 @@ async function prepareExportsEntryPoints( if (exp.types) { pkg.types = exp.types; } - } else { - // This is deferred until after we have created the target directory - compatibilityWriters.push(async targetDir => { - const entryPointDir = resolvePath(targetDir, entryPoint.name); - await fs.ensureDir(entryPointDir); - await fs.writeJson( - resolvePath(entryPointDir, PKG_PATH), - { - // Need a temporary name, as sharing the same name causes some typescript issues with caching of packages names - // And their defined `types` field. - name: `${pkg.name}__${entryPoint.name.toLocaleLowerCase('en-US')}`, - version: pkg.version, - ...(exp.default ? { main: posixPath.join('..', exp.default) } : {}), - ...(exp.import ? { module: posixPath.join('..', exp.import) } : {}), - ...(exp.types ? { types: posixPath.join('..', exp.types) } : {}), - }, - { encoding: 'utf8', spaces: 2 }, - ); - }); - if (Array.isArray(pkg.files) && !pkg.files.includes(entryPoint.name)) { - pkg.files.push(entryPoint.name); - } } if (Object.keys(exp).length > 0) { @@ -238,10 +215,5 @@ async function prepareExportsEntryPoints( pkg.exports['./package.json'] = './package.json'; } - if (compatibilityWriters.length > 0) { - return async (targetDir: string) => { - await Promise.all(compatibilityWriters.map(writer => writer(targetDir))); - }; - } return undefined; } From 35a2c78ea7b90ee430c3bf88ffb4b041de529ce6 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 7 Nov 2024 13:05:28 +0000 Subject: [PATCH 155/161] chore(deps): update dependency msw to v2.6.2 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 27 ++++++++++----------------- 1 file changed, 10 insertions(+), 17 deletions(-) diff --git a/yarn.lock b/yarn.lock index 23c7796da2..5f39a8686a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -8853,12 +8853,12 @@ __metadata: languageName: node linkType: hard -"@bundled-es-modules/cookie@npm:^2.0.0": - version: 2.0.0 - resolution: "@bundled-es-modules/cookie@npm:2.0.0" +"@bundled-es-modules/cookie@npm:^2.0.1": + version: 2.0.1 + resolution: "@bundled-es-modules/cookie@npm:2.0.1" dependencies: - cookie: ^0.5.0 - checksum: 53114eabbedda20ba6c63f45dcea35c568616d22adf5d1882cef9761f65ae636bf47e0c66325572cc8e3a335e0257caf5f76ff1287990d9e9265be7bc9767a87 + cookie: ^0.7.2 + checksum: 4f210f9316a612f03a46c58f0e3de14b2598f36905433b5ac91e305a4185bd3cb0b141622fa54cff2fce18adbac0b5a8df67dca1874aabd81b7a631fc826e116 languageName: node linkType: hard @@ -24531,7 +24531,7 @@ __metadata: languageName: node linkType: hard -"cookie@npm:0.7.2, cookie@npm:^0.7.0, cookie@npm:~0.7.2": +"cookie@npm:0.7.2, cookie@npm:^0.7.0, cookie@npm:^0.7.2, cookie@npm:~0.7.2": version: 0.7.2 resolution: "cookie@npm:0.7.2" checksum: 9bf8555e33530affd571ea37b615ccad9b9a34febbf2c950c86787088eb00a8973690833b0f8ebd6b69b753c62669ea60cec89178c1fb007bf0749abed74f93e @@ -24545,13 +24545,6 @@ __metadata: languageName: node linkType: hard -"cookie@npm:^0.5.0": - version: 0.5.0 - resolution: "cookie@npm:0.5.0" - checksum: 1f4bd2ca5765f8c9689a7e8954183f5332139eb72b6ff783d8947032ec1fdf43109852c178e21a953a30c0dd42257828185be01b49d1eb1a67fd054ca588a180 - languageName: node - linkType: hard - "cookiejar@npm:^2.1.4": version: 2.1.4 resolution: "cookiejar@npm:2.1.4" @@ -35555,10 +35548,10 @@ __metadata: linkType: hard "msw@npm:^2.0.0, msw@npm:^2.0.8": - version: 2.6.1 - resolution: "msw@npm:2.6.1" + version: 2.6.2 + resolution: "msw@npm:2.6.2" dependencies: - "@bundled-es-modules/cookie": ^2.0.0 + "@bundled-es-modules/cookie": ^2.0.1 "@bundled-es-modules/statuses": ^1.0.1 "@bundled-es-modules/tough-cookie": ^0.1.6 "@inquirer/confirm": ^5.0.0 @@ -35583,7 +35576,7 @@ __metadata: optional: true bin: msw: cli/index.js - checksum: ac322235fb6edd650537fc7797fac158d30a6ffead1abe968b1dbc49ad6024ae6cfa0a9b6d3f1bec0ad31ecb98c08f276a3b0086dba649d93f87c4140b12a9b9 + checksum: 2e4631bf9ee7cc6cea34ec9ed4f0305ea34f39e8c25b8c44dd322f4a3ab5da48d2bf0c8fd8920c2c2a0026b5477798eedfb3a4256ff28d27b3a67ecca4fd2f62 languageName: node linkType: hard From 21ded31294f5b84203c36afad6471ffd45c6e6fc Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 7 Nov 2024 13:56:05 +0000 Subject: [PATCH 156/161] fix(deps): update dependency cross-spawn to v7.0.5 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 5f39a8686a..2f07cf33ef 100644 --- a/yarn.lock +++ b/yarn.lock @@ -24872,13 +24872,13 @@ __metadata: linkType: hard "cross-spawn@npm:^7.0.0, cross-spawn@npm:^7.0.1, cross-spawn@npm:^7.0.2, cross-spawn@npm:^7.0.3": - version: 7.0.4 - resolution: "cross-spawn@npm:7.0.4" + version: 7.0.5 + resolution: "cross-spawn@npm:7.0.5" dependencies: path-key: ^3.1.0 shebang-command: ^2.0.0 which: ^2.0.1 - checksum: 7db025938789a927d0e55eecefef2236319eb4ca723d457faa2c1572f8927f6b048fa20667ef2e663b5873b24145401219813120be4023554d239a9bd2e76644 + checksum: 55c50004cb6bbea3649784caac6e7b8ddd03fa8c1e14dbd5a1f15896708378006eb7526a52a0f48770c768c9b8aed48a5888eb8e785ff59ff7749e74f66cd96b languageName: node linkType: hard From 4113091eaef227a5e6a1f4d67613434e51bff877 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 7 Nov 2024 14:46:04 +0000 Subject: [PATCH 157/161] fix(deps): update dependency swagger-ui-react to v5.18.2 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/yarn.lock b/yarn.lock index 2f07cf33ef..71d95cd5c6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -15871,10 +15871,10 @@ __metadata: languageName: node linkType: hard -"@scarf/scarf@npm:=1.3.0": - version: 1.3.0 - resolution: "@scarf/scarf@npm:1.3.0" - checksum: 652c1248c8e1b5a4ba64333c1b2e9847e314d4cd78beb4bab51b3825bcd2b45dc20d185d3b99b11b18753a9e64113475067852ac898910ad73aa0559e24f0d6d +"@scarf/scarf@npm:=1.4.0": + version: 1.4.0 + resolution: "@scarf/scarf@npm:1.4.0" + checksum: def62aa403f7e63165ccb219efd2c420fc0b7357b0ba43397f635e4aa813ace1cdf3855a93fc559b4619bcc0469ae4767b8cb72af30ea5c0522bf4a2ecb18198 languageName: node linkType: hard @@ -42919,12 +42919,12 @@ __metadata: languageName: node linkType: hard -"swagger-client@npm:^3.30.1": - version: 3.30.1 - resolution: "swagger-client@npm:3.30.1" +"swagger-client@npm:^3.31.0": + version: 3.31.0 + resolution: "swagger-client@npm:3.31.0" dependencies: "@babel/runtime-corejs3": ^7.22.15 - "@scarf/scarf": =1.3.0 + "@scarf/scarf": =1.4.0 "@swagger-api/apidom-core": ">=1.0.0-alpha.9 <1.0.0-beta.0" "@swagger-api/apidom-error": ">=1.0.0-alpha.9 <1.0.0-beta.0" "@swagger-api/apidom-json-pointer": ">=1.0.0-alpha.9 <1.0.0-beta.0" @@ -42941,17 +42941,17 @@ __metadata: openapi-server-url-templating: ^1.0.0 ramda: ^0.30.1 ramda-adjunct: ^5.0.0 - checksum: b5c7b259855c1a7b9d7d8616bc667d489c05f602b4a6ab1570120fb5506f151e518c720d63601806f03baaa2c34495644ced4a29d5aac4f8a9231d0ca6dc98aa + checksum: 86b414dda317d5e9ca6efac8c04355016106e9e637b9b0bfb7a27c43f4b14e18a18c93ac108798ecc0e00c1937036f79fe103b98f551ef1e24fd54e0c3b756b0 languageName: node linkType: hard "swagger-ui-react@npm:^5.0.0": - version: 5.18.1 - resolution: "swagger-ui-react@npm:5.18.1" + version: 5.18.2 + resolution: "swagger-ui-react@npm:5.18.2" dependencies: "@babel/runtime-corejs3": ^7.24.7 "@braintree/sanitize-url": =7.0.4 - "@scarf/scarf": =1.3.0 + "@scarf/scarf": =1.4.0 base64-js: ^1.5.1 classnames: ^2.5.1 css.escape: 1.5.1 @@ -42978,7 +42978,7 @@ __metadata: reselect: ^5.1.1 serialize-error: ^8.1.0 sha.js: ^2.4.11 - swagger-client: ^3.30.1 + swagger-client: ^3.31.0 url-parse: ^1.5.10 xml: =1.0.1 xml-but-prettier: ^1.0.1 @@ -42986,7 +42986,7 @@ __metadata: peerDependencies: react: ">=16.8.0 <19" react-dom: ">=16.8.0 <19" - checksum: 3ce49a81c72b70e947c0e8b2977ac03e9b5e19d961ae7ca672b5281a36ce293a3ec1cdaf971328bdefb7392f316e06e4f5ba5283f44cc54df783eb713302781c + checksum: 8ad40bda044c9ff5a940b4e76f88dd740dae183266dc2d48cd88b73877a0ad464f26ad41459de7d7562c5e1a0030ed5a15b99fe57d3f2919acc7ddb126c07447 languageName: node linkType: hard From 4a378d3afa711c880fe3d84fce97096e46359243 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Thu, 7 Nov 2024 19:32:02 +0100 Subject: [PATCH 158/161] cli: fix watching of dynamic plugin discovery Signed-off-by: Patrik Oldsberg --- .changeset/bright-buckets-laugh.md | 5 +++++ packages/cli/src/lib/bundler/config.ts | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 .changeset/bright-buckets-laugh.md diff --git a/.changeset/bright-buckets-laugh.md b/.changeset/bright-buckets-laugh.md new file mode 100644 index 0000000000..e1e610b72a --- /dev/null +++ b/.changeset/bright-buckets-laugh.md @@ -0,0 +1,5 @@ +--- +'@backstage/cli': patch +--- + +Fix dev server reloads of plugin discovery for new frontend system. diff --git a/packages/cli/src/lib/bundler/config.ts b/packages/cli/src/lib/bundler/config.ts index 0202cca04c..4e9f67c4fa 100644 --- a/packages/cli/src/lib/bundler/config.ts +++ b/packages/cli/src/lib/bundler/config.ts @@ -372,7 +372,7 @@ export async function createConfig( ...(isDev ? { watchOptions: { - ignored: /node_modules/, + ignored: /node_modules\/(?!__backstage-autodetected-plugins__)/, }, } : {}), From d6d1aaf9182952dd9b851f7ea453147218743235 Mon Sep 17 00:00:00 2001 From: secustor Date: Mon, 21 Oct 2024 18:59:35 +0200 Subject: [PATCH 159/161] feat(plugins/scaffolder-backend): add new fs:readdir action Signed-off-by: secustor --- plugins/scaffolder-backend/report.api.md | 20 ++++ .../actions/builtin/createBuiltinActions.ts | 2 + .../actions/builtin/filesystem/index.ts | 1 + .../builtin/filesystem/read.examples.test.ts | 107 ++++++++++++++++++ .../builtin/filesystem/read.examples.ts | 67 +++++++++++ .../actions/builtin/filesystem/read.ts | 82 ++++++++++++++ 6 files changed, 279 insertions(+) create mode 100644 plugins/scaffolder-backend/src/scaffolder/actions/builtin/filesystem/read.examples.test.ts create mode 100644 plugins/scaffolder-backend/src/scaffolder/actions/builtin/filesystem/read.examples.ts create mode 100644 plugins/scaffolder-backend/src/scaffolder/actions/builtin/filesystem/read.ts diff --git a/plugins/scaffolder-backend/report.api.md b/plugins/scaffolder-backend/report.api.md index 8fc5248e6f..cb5da51ea4 100644 --- a/plugins/scaffolder-backend/report.api.md +++ b/plugins/scaffolder-backend/report.api.md @@ -231,6 +231,26 @@ export const createFilesystemDeleteAction: () => TemplateAction_2< JsonObject >; +// @public +export const createFilesystemReadDirAction: () => TemplateAction_2< + { + paths: string[]; + recursive?: boolean | undefined; + }, + { + files: { + name: string; + path: string; + fullPath: string; + }[]; + folders: { + name: string; + path: string; + fullPath: string; + }[]; + } +>; + // @public export const createFilesystemRenameAction: () => TemplateAction_2< { diff --git a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/createBuiltinActions.ts b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/createBuiltinActions.ts index 59182ab46d..d2a03412cc 100644 --- a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/createBuiltinActions.ts +++ b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/createBuiltinActions.ts @@ -41,6 +41,7 @@ import { } from './fetch'; import { createFilesystemDeleteAction, + createFilesystemReadDirAction, createFilesystemRenameAction, } from './filesystem'; import { @@ -224,6 +225,7 @@ export const createBuiltinActions = ( createFetchCatalogEntityAction({ catalogClient, auth }), createCatalogWriteAction(), createFilesystemDeleteAction(), + createFilesystemReadDirAction(), createFilesystemRenameAction(), createGithubActionsDispatchAction({ integrations, diff --git a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/filesystem/index.ts b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/filesystem/index.ts index 84e477b16b..159d438f27 100644 --- a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/filesystem/index.ts +++ b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/filesystem/index.ts @@ -16,3 +16,4 @@ export { createFilesystemDeleteAction } from './delete'; export { createFilesystemRenameAction } from './rename'; +export { createFilesystemReadDirAction } from './read'; diff --git a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/filesystem/read.examples.test.ts b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/filesystem/read.examples.test.ts new file mode 100644 index 0000000000..5654fc4c07 --- /dev/null +++ b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/filesystem/read.examples.test.ts @@ -0,0 +1,107 @@ +/* + * Copyright 2024 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { createFilesystemReadDirAction } from './read'; +import { createMockActionContext } from '@backstage/plugin-scaffolder-node-test-utils'; +import { resolve as resolvePath } from 'path'; +import { createMockDirectory } from '@backstage/backend-test-utils'; +import { examples } from './read.examples'; +import yaml from 'yaml'; + +describe('fs:readdir examples', () => { + const action = createFilesystemReadDirAction(); + + const mockDir = createMockDirectory(); + mockDir.setContent({ + workspace: { + 'file1.txt': 'hello', + 'file2.txt': 'world', + docs: { + 'doc1.md': 'hello', + 'doc2.md': 'world', + assets: { + 'asset1.jpg': 'sddfsdfsdfsdf', + }, + }, + }, + }); + const workspacePath = resolvePath(mockDir.path, 'workspace'); + + beforeEach(() => { + jest.restoreAllMocks(); + }); + + it('should be able to read workspace root', async () => { + const example = examples[0].example; + const mockContext = createMockActionContext({ + workspacePath, + input: yaml.parse(example).steps[0].input, + }); + await action.handler(mockContext); + expect(mockContext.output).toHaveBeenNthCalledWith(1, 'files', [ + { + name: 'file1.txt', + path: 'file1.txt', + fullPath: resolvePath(workspacePath, 'file1.txt'), + }, + { + name: 'file2.txt', + path: 'file2.txt', + fullPath: resolvePath(workspacePath, 'file2.txt'), + }, + ]); + expect(mockContext.output).toHaveBeenNthCalledWith(2, 'folders', [ + { + name: 'docs', + path: 'docs', + fullPath: resolvePath(workspacePath, 'docs'), + }, + ]); + }); + + it('should be able to read directory recursively', async () => { + const example = examples[1].example; + const mockContext = createMockActionContext({ + workspacePath, + input: yaml.parse(example).steps[0].input, + }); + await action.handler(mockContext); + expect(mockContext.output).toHaveBeenNthCalledWith(1, 'files', [ + { + name: 'doc1.md', + path: 'docs/doc1.md', + fullPath: resolvePath(workspacePath, 'docs/doc1.md'), + }, + { + name: 'doc2.md', + path: 'docs/doc2.md', + fullPath: resolvePath(workspacePath, 'docs/doc2.md'), + }, + { + name: 'asset1.jpg', + path: 'docs/assets/asset1.jpg', + fullPath: resolvePath(workspacePath, 'docs/assets/asset1.jpg'), + }, + ]); + expect(mockContext.output).toHaveBeenNthCalledWith(2, 'folders', [ + { + name: 'assets', + path: 'docs/assets', + fullPath: resolvePath(workspacePath, 'docs/assets'), + }, + ]); + }); +}); diff --git a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/filesystem/read.examples.ts b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/filesystem/read.examples.ts new file mode 100644 index 0000000000..11e34c242e --- /dev/null +++ b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/filesystem/read.examples.ts @@ -0,0 +1,67 @@ +/* + * Copyright 2024 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import { TemplateExample } from '@backstage/plugin-scaffolder-node'; +import * as yaml from 'yaml'; + +export const examples: TemplateExample[] = [ + { + description: 'Read complete content of workspace', + example: yaml.stringify({ + steps: [ + { + action: 'fs:readdir', + id: 'read-workdir', + name: 'Read workspace directory', + input: { + paths: ['.'], + }, + }, + ], + }), + }, + { + description: 'Get content of the docs folder', + example: yaml.stringify({ + steps: [ + { + action: 'fs:readdir', + id: 'read-workdir', + name: 'Read workspace directory', + input: { + paths: ['docs'], + recursive: true, + }, + }, + ], + }), + }, + { + description: 'Get content of multiple folders', + example: yaml.stringify({ + steps: [ + { + action: 'fs:readdir', + id: 'read-workdir', + name: 'Read workspace directory', + input: { + paths: ['foo', 'bar'], + recursive: true, + }, + }, + ], + }), + }, +]; diff --git a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/filesystem/read.ts b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/filesystem/read.ts new file mode 100644 index 0000000000..0351e7cb0e --- /dev/null +++ b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/filesystem/read.ts @@ -0,0 +1,82 @@ +/* + * Copyright 2024 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import { createTemplateAction } from '@backstage/plugin-scaffolder-node'; +import z from 'zod'; +import { resolveSafeChildPath } from '@backstage/backend-plugin-api'; +import fs from 'fs/promises'; +import path from 'path'; + +const contentSchema = z.object({ + name: z.string().describe('Name of the file or directory'), + path: z + .string() + .describe('path to the file or directory relative to the workspace'), + fullPath: z.string().describe('full path to the file or directory'), +}); +type Content = z.infer; + +/** + * Creates new action that enables reading directories in the workspace. + * @public + */ +export const createFilesystemReadDirAction = () => { + return createTemplateAction({ + id: 'fs:readdir', + description: 'Reads files and directories from the workspace', + supportsDryRun: true, + schema: { + input: z.object({ + paths: z.array(z.string().min(1)), + recursive: z.boolean().default(false), + }), + output: z.object({ + files: z.array(contentSchema), + folders: z.array(contentSchema), + }), + }, + async handler(ctx) { + const files: Content[] = []; + const folders: Content[] = []; + + for (const localPath of ctx.input.paths) { + const fullWorkspacePath = resolveSafeChildPath( + ctx.workspacePath, + localPath, + ); + const content = await fs.readdir(fullWorkspacePath, { + recursive: ctx.input.recursive, + withFileTypes: true, + }); + for (const dirent of content) { + const fullPath = path.join(dirent.parentPath, dirent.name); + const element = { + name: dirent.name, + path: path.relative(ctx.workspacePath, fullPath), + fullPath, + }; + if (dirent.isDirectory()) { + folders.push(element); + } else { + files.push(element); + } + } + } + + ctx.output('files', files); + ctx.output('folders', folders); + }, + }); +}; From 2dae341a705822fd39a1978899036e1c74fb855c Mon Sep 17 00:00:00 2001 From: secustor Date: Mon, 21 Oct 2024 19:06:08 +0200 Subject: [PATCH 160/161] feat(plugins/scaffolder-backend): add missing changeset Signed-off-by: secustor --- .changeset/violet-parrots-knock.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/violet-parrots-knock.md diff --git a/.changeset/violet-parrots-knock.md b/.changeset/violet-parrots-knock.md new file mode 100644 index 0000000000..dde0f9e606 --- /dev/null +++ b/.changeset/violet-parrots-knock.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-scaffolder-backend': patch +--- + +Add new `fs:readdir` action to list current content of the workspace From 1c29b31dd333ad3551176fa117885b34104e8c75 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Fri, 8 Nov 2024 16:54:00 +0100 Subject: [PATCH 161/161] docs/getting-started: reorder next steps a bit Signed-off-by: Patrik Oldsberg --- docs/getting-started/index.md | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/docs/getting-started/index.md b/docs/getting-started/index.md index a9c5da596e..993cd7cbfd 100644 --- a/docs/getting-started/index.md +++ b/docs/getting-started/index.md @@ -143,16 +143,18 @@ Choose the correct next steps for your user role, if you're likely to be deployi ### Admin -- Deploying a production server +- Deploying to production + + - [Setting up authentication](./config/authentication.md) + - [Configuring a database](./config/database.md) - [Deploying with Docker](../deployment/docker.md) - [Deploying with Kubernetes](../deployment/k8s.md) - - [Deploying with AWS Lightsail](../deployment/backstage-deploy/aws.md) + - Configuring Backstage - - [Database](./config/database.md) - - [Authentication](./config/authentication.md) - - [Plugins](./configure-app-with-plugins.md) - - [Theme](./app-custom-theme.md) - - [Homepage](./homepage.md) + + - [Adding plugins](./configure-app-with-plugins.md) + - [Customizing the theme](./app-custom-theme.md) + - [Populating the homepage](./homepage.md) ### Developer